メモ:MT:ウェブページむけの Next|Previous URL カスタムフィールド

Movable Typeのウェブページ用カスタムフィールドで次のページURL を示すフィールドをつくってみました。

背景など

ウェブページの link 要素のrel=next および、rel=prev に入れるURLをあつかうとき、 や がありますが、これはページの作成順序を考慮していないと、「本当はあのページを次のページとして指定したかったのに」なんてことがおこるかどうかは定かでありませんけれども、そんな環境を想定してみました。

細かな前提とかおいておき、さっそく作成例として示しておきます。

ざっと NextURL のほうだけですが以下のようなものです。previous は文字列変更するだけですので省略。

名前のところは、管理画面の「表示オプション」などが使用するので、わかりやすくて簡潔な名前のほうがいいでしょう(ここの例は思いつきでつけただけですので)。ベースネームは他のと重ならないもの、テンプレートタグも既存のものと違うもので、CFなどの接頭辞をつけてテンプレートタグとわけておくのがいいです。

システムオブジェクト

      ウェブページ

名前
      nextURL

説明
       次のページ

種類
      テキスト

必須?
      なし

規定値
      なし

ベースネーム
   cf_pagenexturl

テンプレートタグ

   CFPageNextURL

テンプレートの例

<mt:If tag="CFPageNextURL">
nextURL: <mt:CFPageNextURL>
</mt:If>

使用する場合は、 ウェブページのそれぞれのページ編集のところで、表示オプションで作成したフィールド名にチェックを入れてフィールド表示させておきます。

あとは、URLを入力すれば、MTCFPageNextURLは入力したURLに展開されます。

以下は、簡単な link要素の next prev の設置です。

head 要素内に以下を追加します。

<mt:If tag="CFPageNextURL"><link rel="next" href="<mt:CFPageNextURL>"></mt:If>
<mt:If tag="CFPagePreviousURL"><link rel="prev" href="<mt:CFPagePreviousURL>"></mt:If>

title 属性を入れたい場合は、 :title=XXX とか独自に記法を決めておいて、URLとtitle部分を regex_replace で取り出すか、新たにタイトル用のフィールドも作るかになるとおもいます。

Comments:

コメントをどうぞ。書き込む場所が不明な場合やサイトオーナーへのコンタクトは、GuestBookまでお気軽にどうぞ

blog comments powered by Disqus