静かなブームになっている「サイト簡易表記」に登録してみました。
簡易表記一覧 - Easy Notation
サイト簡易表記
サイトの表示を変えずに、トラックバックしたときだけ自動的に「サイト簡易表記」を付加する方法を紹介します。(MovableType2.661の場合を中心に)
■トラックバックの改造
1つのブログだけを運用している場合は、[1]の方法でいいとおもいます。
[1] 1つのサイトで1つのブログを運用している場合
<mt>/lib/MT.pmの564行目あたり(MT3の場合は、756行目あたり)
push @qs, 'title=' . MT::Util::encode_url('[E] '.Jcode->new($entry->title, $charset)->utf8);
※文字化け防止でJcodeが入っているので、その場合は、
push @qs, 'title=' . MT::Util::encode_url('[E] '.$entry->title);
となります。
※いずれにしても、ピリオドを忘れずに。perlでの文字列連結の演算子です。
[2] 1つのサイトで複数のブログを運用している場合
<mt>/lib/MT.pmの559行目に(MT3の場合は、752行目あたり)
my $ename = '';
if ($entry->blog_id == 2) {$ename='[E] ';}
elsif ($entry->blog_id == 3) {$ename='[H] ';}
を追加します。
※コードは本サイトの場合なので、必要な箇所を編集してください。
そのちょっと下の方にタイトルを生成している部分があるので、
先ほどの「$ename.」を「encode_url(」の後ろに加えます。
push @qs, 'title=' . MT::Util::encode_url($ename.Jcode->new($entry->title, $charset)->utf8);
■Atom、RSSの改造
Atom、RSSのほうは、テンプレートを編集するだけです。
(1) Atom Index(atom.xml)の後ろの方
<MTEntries lastn="15">
<entry>
<title>[E] <$MTEntryTitle remove_html="1" encode_xml="1"$></title>
(2) RSS 1.0 Index(index.rdf)の後ろの方
<MTEntries lastn="15">
<item rdf:about="<$MTEntryPermalink encode_xml="1"$>">
<title>[E] <$MTEntryTitle encode_xml="1"$></title>
(3) RSS 2.0 Index(index.xml)の後ろの方
<MTEntries lastn="15">
<item>
<title>[E] <$MTEntryTitle remove_html="1" encode_xml="1"$></title>
導入した場合のThunderbirdでの表示。
Thunderbirdでは、どういうわけかブログ名は表示しないので、簡易表記はとても便利。
[E] サイト簡易表記の対応方法(Nucleus)※WordPressの対応方法は、こちらです。
[E] サイト簡易表記の対応方法(WordPress)※ココログでの設定方法は、こちらを参照。
[☆] 簡易表記に対応しました
sabakan
Trackbackどうもです。
家ではsbでblogを構築していますが何せPerlがちんぷんかんぷんなので、sbの個別エントリ用のテンプレートを作成し、短縮表記+エントリタイトルをtitleタグに吐き出すようにハードコーディングしています。
プログラマ的には気持ちの悪い処理なんですが、Perlは判らないので安易に妥協しました :-(
pekoe
トラックバックを送信するときは、ヘッダのコンテンツタイプは「application/x-www-form-urlencoded」という形式で送るので、これをキーワードにソースを探してみたらいかがでしょう。
GAKU
初めまして。
わざわざコメントいただき、ありがとうございました。
短縮表記がうまくいった喜びの余り、Atom、RSSの対応を忘れておりました。ご指摘をいただき、あらためて落ち着いて記事を読ませていただき、我が身の粗忽に気がつきました。(^^;)
お礼申し上げます。
ミッチ
はじめまして。
こちらの記事を参考にいろいろと訂正してみました。
トラックバックもさせていただいたのですが
[]の中が文字化けてしまっています・・・。
これは、どの辺りを修正すればよろしいのでしょうか。
よろしくお願いいたします・・・・。
pekoe
[]の中が全角の場合は、大抵文字化けしています。
気がついたときに手直ししています。
私も詳しくはわからないのですが、MT.pmの文字コードがUTF-8になっていないからかと予想しています。
この記事に実験のトラックバックしてもいいので、試してみてください。同じ記事からのトラックバックはこちらで削除しますので、お気軽に。(同じ記事への重複トラックバックは削除も手間ではありませんので…)
foofoo
はじめまして。
簡易表記の方法、参考にさせていただきました。
ただ、MT3.15(UTF-8)でトラックバックのほうを改造すると
[]内は正常に表示されますが
タイトルのほうが文字化けしてしまうようです・・・。
pekoe
試しに送ってください。
どのように文字化けするのかみたいので。
foofoo
foofooです。
TBを飛ばさせていただきました。
すみません。
[]内が文字化け、タイトルは正常表示ですね。
何か改善策が考えられるようでしたら
アドバイスいただけると嬉しく思います。
foofoo
foofooです。
ちなみに↓↓を使用しています。
push @qs, 'title=' . MT::Util::encode_url('[E] '.$entry->title);
こちら↓↓ですと、MT自体にログインできなくなってしまったので・・・。
push @qs, 'title=' . MT::Util::encode_url('[E] '.Jcode->new($entry->title, $charset)->utf8);
foofoo
度々申し訳ありません。
個人的な理由により、[何]から[N?]に変更しました。
トラックバックも正常に表示されるようになりました。
大変お手数をおかけして申し訳ありませんでした。
何度も飛ばしてしまったトラックバックは
削除していただければ幸いでございます。
それでは。
pekoe
Jcodeが入っていないんですね。
あとから入れることもできるようですよ。
さくら
はじめまして。
こちらのやり方を参考に簡易表示を導入してみました。
[櫻]と表示させたかったのですが、どうも[]の中が文字化けしてしまうようなので、また修正してみます。
他の方も書かれてましたが、MT3.15(UTF-8)のバージョンのせいかもしれませんね…。
やり方などがわかりやすかったおかげで、特に迷うことなく導入できました★
あとは文字化けを修正するのみです!
では。
さくら
度々恐縮です。
はじめは[櫻]というマークで登録申請していたものです。
どうしても日本語というより、全角が認識されず文字化けしてしまうので、[+]のマークに変更しました。
何度かBPでテストしてみたのですが、どうしても文字化けするサイトとしないサイトが出てしまうようで、これ以上原因を追究しても…ということで、変更してみました。
何度もTBさせていただいたりして、大変お手数をおかけいたしますが、重複しているものは削除して頂ければ幸いです。
では。