携帯対応レンダー


ご注意:既にこの方法を用いなくても、携帯対応レンダーでテーマ下テンプレートが使用できるようになっています。

携帯対応レンダー(XOOPS マニア)を使って、XC2.0のサイトを携帯対応する場合に、テーマ下テンプレートを使用する方法です。
↑こちらのページに従ってスクリプトのアップロードを行い、必要があれば、モバイルテンプハウスなどから一部を引用してテンプレートの編集を行うことで、そこそこ使いやすい状態にすることができます。

テーマ下テンプレートの置き方

  1. モバイルテンプレートをテーマ下テンプレートと同様に、xoops_root_path/themes/mobile/temptales/ 以下にコピーします。

  2. 次に、下記コードを、/xoops_root_path/class/smarty/plugins/ 内に、「function.assign_replace.php」というファイル名で保存。
    <?php
    function smarty_function_assign_replace($params, &$smarty)
    {
    $text = isset( $params['text'] ) ? $params['text'] : "" ;
    $replace1 = isset( $params['replace1'] ) ? $params['replace1'] : "" ;
    $replace2 = isset( $params['replace2'] ) ? $params['replace2'] : "" ;
    
    $replaced_text = str_replace($replace1, $replace2, $text);
    $smarty->assign('replaced_text', $replaced_text);
    }
    ?>

  3. そして、Altsysで該当テンプレートを、以下のように書き換え。
  4. <{if $smarty.const.HYP_K_TAI_RENDER}>
    <{assign_replace text=$smarty.template replace1='db:' replace2=''}>
    <{include file="`$xoops_rootpath`/themes/mobile/templates/`$replaced_text`"}>
    <{else}>
    PCの場合のテンプレートをここに残す。
    <{/if}>
    


 この方法なら、DBテンプレートの方への追加は全て同じ記述で行けますし、記述が短いことからモジュールアップデートの際のテンプレート編集の際にも、見通しが良くなります。
 なお、もちろんxoops Cube Legacyでも、同様の方法で携帯対応レンダーに携帯対応用テンプレートを使うことが可能です。

元ネタ

 xpWiki携帯対応で、テーマ下テンプレートは