COREBlog で ページタイトル(title要素) を変更する

今のところ最後の改造ネタである。

ページの title 要素 を記事のタイトル(内容)がわかるものに変更しておくと、例えば検索エンジンを使った検索時に どういったページなのか が訪問する前に判断できるため、訪問者に喜ばれるだろう(多分…)。

追記: 2004年7月4日 Max さんがより良いコードを提供してくださいました。まずは私の、COREBlog で ページタイトル(title要素) を変更する汎用的な方法 というエントリをご覧下さい。

私の Blog の各記事は、以前より title要素に記事タイトルを設定していた。Google で検索したときに、各ページの記事タイトルまで表示されているのがわかる。

タイトルをつけるルールは以下の通り

  1. 各記事の場合、各記事のタイトルにする
  2. 月毎のアーカイブの場合、○○○○年 △△月 とする
  3. 日毎の場合、○○○○年 △△月 ××日 とする
  4. カテゴリ毎の場合、Category [ カテゴリ名 ] とする

実は、ずいぶん前にこの改造をやっていたのだが、実現できていたのは 1つ目の各記事タイトルだけだった。今回、色々と実験しながらようやく思い通りのタイトル表示ができるようになったので、公開する事にした。(但し、DTML の書き方がおかしいなどのご指摘等あれば、遠慮なくコメントを書いていただくようお願いしたい。)なんとなくだが、もっと良い書き方があるような気がしてならない。

手順

  1. COREBlog の管理画面を開く
  2. Contents タブをクリックし、blog_header の編集画面を表示する
  3. 以下のように修正する
    <title><dtml-var title_or_id></title>
    

    となっている部分を、

    <title><dtml-var title_or_id>
        <dtml-if "id == 'blog'">
          <dtml-if year> : <dtml-var year>年<dtml-var month>月<dtml-if day><dtml-var day>日</dtml-if></dtml-if>
          <dtml-if cat_id><dtml-with "getCategory(id=cat_id)"> : Category [<dtml-var name>]</dtml-with></dtml-if>
       <dtml-else> : <dtml-var title>
       </dtml-if>
    </title>
    

    というコードに変更する。但し、2行目の id == 'blog' の部分は、COREBlog インスタンス名(以下の画像を参照) に変更していただきたい。

ご利用についての注意

いつものように、無保証とさせていただく。おかしなところ、わからないところはこの記事のコメントとして記入して欲しい。

DTMLについて

いいわけになるが、Zope は最近(1年ほど前にploneを使いたくて)はじめた。従って、zpt ばっかり使っている。DTMLはよくわかっていない。以下のドキュメントを参考にした。こういったドキュメントをきちんと作成していただいた方に感謝する。

http://www.annie.ne.jp/~hachi/DTML_Ref2.0/DTML.html

追記:2004年7月3日

princo さんのコメントで気づいたのだが、手順を一部修正した。id == 'blog'が一般的な方法だと読み取れてしまっていたのだ。そうではなく、各人の COREBlog インスタンスの名前で判断しなければならない。私も、作ったとき には気づいていたのだがこのエントリを書いている最中は全く忘れていた。

ごめんなさい

Trackbackおかしくなってしまいました>_<

Re: COREBlog で ページタイトル(title要素) を変更する

princo さん。いつもお世話になっております。
文字化けの件、直しておきました。 これからもよろしくお願いします。

Re: COREBlog で ページタイトル(title要素) を変更する

Satoshiさんありがとうです。いつもパクリまくりですがよろしくっです。
最近Trackbackが変な化け?方するので撃つたびにドキドキ。

Re: COREBlog で ページタイトル(title要素) を変更する

> 最近Trackbackが変な化け?方するので撃つたびにドキドキ。

同感です。
文字化けが減るとトラックバックも増えるのではないかと期待しているのですが…
トラックバックの仕様が マルチバイト に合った仕様になる事を期待したいですね。

Re: COREBlog で ページタイトル(title要素) を変更する

僕のところからのトラックバックも文字化けでした
すみませんが手動で直してください

Re: COREBlog で ページタイトル(title要素) を変更する

kan164 さん、トラックバックしていただきありがとうございました。文字化けは直しておきました。

Re: COREBlog で ページタイトル(title要素) を変更する

ありゃ、なぜかTBで送ったexcerptの内容がおかしい(汗)

すみません。不都合だったら直し入れといてくださいませ・・・・

COREBlogスキン - Trackback

COREBlogスキン Satoshi's Blog : COREBlog で ページタイトル(title要素) を変更する http://www.randynetwork.com/blog/134

ページタイトルに変化を! - Trackback

Satoshi's Blogさんに触発されてってゆーか、パクってみました。なんとなく(・∀・)イイ! なぜかカテゴリとか月単位での表示が上手くいかなかったので、ちょと修正してみた。

COREBlogページタイトルにエントリータイトルを追加 - Trackback

COREBlogでページタイトルにエントリーのタイトルを付加するカスタマイズが紹介されています。便利~...

COREBlogでのHTMLのtitle変更 - Trackback

Satoshi's Blog さんの COREBlog でページタイトル(title要素)を変更するって記事ですが,僕の COREBlogでも同様の実装していましたが,ものすごくローテクな方法での実装でした
Satoshi's Blog さんでは, blog_headerを共通化して使用していますが,僕が実装している方法は, ????_html毎にヘッダを作成して,その中でタイトルを変更するという方法での実装でした
僕自身それなりにZope,それもDTMLを使ってきてた人間なので COREBlog のちょっ...

COREBlog で ページタイトル(title要素) を変更する - Trackback

ついでといっては何ですが、宮部さんのところで紹介されていた COREBlog で ページタイトル(title要素) を変更する も適応してみる。
こっちはお手軽、該当コードをdefaultスキンに適応してスキンを更新しておしまいヽ(´ー`)ノ

Improvement about more specific title element - ページタイトル(title要素)

宮部さんのblogに紹介されていたTip。
idプロパティの内容をblogの名前で判断してtitle要素を変更していたのを、次のように変えてみる。

COREBlog で ページタイトル(title要素) を変更する汎用的な方法 - Trackback

先日書いた COREBlog の
ページタイトルを記事タイトルに変更する 改造ですが、Max
さんより すばらしい改善案 が:
これだと手で調整するところがなく汎用的なのではないかと思う。
他にもっと良い書き方があるとは思っていたのだが、こうやってご指摘いただくことが出来た。これだから
Blog は面白い。

ページタイトル表示の改造を取り込んでみました。 - Trackback

Satoshi's Blog 「COREBlog で ページタイトル(title要素)
を変更する」と、SiteBites「ページタイトル(title要素)変更(改)」を参考に
(というか、もろパクリ)、ページタイトル改造をしてみました。
ご両人、ありがとうございます。

title要素を変更 - Trackback

COREBlogでtitle要素を変更する方法が、 -
元祖 サトシのブログ : COREBlog で ページタイトル(title要素)
を変更する - SiteBites : Improvement about more specific title element -
ページタイトル(title要素)変更(改)
で紹介されています。僕もこれを真似してtitle要素を変更していたのですが、中にはタイトルだけでなくサブタイトルをつけてるエントリがあるので、これが表示されるようにちょっと追加。
上...

新しいコメントの投稿

このフィールドの内容は非公開にされ、公表されることはありません。
  • HTMLタグは使用できません
  • 行と段落は自動的に折り返されます。

書式オプションに関するより詳しい情報...