グローバルナビゲーションだけ文字化けしてしまう
-
初心者です。教えていただきたいのですが、Business Proというテーマを使って、サイトを作り始めたのですが、グローバルナビゲーションのメニューを変更しようとしてメニューを保存ボタンを押すと日本語が文字化けしてしまいます。
子テーマを使って
/*
Theme Name: business-pro_child
Template: business-pro
Description:business-proの子テーマです
*/
@charset “UTF-8”;
@import url(‘../business-pro/style.css’); /*親テーマのスタイルシートを読み込み*/
という設定にしてあるので、文字はUTF-8のはずなのですが…
どこを修正すればいいのでしょうか。
-
という設定にしてあるので、文字はUTF-8のはずなのですが…
どこを修正すればいいのでしょうか。チャイルドテーマを作成する時に、エディタで utf-8 で BOMなし で、保存していますか?
windowsのnotepad等お使いではないですか?
過去スレッドで似た症状がありました。ご参考まで。
nobitaさん、アドバイスありがとうございます。
使用エディタは、さくらエディタでutf-8で保存しています。
BOMなし、ありの意味はググってわかったのですが、BOMなしかどうかを
さくらエディタ上で判別する方法がわかりません。
ちなみに、チャイルドテーマでなく、テーマの本物でやっても文字化けはしてしまいます。ikaringさん、ありがとうございます。
本当にもうしわけありません。超初心者なもので、リンク先にとんで
読みましたが、php.iniとは何のことやらさっぱりわかりません。
http://tweeeety.hateblo.jp/entry/20121218/1355802787
を読んでも、
phpを書こうとしてるファイルでphpinfo関数を呼び出す
(できればなるべく最初のほうで)
phpinfo();←これだけ
という方法は記載されていますが、該当するphpファイルも場所も
見当がつかないので、ご教授いただけたら幸いです。さくらエディタ上で判別する方法がわかりません。
すみませんが、使っていないので、さくらエディタに聞いてみてください。
チャイルドテーマでなく、テーマの本物でやっても文字化けはしてしまいます。
インストールして、メニューの削除 作成を行ってみましたが、特に問題なく更新できました
デフォルトのテーマで、問題が無い事を確認してください。
確認できたら、
header.phpの、businesspro_nav()を、wp_nav_menu()に置き換え
businesspro-functions.php の 22行目あたりから始まるCustom Menus Function
のフィルタ、アクションadd_filter() add_action()をコメントアウトして、どういう結果になるかだと思います。
phpinfoは下記内容のファイルをひとつ作ってしまえばいいです。名前はなんでもいいんですが、たとえばinfo.phpとして保存して、サーバーのルートにアップロードしてください。
<?php phpinfo(); ?>
ブラウザから、http://ドメイン/info.phpとしてアクセスすると表示されます。
php.iniの場所の確認が済んだらこのファイルは削除しておいてください。php.iniについては、サーバーによってはサーバーの管理画面から編集できることもあります。
nobitaさん、さくらエディタ、BOMなしになっていました。
header.phpの、businesspro_nav()を、wp_nav_menu()に置き換え
businesspro-functions.php の 22行目あたりから始まるCustom Menus Function
のフィルタ、アクションadd_filter() add_action()をコメントアウト
したところ、メニュー表示が●付で縦になり、文字化けは変わらずです。
ちなみに自宅で試して同じテーマでサイトをつくってみたところ
文字化けしません。自宅のレンタルサーバはろりぽっぷ、
会社はCPIサーバーを使っているのですが、それが原因でしょうか?ikaringさん、おかげさまで、php.iniの場所はわかりました。
CPIサーバーの管理画面でphp.iniのコードを見ても
mbstring.internal_encoding = UTF-8
になっているのですが。
ほかに原因があるのでしょうか。先に掲載した過去スレで下記のようになっていますが、mbstring.encoding_translationの設定はいかがでしょうか。
結局、php.iniの mbstring.encoding_translation が原因でした。
旧:mbstring.encoding_translation = On
↓
新:mbstring.encoding_translation = Off会社はCPIサーバーを使っているのですが、それが原因でしょうか?
テーマに由来するのか、コアの出力なのか、プラグインのフィルタやアクションの影響を受けているのか、問題の切り分けをする必要があると思います。
メニューの表示に関係するようなプラグイン、何か特別追加しているjavascript等はありませんか?、または、キャッシュをするようなプラグイン等は、使っていませんか?
ikaringさん、php.iniの mbstring.encoding_translationをoffに変更しました。が、
phpiniの場所は
/usr/local/etc/php_conf_5.5.16/phpini
とわかっているのですが、FFFTP上に/usr/local/etc/php_conf_5.5.16というところが
ないので、ファイルをどうやってそこにあげたらいいのかわからないです。
申し訳ありません。nobitaさん、はじめたばかりなので、いまのところ何も追加したプラグインとかはありません。
「メニューの保存」をクリックさえしなければ、ふつうに日本語表示はされています。でもこれだと、すべての固定ページが表示されてしまうし、順番も違うので、悩んでおります。CPIサーバーの下記ページ内、4.php.ini ファイルの作成・アップロードの項に手順が書かれています。ご利用のプランが該当するかどうかわかりませんが、詳細はサーバー会社にお問い合わせされる方が間違いないかと思います。
メニューを保存した場合と、保存しない場合では、使用されている関数が異なります。
このテーマの場合は、businesspro-functions.phpの
45行目 businesspro_nav_fallback() という関数が、メニューが作成されていない場合に使われる関数です。
この関数内で、 wp_list_pages()という関数が使用されていますので、
を参照して、引数を変更すると、非表示にするページの指定などができます。
ところで、
メニューを保存して、文字化けした状態で、ウィジェットのメニューでサイドバーにメニューを表示しても、同じように文字化けしますか?
文字化けするメニューというのは、どんなメニューを作った場合に文字化けしていますか?
管理パネルや、投稿 タイトル コメント アーカイブは、一切文字化けなしで動作していますか?
- トピック「グローバルナビゲーションだけ文字化けしてしまう」には新たに返信することはできません。