3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Pelicanの草稿機能を使ってみる

Posted at

##Python製のBlog生成ツールPelicanで, ビルトインの草稿(Drafts)機能を使う方法について

これまでの記事はこちら. セットアップからよくある設定方法までを記載しています.

Python製のBlog生成エンジンであるPelicanにはデフォルトで「草稿」機能がついています。

Pelicanの記事はreSTかmd形式でローカルの/content 配下に保持することになるかと思いますが, その状態で make htmlコマンドを叩くとすべての記事がインデックス化されて, デプロイすると外部に公開されます。

  • 特定の記事について, インデックス化の対象から除外したい
  • 全員の目に触れる前に, URLを知っている一部の人にだけ公開内容を確認させたい

というようなニーズに応えるため, Drafts機能が用意されています。

Drafts機能の使い方

記事のトップにmetadataを記述しますが, そこで

Status: draft

と記すだけ。上はmdの場合ですが, reSTなら

:Status: draft

かな。

これを書くと何が起こるかというと, make htmlした際に該当の記事だけはインデックス化されず, また生成されるhtmlファイルもoutputフォルダには行かず, 別途draftsフォルダが生成されてその中に格納されます。

その状態でデプロイを行うと, 一般の目には触れることなく

http://[ドメイン名]/drafts/[URL]

というURLでアクセスが可能になります。(具体的なURLは各々の環境に依存します)

いったんdraftsに置いておいて, 確認作業を終えて公開準備が出来たら記述した1行を削除して, 再度html生成→デプロイを行えば今度はちゃんと記事が公開されます。簡単ですね!

注意点

draftsは結局URLさえ分かってしまえばアクセスされてしまうので, 厳密には「下書き」とは異なります。「公開すらされたくない」という場合にはcontentフォルダ以外の場所で下書きを作るしかないですが, とりあえず他の記事と一緒に書きかけの記事をうっかり公開しちゃった!という事態を避けるためにも最初はStatus: draft属性を付与しておいた方が無難かも知れませんね。

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?