Newを表示

サイドの「最近のトラックバック」に New を表示するようにした。
トラックバックは、たまにしかないから目立つようにしたかった。
設定は48時間以内。
コメントやエントリーは特に必要と感じていないので未設定。

【設置メモ】

<?

//以下のスクリプトを .phpファイルの必要な場所にはめ込む。
//(ただし、<MTEntry>?</MTEntry>のようなコンテナタグの内側)
//この例は、コメントの日付を判定している。entryの場合は青字をMTEntryDate、トラックバックの場合はMTPingDateに変える

// 初期設定
$Time1 = 48; // 時間差、単位はhour  この時間の間だけアイコンを表示する
$gifname = “http://New画像のURL”;
// newのイメージファイル
$gif_w = 28; // イメージの幅
$gif_h = 11; // イメージの高さ

// 以下は手を付けない

$mtdate =”<$MTPingDate format=”%H-%M-%S-%m-%d-%Y”$>”;

$date1=explode(“-“, $mtdate);
$timediff = time() – mktime($date1[0], $date1[1], $date1[2], $date1[3], $date1[4], $date1[5]);
if ( $timediff < 60*60*$Time1 ) {
$outl = “<img src=” . $gifname . ” width=” . $gif_w . “height=” . $gif_h . “alt=new />\n”;
print $outl;
} else {
print “”;
}
?>

こちらのサイトを参考にさせて頂きました。

サイドバーに最近の写真

サイドバーに最近の写真がでるようにした。
よく見かけるんだけど、いいな~と思ってたので設置してみました。

【設置メモ】
ここで Collect Plugins をダウンロードして 解凍した Collect.pl を /mt/plugins にアップロード。

Mainindexに以下のタグを追加する。

<MTEntries lastn=”8″>
<MTCollect tags=”img”>
<MTCollectThis show=”0″>
<$MTEntryBody$>
</MTCollectThis>
<MTIfCollected tags=”img”>
<MTCollected tags=”img” lastn=”1″>
<a href=”<$MTEntryLink$>”>
<img src=”<$MTCollectedAttr attr=”src”$>” style=”margin:2px” alt=”<$MTEntryTitle$>” />
</a><br />
</MTCollected>
</MTIfCollected>
</MTCollect>
</MTEntries>

<MTEntries lastn=”8″> は最新8件の記事から<MTCollected tags=”img” lastn=”1″>でimgタグの最初の1枚目を写真をピックアップする設定。

bird.dip.jp さんのサイトも参考にさせて頂きました。

なんだかサイドバーのボリュームが多くなってきちゃったね(^^;

トラックバック自動更新とカテゴリ分割とPHP化

見た目は、ほとんど変わらないけど内部的な部分をいくつか変更した。

【その1】
トラックバックがあったらコメントにも内容をすぐに反映させるようにした。

ブログを始めてから1年以上たって気が付いたんだけど、トップぺージとトラックバックのページ以外はデーターベースを再構築しないと反映されない事に気が付いた。
どうやってやるのかな~と調べてみると、そんな機能はもともと無い(汗)

プラグインを入れれば出来るようなので「HuntingGirledCollectiveさん」の記事を参考にやってみる。

/mt/lib/MT/App/Trackback.pm の200行目あたりに

$app->rebuild_entry( Entry => $entry )
or return $app->_response(Error =>
$app->translate(“Rebuild failed: [_1]”, $app->errstr));

と、追加するだけでOK。

トラックバック着信すると、自動的に反映されるようになったので、コメントページにもトラックバックを表示するようにしました。

【その2】
カテゴリページを記事数ごとに分割できるようにした。
それと、ファイルのPHP化。

カテゴリは、このままにしておくとページが大きくなりすぎて読みにくくなる。
このままブログを続けていくためには避けて通れない気がしたので、任意の記事数で分割できるようにしてみる。

CROSSBREED クロスブリード!さん」 のページを参考に

プラグインファイル MTPaginate.pl を/mt/plugins にアップロード。
カテゴリーページに、このサイトに記載されているタグを埋め込む。

さらに、このスクリプトを動作させるためにファイル名をPHPにする必要がある。
いままでの「00000.html」形式では動作しない。

まず、MTの管理画面→BLOGの設定→ウェブログの設定で、アーカイブファイルの拡張子を「php」にする。
ついでにファイル名を「日付と時間」にする。
管理画面→BLOGの設定→アーカイブの設定の、個別(Individual)の「アーカイブファイルのテンプレート」と言うところに

<$MTArchiveDate format="%Y%m%d%H%M"$>.php

と追加する。

ここで、データーベースの再構築(リビルド)をする。
アーカイブ、カテゴリー等の .html ファイルは不要となるのでFTPソフトで削除する。

ファイル名を「日付と時間」 200507111210.php(2005年07月11日12時10分) のようにすると、いくつかのメリットがあるようです。

1.データーベースの再構築が軽くなる。
2.00000.htmlの連番形式だとブログを引っ越すときにファイル名が変わってしまうが「日付と時間」だと、ファイル名が変わることがない。

デメリットもある。
元の .html というファイルがなくなったので、今までこちらからトラックバックしたサイトやエントリー自体にリンクを貼ってくれたサイトのリンクがエラーとなってしまう。

.htaccessのRedirect permanentを利用して、旧URLにアクセスした場合、新URLに飛ぶように出来るみたいだけど、トラックバックはあまりしてないので今回はパス(^^;