質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

置換

置換とは文字列中の特定の文字に対して、別の文字列に置き換えることを指します。

Q&A

解決済

3回答

1744閲覧

php ヘッダー、サイド、フッターを含むhtml全体の文字列の置換

tmk110

総合スコア11

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

置換

置換とは文字列中の特定の文字に対して、別の文字列に置き換えることを指します。

0グッド

0クリップ

投稿2019/06/11 09:12

編集2019/06/11 10:07

前提・実現したいこと

WordPressでWebサイトを作っています。日本語のテーマを使っているのですが英語のサイトを作りたいので、生成されるhtml内の日本語メッセージを英語に変換しようとしています。例えば、検索窓内の「キーワードを入力」を「Search」にしたいです。str_replaceを使って試してみましたがうまくいきません。

お力を貸していただけないでしょうか?

発生している問題・エラーメッセージ

エラーメッセージ

該当のソースコード

ソースコード

試したこと

子テーマのfunctions.phpに以下を追加しています。

function after_all() {

function replace_content($content)
{
$content = str_replace('キーワードを入力', 'Search',$content);
return $content;
}
add_filter('the_content','replace_content');

}
add_action( 'after_setup_theme', 'after_all');

投稿文の本文内の文字列の置換は上記のコードでできるみたいなのですが、ヘッダー、サイド、フッター部分の文字列は変更できませんでした。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2019/06/11 09:45

「WordPress」をタグに追加しておいてください。
tmk110

2019/06/11 10:08

ありがとうございます。
退会済みユーザー

退会済みユーザー

2019/06/11 13:16

多言語化プラグインを使うことは検討しましたか? 「WordPress 多言語化」でネット検索するとノウハウ記事がいくつか見つかるのですが、どうして自力対応に至ったのでしょう?
tmk110

2019/06/12 01:35

アドバイス、ありがとうございます。多言語化のプラグインは、Bogo, Polylangなど、いくつか試したのですが、同じくヘッダー、サイド、フッター部分の文字列を変更できませんでした。日本語にしたい部分が数か所だったのと、プラグインを最小限にしたかったので、自力対応しようと思いました。
guest

回答3

0

ベストアンサー

できたコンテンツやメニューなどを細々と置換していくと必ず漏れが出たりするので、テーマ自体をカスタマイズして英語にしたほうが確実だと思います。

投稿2019/06/11 09:37

m.ts10806

総合スコア80765

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tmk110

2019/06/11 10:09

アドバイスありがとうございます。テーマ自体が、英語化を追加する可能性があるとのことで、一時的な解決策として考えています。
m.ts10806

2019/06/12 02:02

私の回答がベストアンサーで良かったのでしょうか。 現状進みたい方向とマッチしているようには思えませんが(最終手段として選択したということでしょうか?)
guest

0

投稿2019/06/11 11:10

KazuhiroHatano

総合スコア7802

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tmk110

2019/06/12 02:03

アドバイス、ありがとうございます。リンク先を見て試してみましたが、思うような結果は得られませんでした。
KazuhiroHatano

2019/06/12 02:39

ああ、shutdownは優先度1でwp_ob_end_flush_allってWPがバッファを全部吐き出すようにしてるから shutdownのadd_actionは優先度0でやらないとダメね
guest

0

mts10806様の仰る通り、漏れが出ても困るので、もともと英語で作られているテーマを使ってサイトを作り直すことにしました。回答頂きましたみなさま、貴重なお時間と色々アドバイスありがとうございました。

投稿2019/06/12 02:06

tmk110

総合スコア11

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問