こんにちは
ご質問の趣旨とは少し違いますが、
アクセスしてくるブラウザによって使用するテーマを変更するプラグインもあるようなので、
http://wordpress.org/extend/plugins/user-agent-theme-switcher/
そういうものを使うのが簡単だと思います。
http://www.example.com/
http://m.example.com/
一つのワードプレスから、複数のドメインで同じ表示をするのは、難しいと思います。
ワードプレスから、サブドメインなどでの、モバイル用のコンテンツの表示に関しては、
http://ja.forums.wordpress.org/topic/2330?replies=6
でJSON API プラグインと jQueryMobileを使った例が見つけられます
サブドメインで実現したいのであれば、JSONに限らず、RSSや、XML-RPC ATOMなどを使ったAPIを使う例もあるかもしれませんので、そのあたりを調べてみるといいと思います
ご返信ありがとうございます。
ガチャモバ対応ですので、XMLを取得してPHPで出力する方法も検討させて頂きます。
できればWordPressだけでどうにかしたいろことなのですが、
サブドメイン側にもWordPressをインストールし、
同一のデータベースから読み込めば表示できると思ったのですが、
wp-config.phpに以下の記述をしても「ページが見つかりません」と
エラーになってしまいました。
define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST']);
//define('WP_SITEURL', 'http://' . $_SERVER['SERVER_NAME']);
define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST']);
//define('WP_HOME', 'http://' . $_SERVER['SERVER_NAME']);
HTTP_HOST、SERVER_NAME、どちらでもエラーでした。
他に変更が必要な箇所などあるのでしょうか。
htaccessの併記部分についてもよろしくお願いします。
cappuccinoさん
他に変更が必要な箇所などあるのでしょうか。
私は使ったことがありませんが、
define('RELOCATE',true);
も、調べてみてください
http://codex.wordpress.org/Changing_The_Site_URL#Relocate_method
SITEURL やHOME で定義する値は、「WordPress のコアファイルが存在する URL」となっていますけど、その値でいいのですか?
define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST'] . '/path/to/wordpressp');
ガチャモバ対応ですので、XMLを取得してPHPで出力する方法も検討させて頂きます。
いまのワードプレスで確認したわけではありませんがFEEDはキャッシュされるので、遅延生じると思いますけど、そのあたりは、考慮済みですか?
nobitaさん、ありがとうございます。
SITEURL やHOME で定義する値は、「WordPress のコアファイルが存在する URL」となっていますけど、その値でいいのですか?
ご指摘通り、パスが抜けていました、、。
パスを追記したところサブドメイン側でも表示されました。
define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST'] . '/wp');
define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST'] . '/news');
define('RELOCATE',true);
こちらはなくても表示されました。
いまのワードプレスで確認したわけではありませんがFEEDはキャッシュされるので、遅延生じると思いますけど、そのあたりは、考慮済みですか?
そのあたりは無知でした。
試しに投稿してすぐにフィードを確認してみたところ、
反映されていましたので問題なさそうでした。
htaccessの件は自己解決しました。
単純にモバイルのリダイレクト部分を先頭に記述し、
[R]を[R, L]とすることで、次のリダイレクトを実行しないようにしています。
もっとスマートな記述があるかもしれませんが、
ソースを載せておきます。
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo|KDDI|DDIPOCKET|UP\.Browser|J-PHONE|Vodafone|SoftBank)
RewriteRule ^(.*)$ http://m.example.com/news/$1 [R,L]
# BEGIN WordPress
RewriteEngine On
RewriteBase /wp/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wp/index.php [L]
# END WordPress
とりあえず希望の動作にはなりましたので、解決済みとさせていただきます。
ありがとうございました。