grayf0x
メンバー
3 years前の投稿 #
WordPress 2.5 にて Ktai Style 1.30 を利用しています。
同じサーバ (XREA) でマルチドメインを利用して複数ブログを運営していますが、特定サイトのみ携帯端末からのアクセス時に真っ白なページが表示される現象を確認しました。
Firefox2 の Useragentswitcher を使用して調査したところ、生成されるHTMLの <title> タグ内にある日本語が文字化けしていることがわかりました。
念のためブログのタイトルを半角英数のみに変更したところ正常に表示されましたので、文字コード変換に関する問題かと思います。
なおバージョン 1.21 では同様の問題は発生しませんでしたので、現在はバージョンを落として正常利用しています。
同様の症状に悩んでいる方はとりあえずバージョンを落とし、次期バージョンでの修正を待つのがよろしいかと思います。
Firefox2 の Useragentswitcher を使用して調査したところ、生成されるHTMLの <title> タグ内にある日本語が文字化けしていることがわかりました。
念のためブログのタイトルを半角英数のみに変更したところ正常に表示されましたので、文字コード変換に関する問題かと思います。
どんな URL でアクセスしても症状が出ますか? (特にシングルポスト)
あと、サイト名は具体的にどんな名前ですか? (Shift_JIS でバックスラッシュを含む文字かどうかが気になるところ)
1.21 と 1.30 では、デフォルトテーマをそのまま使っている場合は、title 回りのコードは同じです。テーマを改造して ks_wp_head() を有効にしている場合は動作が違ってくるかもしれません。そのへんはいかがでしょうか?
あと、念のため、サーバーの Apache, PHP, MySQL のバージョンを教えてください。
grayf0x
メンバー
3 years前の投稿 #
サイト名には、2バイト目に 5C を含む文字は使用していません。
またカテゴリへのリンク等、一部パーマリンクも正常に出力されませんでした。
※こちらの原因は調べずじまいでしたが。
WordPress 側での設定を何らいじらず Ktai Style をバージョン 1.21 に落としたところ、文字化けとパーマリンクの両問題とも解決しました。
サーバのバージョンは以下の通りです。
Apache 1.3.37
PHP 5.1.6
MySQL 5.1.11-beta
サイト名には、2バイト目に 5C を含む文字は使用していません。
いやだから、「具体的なサイト名」を書いていただきたかったのですが……。2バイト目に 0x5c が来るか来ないかは気になる点の1つですが、他の原因も十分考えられるため、その問題となっているサイト名そのものがぜひとも必要です。「不具合を再現させる」ためには、不可欠なことですので、ご協力をお願いします。
実のところ、一番欲しいのは、「文字化けした状態での HTML ソースコード」なのですが。
すでに書いた通り、バージョン 1.21 と 1.30 では、ks_title() 回りのコードは同じなので、バージョンダウンで正常動作するということは、非常に不可解です。ソースコードを見ると分かりますが、wp_title() の出力をほぼそのまま流用する仕組みなので、「Ktai Style の不具合」と言われても困ってしまいます。
またカテゴリへのリンク等、一部パーマリンクも正常に出力されませんでした。
これも謎ですね。ますます、その異常動作しているサイトを直接確認したいところです。パーマリンクは get_permalink() の出力から、ホスト名部分を削除するのですが、その削除がよくない可能性があります。もしくは、パーマリンクに & を含む場合、& のかわりに & を使うように変更しています (旧端末は & を理解しないため)。
ありゃりゃ、そもそも Ktai Style の動作条件に適合していません。
PHP 5.1.6
Ktai Style は公式には PHP 5.2.0 以降のみ対応です。「PHP 5.1.6 でも動く」という報告はあるんですが、それは「たまたま」だと思います。
実のところ、PHP5.0.x, PHP 5.1.x は PHP として使うべきではないバージョン (サポート終了していて PHP 5.2.x にアップグレードが必要) なので、サーバー管理者に相談の上、PHP 5.2.5 への更新をお願いしてみてください。
別トピックで出てきたのですが「All in One SEO Pack とコンフリクトする」のが原因かもしれません。
AIOSP を使用中止するか、上記リンク先にある対策コードを入れてみてください。