先日公開しました
MTDeepLinkBlocker
をバージョンアップしました。
このバージョンアップにより、特定のカテゴリや記事の日付、
コメント欄の有無などの条件において、
ディープ
リンク防止機構を有効にしたり無効にしたりできるようになりました。
このエントリでは、今回のバージョンアップで追加された機能を使用するための
テンプレートの書き方を紹介しています。
最新版は
MTDeepLinkBlocker
のページからダウンロードできます。どうぞご利用ください。
背景
先日公開しました
MTDeepLinkBlocker 0.10
は、記事へのディープ
リンク防止機構を実現しますが、
ブログに含まれる全ての記事をその対象としてしまうため、使いづらいという欠点があります。
多くの
ブログにおいて、ディープ
リンク防止策が必要な記事というものは、
例えばそれは、フレームを招きそうな話題を扱ったものであったり、
一過性の身内ネタ記事であったり、
コメントを受付中の記事であったりと、
往々にして特定一部の記事に限られていることが多いと思います。
本バージョン 0.11 では、ディープリンク防止機構を無効にする thru オプションが追加されました。
カテゴリ名などを条件にして thru オプションを有効にすることで、
特定のカテゴリにおいてのみディープリンク防止機構を働かせることができます。
これら条件の判定には、条件式に Perl の正規表現が使える
Regex Plugin
が便利です。カテゴリ名などのマッチングで効果を発揮するでしょう。
このプラグインについては
drk7.jp:MovableType の正規表現プラグインに
日本語による説明がありますので、そちらも参照してください。
プラグインに添付の readme.txt には、他にも様々な使い方が紹介されていますが、
このエントリで紹介している例は drk7.jp の説明の範囲で十分に事足りるでしょう。
カテゴリ名による切り分け
フレームを招きやすい内容(例えば、政治思想や宗教、批評批判などに関するもの)など、
特定のカテゴリに含まれる記事に限定してディープ
リンクを防止したい場合です。
このカテゴリ以外の記事へのディープ
リンクは自由に行うことができます。
下の例では、カテゴリ名に "
MovableType" という文字列が含まれる場合(MTIfMatches の内部)、
その記事へのディープ
リンク防止機構が有効になります。
それ以外の場合(MTIfNotMatches の内部)、MTUseDeepLinkBlocker に thru オプションを指定して、
ディープ
リンク防止機構の認証チェックを無条件で通過(=防止機構を無効)するようにしています。
コメント欄の有無による切り分け
記事 URL の晒し上げ→直アクセス→
コメント欄に即突撃の構図を懸念するなど、
コメント欄が公開されている記事へのディープ
リンクを防止したい場合です。
ディープ
リンク防止機構の切り替えには
MTEntryIfCommentsOpen が使えます。
記事の投稿日による切り分け
ある一定期間が経過した記事など、記事の投稿日時を基準に
ディープ
リンクを許可/拒否したい場合が考えられます。
下は、記事の投稿年が 2005 年の場合にはディープ
リンク防止機構を有効にする例です。
トラブルシュート - 困った時は?
この項目は現在、準備中です。