携帯にも対応
さいほくネットはEUC-JPなサイトなので、
でも携帯からアクセスする必要もある(してもらいたい)サイトなので
どうしたものかと以前から悩んでいました。
au と FOMA など一部の最新機種ではEUC-JPでも閲覧可能なので、
とりあえず「ぷちコミ」の部分だけ携帯用のトップページを作り
それ以降、行き詰まってしまったので、放置していました。
ところが、なぜか今朝ふと思いつくところがあって、
改良してみることにしました。
まず、このあたりを参考にして、
文字コード変換用のExternalMethodを作ります。
ここまでは楽勝です。
携帯アクセス用のトップページ(http://www.saihoku.net/i)に、
ぷちコミの最新10件を表示するmoduleを作り、
<dtml-var expr="toSJIS(title)">とか
<dtml-var expr="toSJIS('投稿方法')">
みたいな感じで、片っ端から変換します。
これも難しいことではありません。
(携帯からのアクセスは、Apacheで振り分けてます)
問題は、そこから先のページです。
各エントリーのページに飛んだとき、
PC用ページのリンクやロゴを表示させないためにはどうすればよいか。
そこに、以前COREBlogのMLに流れていた柴田さんのスキン
(の使い方)を応用します。
そのままだと、最新の投稿一件ぶんしか表示されないので、
<dtml-in "rev_day_entry_items(count=k_top_days)">
<dtml-var k_entry_body>
<dtml-else>
There is no entry.
</dtml-in>
の部分を
<dtml-var k_entry_body>
だけにします。
これで、トップページに表示した10件にリンクされるようになりました。
(なぜか、エントリーのidが取得できなくなるんですが)
(また、toSJIS(title) がエラーになってしまう)
とりあえず、目的の8割は達成。
残る課題は、携帯用のコメントページと
(コメントページ用のスキンをどこに置けばいいのかが謎)
携帯用トップページに「前の10件」のリンクを付けること。
(なぜか、うまくいかない)
Zopeの獲得という仕組みが、少しはわかったような......