« 映画「木更津キャッツアイ ワールドシリーズ」制作発表 | トップページ | 加護ちゃんが喫煙でフライデーされちゃった »

2006.02.09

ココログ・全記事一覧の作成方法

自分のココログ内の全記事を最新順に列挙するための方法をご紹介します。ただし、実現にあたっては以下の条件を満たす必要があります。

・プランが「プロ(有料)」であること
・上級者向けテンプレートセットを使用すること(「プロ」機能)
・テンプレート編集を行えること(「プロ」機能)

→「自分のココログ内の全記事を最新順に列挙」のサンプル

それでは、「準備編」、「実践編」、「応用編」に分けて説明します。

まずは「準備編」です。

○ココログ全記事一覧作成「準備編」

1.新しいテンプレートセットの作成
[トップ > ブログ一覧 > (blog名) > デザイン]

「新しいテンプレートセットを作る」で作成します。その際、レイアウトやコンテンツ等をお好みの設定にしておいてください。

2.上級者向けテンプレートセットの作成
[トップ > ブログ一覧 > (blog名) > デザイン > テンプレートセットを編集]

「既存のテンプレートセット」一覧にある「1」で作成したテンプレートセットを変換して、上級者向けテンプレートセットを作成します。なお、リッチテンプレートは変換できません。

3.上級者向けテンプレートセットの編集
[トップ > ブログ一覧 > (blog名) > デザイン > テンプレートセットを編集]

「上級者向けテンプレートセット」一覧にある「2」で作成した上級者向けテンプレートセットを編集します。テンプレートの一覧画面へ移ればOKです。

(「準備編」完了)

続いて「実践編」です。

○ココログ全記事一覧作成「実践編」

1.新しいインデックステンプレート画面の表示
[トップ > ブログ一覧 > (blog名) > デザイン > (セット名) [上級]]

「新しいインデックステンプレートを作成する」から「新しいインデックステンプレートの作成」画面へ移ります。

2.新しいインデックステンプレートの作成
[トップ > ブログ一覧 > (blog名) > デザイン > (セット名) [上級] > 新テンプレート作成]

例として、以下のように入力して「保存」ボタンを押し、作成します。

・テンプレート名[ココログ全記事一覧
・出力ファイル[permalink.html

 インデックステンプレートを公開する際、自動的にこのテンプレートも公開する

・テンプレートの内容(私が行った例)

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>(blog名)全記事一覧</title>
</head>

<body>
<h3>「(blog名)」全記事一覧(最新順)</h3>
<ul>
<MTEntries lastn="1500">
<li><strong>[<$MTEntryDate format="%Y.%m.%d"$>]</strong> <a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></li>
</MTEntries>
</ul>
</body>

</html>

※「1500」は、一覧表示する記事数です。多めに設定しておいてください。

3.新しいインデックステンプレートの反映
[トップ > ブログ一覧 > (blog名) > デザイン > (セット名) [上級] > ココログ全記事一覧]

『テンプレートセットの変更内容を保存しました。新しいデザインをサイトに反映するには「反映」ボタンをクリックしてください。』という説明書きと共に現れる「反映」ボタンを押し、サイトに反映させます。その際表示される小ウィンドウでは、「メインテンプレート:ココログ全記事一覧」が既に選ばれているはずなので、そのまま「反映」ボタンを押します。反映処理後は「index template 'ココログ全記事一覧'を反映しました」と表示されるので、「このページを確認」から作成した「ココログ全記事一覧」を確認します。日付付きの全記事のタイトルが最新順に列挙されたでしょうか?

→「ココログ全記事一覧」のサンプル

(「実践編」完了)

最後に「応用編」です。

○ココログ全記事一覧作成「応用編」

「実践編」でココログ全記事一覧は作成できましたが、この「応用編」ではそれを「自分のココログの一記事」のように見せる方法を説明します。

1.既存のインデックステンプレートのコピー
[トップ > ブログ一覧 > (blog名) > デザイン > (セット名) [上級]]

インデックステンプレート「Main Index Template(index.html)」からその編集画面へ移り、「テンプレートの内容」の全ての内容をコピーします。その後、「テンプレート一覧へ戻る」から元の画面へ戻ります。

2.新しいインデックステンプレート画面の表示
[トップ > ブログ一覧 > (blog名) > デザイン > (セット名) [上級]]

「実践編・1」と同じように、「新しいインデックステンプレートの作成」画面へ移ります。

3.新しいインデックステンプレートの作成
[トップ > ブログ一覧 > (blog名) > デザイン > (セット名) [上級] > 新テンプレート作成]

「実践編・2」と同じように、例として、以下のように入力して「保存」ボタンを押し、作成します。

・テンプレート名[ココログ全記事一覧2] ←ここではこう名付けます
・出力ファイル[permalink2.html] ←ここではこう名付けます

 インデックステンプレートを公開する際、自動的にこのテンプレートも公開する

・テンプレートの内容(私が行った例)

A.「1」でコピーした内容を貼り付けます。
B.「A」について、「<MTEntries>」から「</MTEntries>」の部分を全て削除します。
  削除後は、分かりやすいようにいくつかの改行を置くと良いでしょう。
C.「B」について、以下のように追加と編集を行います。

<!-- 以下のように編集(上書きの書き換えも可) -->

<!-- <title><$MTBlogName$></title> -->
<title>(blog名): 全記事一覧(最新順)</title>

  ・
  ・
  ・
<div class="content-top"></div>
<div class="content">

<!-- 以下のように追加 -->

<h3>「(blog名)」全記事一覧(最新順)</h3>

<div>
<table border="4" bgcolor="#FFFFFF" bordercolor="#000080" cellpadding="4" cellspacing="0">
<tr>
<td width="90%" valign="top">
<div class="permalinkMessage">
<ul>
<MTEntries lastn="1500">
<li><strong>[<$MTEntryDate format="%Y.%m.%d"$>]</strong> <a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></li>
</MTEntries>
</ul>
</div>
</td>
</tr>
</table>
</div>

<$MTCocologLinkage$>
  ・
  ・
  ・

※「1500」は、一覧表示する記事数です。多めに設定しておいてください。
 「permalinkMessage」は、CSS編集用で自由にデザインできます(説明省略)。

4.新しいインデックステンプレートの反映
[トップ > ブログ一覧 > (blog名) > デザイン > (セット名) [上級] > ココログ全記事一覧2]

「実践編・3」と同じように、「反映」ボタンを押し、サイトに反映させます。反映処理後は「index template 'ココログ全記事一覧2'を反映しました」と表示されるので、「このページを確認」から作成した「ココログ全記事一覧」を確認します。「自分のココログの一記事」のように、日付付きの全記事のタイトルが最新順に列挙されたでしょうか?

→「ココログ全記事一覧2」のサンプル

(「応用編」完了)

以上ですが、説明に沿って上手くできましたでしょうか? できればもう少し深入りしようと思ったのですが、あえてここまでにしておきます。本記事を公開したのは、もちろん「ココログ全記事一覧」を作成するのが大きな目的ですが、このように「新しいインデックステンプレート」でテンプレートタグを使ったHTML作成ができる例を紹介したかったからです。プランが「プロ」の方でも、それを活用している人はまだ少なく思えたので・・・。

また、「プロ」以外のプランでは、このようにして「ココログ全記事一覧」を作成することは残念ながらできません。実現する方法としてはスクリプトを使う方法がありますが、恐らく表示完了までに長い処理時間が発生すると思われます。具体的には「バックナンバー」のHTMLファイルと「Ajax」という技術を使ったスクリプトが必要になるのかな・・・。

なお、この「ココログ全記事一覧」が必要か否かについては、ここでは何も言わずそっとしておいてください(笑)。実はある記事を書いた際に関連記事を紹介するにあたって、ココログの管理画面では記事タイトルは分かっても固定リンクまでは分からないので、こうした一覧が欲しかっただけなんです。せっかくだから、自作してしまおうと・・・。そういう使い方をするとなると、一覧の中からの特定キーワードによる検索機能があるともっと良いですね。これはまた機会があれば検討したいと思っています。

最後に、同じような方法で作成した1コーナーをご紹介して終わります。

○関連記事『「みんなで解決!広場」・よくある質問(FAQ)コーナー』
http://adstv-web.cocolog-nifty.com/studio/hiroba_faq.html

|

« 映画「木更津キャッツアイ ワールドシリーズ」制作発表 | トップページ | 加護ちゃんが喫煙でフライデーされちゃった »

コメント

ads(あず)さん、どうもです。

全記事一覧、プロコースだと比較的簡単に作れて、便利ですよね。
ちなみに、概要(記事本文の先頭何文字か)もいっしょに表示したい、と思ったら、右上の「サイト内全文検索」で文字列をなにも入れずに検索すると吉(笑)。

なお、全件指定でしたら、
MTEntries lastn="1500"
とする代わりに、
MTEntries all="1"
とすれば OK のようです。

うちのサイトでは、記事一覧の他に、コメント一覧・トラックバック一覧も設置してあります。設置方法は
http://furyu.tea-nifty.com/annex/2006/04/javascript_5a9f.html
です。ご参考までに。

で、本題ですが(笑)。

たまたまこちらで全記事一覧を見てみたら、45件分しか表示されていないことに気がつきました。
(全文検索でも最大46件(うち1件はダミーデータ)しかひっかかりません)

実際には、それ以前の記事もみることが出来ますので、恐らくはココログ側のデータベースの構築ミスなのかなぁ、とは思いますが。
メンテナンスあけにでも、データベースの再構築をされることをお勧めします。
(このコメントを付けたことによってデータベースが再構築されて復旧する可能性もないではないですけれど)。
(もしわざと件数を制限されているようでしたらすみません。)

なんにせよ、今度こそ正常に戻って欲しいものですね<ココログ。

投稿: 風柳 | 2006.07.11 02時44分

風柳さん、こんにちは。良くぞこの記事を見つけられましたね! 私はそれにまず驚いてしまいました(笑)。いやいや、感謝するばかりです。最近は本当にいろいろと・・・。

なるほど、「ココログ全文検索」の有効利用に、全件指定の別定義に、風柳さん作の有用な機能。どれも参考になります! 今すぐ試したいけど、ココログの大メンテ&レスポンス負荷もあってその気分になれず(苦笑)。でもメンテ後にでも試したいと思います。「広場」の「ほぼ全文検索窓」の修正の件も合わせてね。アドバイスありがとうございました!

それで本題の方。実は私もそれに気付いていて、何度再構築を繰り返しても(気が付けばやってます)全記事分が反映できないんです。以前もそういう現象があって、お知らせココログでも「テンプレート不具合」の告知があったような? だから今回もおそらくココログ側の問題ですね。把握はしているのでOKですよ。

現在(7/11 3:00頃)はようやく動作が軽くなってきたかな。でも、それじゃあ社会人の私にとっては辛いんですけどね。今回の大メンテナンスは「ココログのラストチャンス」と言っても過言ではないので、本当に頑張っていただきたいです。「正常かつ普通に使えればそれで良い」。これが、ユーザの求める最小限の望みです。

投稿: ads(あず)@管理人 | 2006.07.11 03時01分

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/15963/8585255

この記事へのトラックバック一覧です: ココログ・全記事一覧の作成方法:

« 映画「木更津キャッツアイ ワールドシリーズ」制作発表 | トップページ | 加護ちゃんが喫煙でフライデーされちゃった »