##Python製のBlog生成ツールPelicanで, ビルトインの草稿(Drafts)機能を使う方法について
これまでの記事はこちら. セットアップからよくある設定方法までを記載しています.
- Pythonistaのための静的Blogエンジン'Pelican'とAmazon S3でブログを公開する方法
- Python製静的ブログ生成ツール'Pelican'の各種設定
- Pelicanにテーマを導入してみる
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属性を付与しておいた方が無難かも知れませんね。