Top > Movable Type > 3.1x-ja > ブログをPHP化しました。

« 吉祥寺でデート。(嘘) | main | 語感で占う!ニックネーム診断 »

2005-10-02

3.1x-ja

ブログをPHP化しました。

前のエントリーで書いた通り、ブログをPHP化しました。
とりあえず、PHP化すると軽くなるらしいです。再構築なんかも早くなるらしい。でもまだエントリー数も少ないブログなので、このあたりの実感はナシ(爆)。でも、やったことの手間を考えると早いうちに越したことはないです。はい。

後でご紹介しますが、アーカイブページの分割はPHPでないとできないようですし、他にも便利ツールが使えるようになったりしちゃいます。さっそく気をよくして一ついれちゃいました。

では、PHP化についての覚え書きっす。(長いよ)

例によって例のごとくお世話になったのはコチラです。

小粋空間:カテゴリーアーカイブと月別アーカイブのページ分割
我楽:PHP化とページ分割。
今日の覚え書き:個別記事URLの固定化を行いました

他にもリンクを辿ったり、検索したりとたくさんのところにお世話になりました。ありがとうございます。

○カテゴリーアーカイブ、月別アーカイブのPHP化とページ分割

これはラクチンです。小粋空間さん、我楽さんの解説通り行えば一発です。こっちは覚え書きするところがないくらい丸写し。ありがとうございました!

○個別アーカイブのPHP化と個別アーカイブのURL固定化

こっちは少々難航しました。でも、個別アーカイブのURL固定化とそれに伴い、旧URLをリダイレクトさせたい!というのが切なる願いだったので頑張りました。

リダイレクト作業を行う個別アーカイブのPHP化の作業は順番が大事と思うので、みなさん気を付けて行ってくださいね。我楽さん、今日の覚え書きのもそさんの解説通り落ち着いてやってみてください。

そして、今回の発端である、MTぶっ壊しとの関係ですが・・

もともと、もそさんの「個別記事URLの固定化を行いました」は以前からチェックしていたんです。だけど、今回のミスでやってしまった「失ってしまった(順番のくるってしまった)URL」はどうにもならないと思い、旧URLとのリダイレクトはあきらめつつ、PHP化をうっすら考えていました。

でも、あったんですよ、旧URLを調べる手が。(って、みんな気づいているかも・・)
MTの管理画面、テンプレートにあるアーカイブページ(archives.html)が、ソレです。
みなさんそれぞれでご自身のページでアクセスしてもらえば分かりますが、エントリー一覧が表示されます。このエントリー一覧のURLからリダイレクトを行ったのです。復旧作業を始める前に全てDLしていたのが幸いしました。(そうでないと同じルートでブログを立て直しているので上書きされていたハズ)

では、リダイレクトの覚え書きです。本当に自分用なだけなので、ここだけ見てもさっぱり分からないかも・・(爆)

まずわたしは、個別アーカイブのファイル名を、

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

と、しました。
そして、リダイレクト用のhtaccessファイルを作成するわけですが。
まずは書いてあるようで書いてなかった、リダイレクト用のリファレンスです。

RedirectPermanent url-path url

※RedirectPermanentは作業の指令文みたいなものです。
※前者の「url-path」はアクセスされるURL。http://~ではなく、index.html以下のルートを記述。
※後者の「url」はそこからリダイレクトさせたいURL。http://~から記述。
※各行で改行。そして全部の記述が終えたら、最後に改行のみの行を作ります。
※RedirectPermanentは、Redirect Permanentと半角スペースがあってもいいようです。

この1行で、ひとつのリダイレクトが完成します。だからこれを延々とエントリー分作らなくてはならないのです・・。(わたしのような始めたばかりのブログでも140弱のエントリーがありました)

でも、とっても便利なことに、これをMTに作らせてしまえる事ができるんです。すごい!

 
○htaccessテンプレートの作り方

「新しいインデックスプレートを作る」をクリック。
テンプレートの名前:適宜どうぞ (わたしはhtaccessにしました)
出力ファイル名:○○○(英数字).html (わたしはhtaccessにしました)
テンプレートの中身 (ここが重要)

<MTArchiveList archive_type="Individual"> Redirect permanent /blog/archives/<$MTArchiveDate format="%Y/%m"$>/<MTEntries><$MTEntryID pad="1"$>.html</MTEntries> <$MTBlogURL$>archives/<$MTArchiveDate format="%Y/%m/%d_%H%M"$><MTEntries><$MTEntryKeywords dirify="1"$>.php<br /></MTEntries></MTArchiveList>

これらのルートに関しては、それぞれのアーカイブパスなどを確認の上、記述してください。
そして手順通り行ったのち、上記ページにアクセスするとRedirect Permanent一覧ができあがっています。この出力データを各リダイレクトごとにチェックしていきます。この確認が済んだら、index.php と同じところにアップ。

ここまで済んだら、旧URLにアクセスして、無事、指定したリダイレクト先が表示されれば終了です。PHP化もこれで完了ですから、PHP化した部分のhtmlファイルは全て削除して大丈夫です。逆に残っていたりすると、phpファイルとhtmlファイルを行き来しちゃったりするみたいでこのような現象がおきました(コメント参照)。(笑)

で、わたしの場合、出力されたデータには感動したのですが、青字に関しては全く違うファイル名がでてきてしまいました。色々調べて試してみたのですが、全然ダメ。
もうここはあきらめて、アーカイブページのソースを使って作り直しました・・。とほほです。

最後に余談ですが。

わたしの場合、書き出したログを読み込ませて、上記の作業をするまで、休暇などをはさみ2週間くらい放置しているんですね。その結果、グーグルなどで検索すると、MT壊した後に読み込ませたURLに置き換えられてしまっているようで、違うエントリーがでてきたり、404エラーがでてしまいます。みんなこれが嫌だから、この作業するのにね(爆)。

でも、それでも、リンク貼っていただいたところはちゃんとリダイレクトされているので大満足であります。

以上で、復活への作業関係は終わりです。
あとはPHP化にして楽しんじゃってる話しとか(これは、例えばココとかココのエントリー終了部分を見ていただければ分かります)、入れているプラグインや、内面的カスタマイズ関係の覚え書きに戻りまーす。(やっぱりカスタマイズネタが続くらしい・・)

コメントありがとう!

なが~いよ、ほんとに。おじさんにはよくわからん!

PHPって、出版社?以上、寝太郎でした。

■寝太郎さん
ご静聴ありがとうございました~!

>PHPって、出版社?

上手い!(笑)
念のため、「web php」でピックアップされるamazonサーチ足してみましたー。

コメントはこちらから (お気軽にどうぞ!)

ご利用のブラウザ、設定ではご利用になれません。