MobileHack

提供: GeeklogJpWiki

目次

Geeklogの携帯対応ハック

最新のこころみは、dengenさんによるmobile_xhtml や im-ltdさんによるiPhoneに対応したtouchです。


日本語版標準パッケージ組み込み済みハック

日本語版標準パッケージ20061121版以降には,バージョン0.1がすでに組み込まれています。 0.2になり,セッションが切れる不具合を大幅に改善し,その他タグの許可設定など多数機能アップしました。0.3になり,画像表示方法など,さらに機能アップしました。

GeeklogサイトがPC用URLと同じURLのまま、携帯4キャリアからアクセスできます。

  1. 携帯からアクセスすると、自動的に携帯用のページを生成します。
    1. 標準インストールでは文字エンコードがUTF-8ですが、携帯で読めるShift JISに変換されます。
    2. 携帯では対応していないtableタグなどを出力しません。
  2. 携帯からログインできます。
    1. DocomoなどCookieに対応していない端末のためにCookieなしでセッション管理を行います。
  3. 携帯から記事の投稿、閲覧ができます。
  4. 携帯から掲示板(Forum)の投稿、閲覧ができます。

これらの機能はクライアントのUser Agentによって携帯電話だと判定した場合にだけ有効になります。通常のブラウザからアクセスした場合は今までどおりのページが表示されます。

制限事項

  1. 左右のブロックは一切表示されません。携帯だと認識した時点で、自動的に左右のブロックを表示させないテーマである「mobile」に切り替えるためです。
  2. そのため、管理者メニューブロックは表示されません。各種管理機能は通常のブラウザで行ってください。あるいは、管理者のみ閲覧できるモードで記事か静的ページでコンテンツを作成して、管理者画面へのリンクを作成しておく必要があります。

インストール方法

該当のファイルをアップロード、または変更を加えてください。 なお、データベースの修正はありませんので、Geeklogのインストール手順(/admin/install/install.php)を行う必要はありません。 詳しくは開発サイトをご覧ください。

修正および新規ファイル

<private>/system/custom/custom_cellular.php 差し替え
<private>/system/lib-sessions.php 差し替え
<public_html>/layout/mobile/*.* 差し替え

<private>/system/lib-custom.php

(日本語版ではすでに組み込まれています。)

以下の行を追加します。

//@@@@@ ケータイ対応
require_once('custom/custom_cellular.php');


<public_html>/lib-common.php

(日本語版ではすでに組み込まれています。)

変更前:

function COM_refresh( $url )
{
    return "<html><head><meta http-equiv=\"refresh\" content=\"0; URL=$url\"></head></html>\n";
}

変更後:

// this file can't be used on its own - redirect to index.php
function COM_refresh( $url )
{
    if( function_exists( 'CUSTOM_refresh' )) {
        return CUSTOM_refresh( $url );
    } else {
        return "<html><head><meta http-equiv=\"refresh\" content=\"0; URL=$url\"></head></html>\n";
    }
}


注意事項

通常のブラウザから携帯用のテーマであるmobileを選択してしまうと、ブロックが表示されないため、ほかのテーマに変更することができなくなります。この場合は http://サイト名/usersettings.php?mode=preferences をブラウザのアドレスバーに入力してテーマを変更してください。

PC用・携帯用 コンテンツの分岐

ケータイ用、PC用のコンテンツを記述可能。以下のように特別なHTMLコメントを使ってケータイ専用/PC専用のコンテンツを記述することができます。

 <!--mobile_only
   <p>ケータイからのアクセスですね。</p>
 /mobile_only-->
 <!--not_for_mobile-->
   <p>PCからのアクセスですね。</p>
 <!--/not_for_mobile-->

その他のハック

開発者:UnderDone

携帯電話での電話番号タグに対応する方法が公開されました。

携帯電話での電話番号タグに対応する方法

個人用ツール