xoopsの携帯対応まとめ(導入編)

今週末は、xoopsの携帯対応で試行錯誤していました。


2009.7.26時点の実現方法は2種類あります。

  1. WizMobileで対応する方法
  2. HypCommonFuncの携帯対応レンダラー機能を使う。

両方調べたので、解説を残しておきます。

WizMobile

1.ダウンロード&インストール

配布元がダウンしているとのことで、XUGJのWizMobileページから最新版をダウンロードします。(2009.7.26時点で、ver0.42)


設置方法は上記ページに記載してあるので、その表記に従います。

2.テンプレート

携帯用テンプレートの置き場所は、デフォルト設定で以下になります。

XOOPS_ROOT_PATH/themes/mobile/templates/


上記のページに、各モジュールのテンプレートを置いて、カスタマイズします。
置き方は色々あるらしいのですが、「テーマ下テンプレート」という方法を使いました。


各モジュールのtemplates配下、およびtemplates/blocks配下のファイルを

XOOPS_ROOT_PATH/themes/mobile/templates/

に置きます。


例えば、minidiaryの場合

XOOPS_ROOT_PATH/themes/mobile/templates/yd_detail.html
XOOPS_ROOT_PATH/themes/mobile/templates/yd_diarylist.html
...
XOOPS_ROOT_PATH/themes/mobile/templates/yd_viewcomment.html
XOOPS_ROOT_PATH/themes/mobile/templates/b_diarylist.html

という感じになります。
blocks配下のファイルも、他のモジュールのファイルも全部同じフォルダに入れるのがポイントですね。


また、テーマファイルは

XOOPS_ROOT_PATH/themes/mobile/templates/theme.html

のみをカスタマイズすれば良いです。


携帯向けのテンプレートはモバイルテンプハウスMBXoopsなどで配布されているので、これらのファイルをベースにするとカスタマイズの手間が省けます。WizMobileも携帯対応レンダラーも同じファイルを使えます。

3.絵文字対応

PHP5.2以上であれば、絵文字の機能を使えます。


絵文字の機能を使うためには、モジュールの管理画面で
「携帯対応モジュール」→「一般設定」→「絵文字入力支援」
をONにします。


携帯電話から絵文字を含む文章を登録すると、自動的にsmartyに変換し、携帯で表示させるときにはキャリアに応じた絵文字コードに変換してくれるようです。


また、PCからはXoopsの顔文字欄の「もっと」というリンクをクリックし、Popupした画面の右上に「絵文字」という欄が追加されています。ここから絵文字を入力できます。


携帯用のテンプレートにも絵文字を入れられます。
[emj:xxx(:im|ez|sb)]と書けば入力できます。xxxの部分に、各キャリアの絵文字番号を入れます。


キャリアの識別子は省略可能で、省略するとdocomo用のものになるようです。
・im: docomo
・ez: au
・sb: softbank
です。


例えば、[emj:113:ez]と書くと、AUの113番目の絵文字(チューリップの花)になります。


絵文字の番号は以下から調べられます。
docomo: 基本絵文字拡張絵文字
拡張絵文字は、1000を加えます。たとえばクローバーの場合、[emj:1054]のように記載します。
au: 絵文字一覧
softbankはどこで公開されているのか、分かりませんでした。


ちなみに、絵文字対応にはText_Pictogram_MobileというPEARのパッケージを使っているようです。version 0.42では、「XOOPS_TRUST_PATH/wizin/lib/PEAR/Text/Pictogram/Mobile」に同梱されています。

携帯対応レンダラー(HypCommonFunc)

1.ダウンロード&インストール

HypCommonFuncのページから入手します。(2009.7.26時点で、HypCommonFunc_20090626.zip)
インストールも手順に沿って行えば、特に問題はおきませんでした。

2.テンプレート

携帯用テンプレートの置き場所は、デフォルト設定で以下になります。

XOOPS_ROOT_PATH/themes/ktai_default/templates/


上記のページに、各モジュールのテンプレートを置いて、カスタマイズします。


「テーマ下テンプレート」の場合は、各モジュールのtemplates配下、およびtemplates/blocks配下のファイルを

XOOPS_ROOT_PATH/themes/ktai_default/templates/

に置きます。


例えば、minidiaryの場合

XOOPS_ROOT_PATH/themes/ktai_default/templates/yd_detail.html
XOOPS_ROOT_PATH/themes/ktai_default/templates/yd_diarylist.html
...
XOOPS_ROOT_PATH/themes/ktai_default/templates/yd_viewcomment.html
XOOPS_ROOT_PATH/themes/ktai_default/templates/b_diarylist.html

という感じになります。
こちらもWizMobileと同様に、blocks配下のファイルも、他のモジュールのファイルも全部同じフォルダに入れるのがポイントですね。


また、テーマファイルは

XOOPS_ROOT_PATH/themes/mobile/templates/theme.html

なのですが、表示をカスタマイズするには上記では不十分です。

XOOPS_TRUST_PATH/class/hyp_common/ktairender/templates/default/header.html
XOOPS_TRUST_PATH/class/hyp_common/ktairender/templates/default/body.html
XOOPS_TRUST_PATH/class/hyp_common/ktairender/templates/default/footer.html

なども必要に応じて修正します。
RSSのリンクを消したかったのですが、定義されている場所を追い切れませんでした。


携帯向けのテンプレートはモバイルテンプハウスMBXoopsなどで配布されているので、これらのファイルをベースにするとカスタマイズの手間が省けます。WizMobileも携帯対応レンダラーも同じファイルを使えます。

3.絵文字対応

((i:xxxx))と記載します。括弧は半角です。xxxxの部分は、docomoS-JISコードの16進数を記入します。
((i:f98e))とか((i:f952))のような感じです。


文字コード
docomoの基本絵文字
docomoの拡張絵文字
を見るか、絵文字入力支援ソフトを使って調べます。


また、WizMobileと同様に、[emj:xxx(:im|ez|sb)]のフォーマットにも対応予定のようです。(動作未確認)
■参考: http://mbxoops.net/modules/d3forum/index.php?topic_id=62

雑感

配布元サイトが落ちていたり、導入に関する情報がバラバラになっていたりと、非常に分かりにくかったです。
みんなちゃんと導入できているんだろうか・・・。
そもそも上記で正しいのかも不安ですし。


今回の内容が、Xoops携帯対応の参考になれば幸いです。