ケータイでもこのブログが見られるようにしてみました。と言っても、UTF-8が表示できる端末に限りますが。

下で細かい作業内容を書いていますが、大雑把にまとめると

- ケータイで見るために、サイドバーは使わないように。
- ケータイで見るために、対象日数をちょっと少なめに。
- ケータイで見るために、上部にページ内の各エントリへのアンカーを設置。
- キャリアによる表示可能画像の種別については一切無視。見れない人、ごめんなさい。あと、Flickrの画像はそのままになっています。でかいかもしれないけどごめんなさい。
- ブログのトップURL(http://matatabi.homeip.net/blog/setomits/)にアクセスした場合は、ユーザーエージェントで振り分けをして、ケータイぽかったらケータイ用のトップURL(http://matatabi.homeip.net/blog/setomits/m_index_html)にいくように。
- 各エントリのURL(http://matatabi.homeip.net/blog/setomits/722 とか)にアクセスすると、ケータイぽかったらケータイ用のエントリのURL(http://matatabi.homeip.net/blog/setomits/722/m_entry_html とか)にいくように。

というところです。
以下、やったこと。

1. Zopeの管理画面上で COREBlog のプロパティタブをクリック。 m_top_days という名前の int の変数を作り、その値を 3 にした。

2. Zopeの管理画面上で COREBlog のコンテンツタブをクリック。blog_logo_img のコピーを m_blog_logo_img とし、縦/横のサイズを半分ずつに。これはなくても問題ないはずです。

3. Zopeの管理画面上で COREBlog のコンテンツタブをクリック。m_header という DTMLメソッドを追加し、以下の内容に。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<dtml-var management_page_charset missing="EUC-JP">">
<title><dtml-var blog_title>
    <dtml-if "meta_type == 'COREBlog'">
      <dtml-if year> : <dtml-var year>年<dtml-var month>月<dtml-if day><dtml-var day>日</dtml-if></dtml-if>
      <dtml-if cat_id><dtml-with "getCategory(id=cat_id)"> : Category [<dtml-var name>]</dtml-with></dtml-if>
   <dtml-else> : <dtml-var title>
   <dtml-if subtitle> - <dtml-var subtitle> - </dtml-if>
   </dtml-if>
</title>
</head>
<body bgcolor="#<dtml-var background_color>" text="#<dtml-var font_color>" link="#003366" vlink="#001122">
<center>
<a href="<dtml-var blogurl>/m_index_html">
<dtml-if m_blog_logo_img><dtml-var m_blog_logo_img>
<dtml-else><dtml-var blog_title>
</dtml-if>
</a>
</center>
<hr color="#<dtml-var color3>">

4. Zopeの管理画面上で COREBlog のコンテンツタブをクリック。m_footer という DTMLメソッドを追加し、以下の内容に。
<a href="http://coreblog.org/"><img src="<dtml-var blogurl>/images/corebloglogo_orange"></a>
</body>
</html>

5. Zopeの管理画面上で COREBlog のコンテンツタブをクリック。m_entry_body という DTMLメソッドを追加し、以下の内容に。
<strong>
 <a name="<dtml-var id>" href="<dtml-var blogurl>/<dtml-var id>/m_entry_html">
  <dtml-var entry_title html_quote>
 </a>
</strong>
<dtml-if "_.len(subtitle)>0">(<dtml-var subtitle>)</dtml-if>
<div align="right"><dtml-var date_created fmt="%y/%b/%d %H:%M:%S"></div>
<p>
<dtml-var body>
</p>
C(<dtml-var count_comment>) / T(<dtml-var count_trackback>)

6. Zopeの管理画面上で COREBlog のコンテンツタブをクリック。m_index_html という DTMLメソッドを追加し、以下の内容に。
<dtml-var m_header>
<ul>
<dtml-in "rev_day_entry_items(count=m_top_days)">
<li><a href="#<dtml-var id>"><dtml-var entry_title></a>
</dtml-in>
</ul>
<hr color="#<dtml-var color3>">
<dtml-in "rev_day_entry_items(count=m_top_days)">
<dtml-var m_entry_body>
<hr color="#<dtml-var color3>">
</dtml-in>
<dtml-var m_footer>

7. Zopeの管理画面上で COREBlog のコンテンツタブをクリック。index_html を開き、先頭に以下内容を追加。
<dtml-call expr="REQUEST.set('ua', HTTP_USER_AGENT)">
<dtml-if expr="ua.count('DoCoMo') or ua.count('KDDI') or ua.count('J-PHONE') or ua.count('Vodafone') or ua.count('MOT')
 or ua.count('DDIPOCKET') or ua.count('WILLCOM')">
 <dtml-call "RESPONSE.redirect('m_index_html')">
</dtml-if>

8. Zopeの管理画面上で COREBlog のコンテンツタブをクリック。m_entry_html という DTMLメソッドを追加し、以下の内容に。
<dtml-var m_header>
<dtml-var m_entry_body>
<hr>
<dtml-in previous_entry_item>
前: <a href="<dtml-var entry_url>"><dtml-var title></a><br>
</dtml-in>
<dtml-in next_entry_item>
次: <a href="<dtml-var entry_url>"><dtml-var title></a> <br>
</dtml-in>
<hr>
<strong>Comments</strong>
<blockquote>
<dtml-in comment_list>
<dtml-if moderated>
<p>
<dtml-var comment_body>
</p>
<hr>
</dtml-if>
<dtml-else>
<p>No Comments</p>
</dtml-in>
</blockquote>

<strong>Trackbacks</strong>
<blockquote>
<dtml-in trackback_list>
<p>
<dtml-var trackback_body missing="">
</p>
<hr>
<dtml-else>
<p>No Trackbacks</p>
</dtml-in>
</blockquote>

<dtml-var m_footer>

9. Zopeの管理画面上で COREBlog のコンテンツタブをクリック。entry_html を開き、先頭に以下内容を追加。
<dtml-call expr="REQUEST.set('ua', HTTP_USER_AGENT)">
<dtml-if expr="ua.count('DoCoMo') or ua.count('KDDI') or ua.count('J-PHONE') or ua.count('Vodafone') or ua.count('MOT')
 or ua.count('DDIPOCKET') or ua.count('WILLCOM')">
<dtml-call "RESPONSE.redirect(id+'/m_entry_html')">
</dtml-if>

10. (おまけ)QRコード作成
QRコード作成&活用のススメにてblogSetomitsのQRコードを作成し、右のaboutに設置しました。
Posted by setomits at 12:18 | Comments: 0
Leave a comment
Required fields are marked with *
search
calendar
Feb 2012
SunMonTueWedThuFriSat
   1234
567891011
12131415161718
19202122232425
26272829   
archives
photos on flickr
www.flickr.com