Atelierで“Parse error”タグの付いているブログ記事

2008年5月10日

隠居、MTでのParse error に苦戦

 現在契約しているレンタル・サーバーが手狭になってきたので、引っ越しを考えている。「MT サーバー 引越し」でググって(若い人たちの間では、Googleでサーチすることを ググルというらしい)みるとそう簡単ではないようだ。

 引っ越しをされた先達のエントリーには、大抵の人が引っ越しには準備を十分にしておくことが重要のように書いている。特に、サーバーを変えることによって、新しいドメインへのサイト・パスに注意を払う必要がある。

 初期の段階にわけのわからないまま見よう見まねで、テンプレートなどをいじってきたので、コードがくちゃくちゃになっている。コメントアウトしたコードがそのままのこっていたり、サイトパスがテンプレート・タグを使わずに、直接フルパスで書いている部分もある。まず、これらの掃除をしようとしたところでつまずいた。また、同じような過ちを犯しそうなので、備忘録的に書き留めて起きたい。

 メイン・ページ・テンプレートを掃除をしたあと、「S&R」(保存・再構築)をしてみると、なんと下のようなエラー表示がでて、ブログが立ち上がらない。 
Parse error: syntax error, unexpected ':' in /home/sites/lolipop.jp/users/lolipop.jp-dpxxxxxxxx/web/blog/index.php on line 156

 MTをなんとか立ち上げたころに見たエラー・メッセージである。どのように見るのかすっかり忘れている。これも、"parse error MT" でググッてみると、PHP化が影響していることが分かってきた。よく使うコード部分を「小粋空間」さんのPHPモジュール化を参考にPHP化して、よく理解できないまま使っていたのだ。

 さらに、"Parse error syntax" でググルと私でもなんとか理解できるページがヒットした。「ホリデープログラミング入門」というサイトのページである。

 ここに書かれている内容を頼りに、メイン・ページ・テンプレートテンプレートの156行目あたりを眼を凝らしてみると、次のような記述が見つかった。
<?php readfile(http://n-<$MTBlogURL$>"webtitle.html"); ?>

 どうやら、コードの掃除をしているときに手が滑ったらしい。もともとは、どうやらフルパスで書いていたと思われる。
<?php readfile("webtitle.html"); ?>
と記述しなおすと、すんなり回復してくれた。。

 原因が見つかるまでの当座の間に合わせは、FFTPでダウンロードしていた index.php を使ったが、このファイルはテンプレートタグなどが展開されたあとのファイルなので、元々のテンプレートを置き換えることができない。テンプレートは、秀丸か何かを使って Copy&Paste でバックアップしておいた方がいいかもしれない。