LIQUID DESIGN Tech Blog

OpenPNE をスマートフォンで使うための設定

OpenPNE をスマートフォンで使うための設定について紹介します。
openpne_sp_cfg.png

デフォルト設定

OpenPNE 2、OpenPNE 3 とも、デフォルトの設定では、
スマートフォン(iPhone、Android)で閲覧した場合、パソコン版のテンプレートが表示されます。
しかし、スマートフォンでの閲覧は想定されていない(2011年8月現在)ため、いくつかの問題が生じます。そのため、スマートフォンで閲覧できるようにするための設定を紹介します。

パソコン版を使用する設定

デフォルト設定のままパソコン版を使用する場合、
OpenPNEでは携帯メールのドメイン名が定義されているため、
スマートフォンで携帯メールアドレス(@docomo.ne.jpなど)を使用している場合には、
チェックに引っかかり新規登録などができません。

ドメイン設定

下記ファイルでドメイン名がリストされているため、リストを削除(コメントアウト)することで、
チェックが無効になります(この設定を参照するもの全てに影響が出ます)。

OpenPNE 2: webapp/init.inc
OpenPNE 3: lib/config/config/mobile_mail_domain.yml

テンプレート

OpenPNE をCSSで簡単にiPhone(スマートフォン)対応化する方法
をご覧ください。

携帯版を使用する設定

スマートフォンで、携帯版のテンプレートが表示されるようにするには、下記設定が必要です。
パソコン版テンプレートの場合、iPhoneでは写真のアップロードができない(iPhoneの仕様。androidは可能。)ため、携帯版テンプレートにすることで、メール投稿により写真のアップを可能にすることができます。

ユーザーエージェント(User-Agent、UA)

OpenPNEではユーザーエージェントで携帯端末かどうかを判別しています。
スマートフォンのブラウザでは携帯と判別されないため、下記チェックをfalse(無効)にします。

OpenPNE 2: config.php
// 携帯版でUser-Agentのチェックをするかどうか
define(‘CHECK_KTAI_UA’, false);

OpenPNE 3: ??

IPアドレス帯域

また、OpenPNEではIPアドレス帯域でも携帯かどうかを判別しています。
スマートフォンが使用するIPアドレス帯域は、携帯とは異なる場合があるため、携帯と判別されません。
下記ファイルに、各キャリアのスマートフォン用IPアドレス帯域を追加することで、携帯と判別されるようになります。

OpenPNE 2: webapp/lib/ktaiIP.php
OpenPNE 3: lib/config/config/mobile_ip_address.yml

NTTドコモ: spモードサービスで利用するIPアドレス帯域
ソフトバンク: SoftBank スマートフォンからインターネット経由でウェブサーバにアクセスする際、ウェブサーバ側に通知される送信元のIPアドレス
au: ??

参考: OpenPNE 携帯電話 IP アドレス帯域リスト
※各キャリアのIPアドレス帯域は不定期に変更されます。
※IPアドレス帯域チェック自体をOFFにすることも可能ですが、セキュリティ上推奨されません。
※Wi-Fi接続では携帯と判別されません。

この記事を書いた人
LIQUID DESIGN のサービスに関するデザインや技術情報を発信します。
SNSでフォローする