Home > Latest topics

Latest topics > hideプラグイン

宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。 以下の特設サイトにて、単行本まんがでわかるLinux シス管系女子の試し読みが可能! シス管系女子って何!? - 「シス管系女子」特設サイト

hideプラグイン - Nov 20, 2006

ちょっと一般公開はできないんだけど身内にだけ見せたいエントリを書かないといけない、という用事ができたんで、特定カテゴリ以下のエントリや特定のエントリを非表示にするというhideプラグインを導入してみた。最初はexcludeプラグインというのを導入しようと思ったんだけど、配布サイトが消えてたので、その改編版を。

使いかたは、「hide」という名前のファイル(設定を変えれば、このファイル名は好きに変更できる)をエントリのデータ置き場(BSKならentriesディレクトリ)の直下に置いて、その中に非表示にしたいカテゴリやエントリのパスを相対パスで記述するという感じ。隠す対象のカテゴリやエントリは改行区切りで複数指定できる。

注意点がけっこうある。

  1. BSKそのまんまの構成だとエントリ置き場もプラグイン置き場も外部から丸見えなので、プラグインのファイル名や設定ファイルのファイル名を変えとかないとエントリを隠す意味がない。
  2. 標準の名前だとcategoriesやarchivesなんかのプラグインよりも後に実行されるから、カテゴリまるごと隠すように設定しててもカテゴリ一覧で普通に見えてしまう。ファイル名とパッケージ名の先頭に「_」を付けるなどしてなるべく最初の方で実行されるようにしとかないといけない。
  3. 挙動が結構複雑。
    • 現在閲覧中のカテゴリに設定ファイルがあればその設定ファイルを、なければエントリ置き場直下の設定ファイルを読み込む。
    • 現在閲覧中のflavourの設定ファイル(「hide.html」など)があればその設定ファイルを、なければflavour無しの設定ファイル(「hide」など)を読み込む。
  4. 3の挙動ゆえに、categoriesプラグインなどとの組み合わせにおいて、意図しない場面で「隠したはずのエントリが丸見え」という事態が発生し得る。例えばエントリ置き場直下の設定ファイルで「foo/bar/」カテゴリを隠すように設定していても、全体のエントリ一覧を見れば確かに「foo/bar/」のエントリはエントリ一覧からもカテゴリ一覧からも見えなくなるけれども、「foo/」カテゴリのエントリ一覧を表示する時には、カテゴリ一覧の中に「foo/bar/」が表示されてしまう。

注意点の4番目はBSK使いの場合には致命的なので、もっと挙動を単純化した改編版を作成した。

この改編版は、以下のような挙動を示す。

  • 設定ファイルは常にエントリ置き場直下に置いた物を読み込む。
  • 仮に「foo/」カテゴリを隠すように設定した場合、「foo/」カテゴリのエントリやエントリ一覧を表示した時には、categoriesエントリ一覧にも「foo/」が出現する。それ以外の場合には、「foo/」カテゴリおよびカテゴリ内のエントリ一覧は常に隠される。
分類:blosxom, , , 時刻:15:03 | Comments/Trackbacks (0) | Edit

Comments/Trackbacks

TrackBack ping me at


の末尾に2020年11月30日時点の日本の首相のファミリーネーム(ローマ字で回答)を繋げて下さい。例えば「noda」なら、「2006-11-20_hide.trackbacknoda」です。これは機械的なトラックバックスパムを防止するための措置です。

Post a comment

writeback message: Ready to post a comment.

2020年11月30日時点の日本の首相のファミリーネーム(ひらがなで回答)

Powered by blosxom 2.0 + starter kit
Home

カテゴリ一覧

過去の記事

1999.2~2005.8

最近のコメント

最近のつぶやき