functions.phpでHTMLを置換したい(フィルターフックうまくいきません)
-
functions.phpでHTMLを置換したいと思っています。
具体的な目的としては、自作のカスタム投稿ページの時だけ</title>や</h1>を○○</title>や○○</h1>としてテキストを追加したいのです。http://web-pc.net/wp010
を参考し、以下のように記述したのですが、文字列は置換される(’変更前’ => ‘<p>変更後</p>’)もののHTMLは置換されません。文字列にHTMLは追記できますが、HTMLに文字列の追記ができません。function change_any_texts($text){ if(is_singular('custom')) { $replace = array( '</h1>' => 'aaa</h1>', '変更前' => '<p>変更後</p>' ); $text = str_replace(array_keys($replace), $replace, $text); return $text; }else{ } } add_filter('the_title', 'change_any_texts');
※customはカスタム投稿名です
テーマは自作ではなく、子テーマで作成しているのでsingle.phpは触らないようにと思っています。
また、2000ほどある投稿の</title>や</h1>で囲まれた文字列を変更するのが目的で、その文字列に共通点はなく、手作業で2000回やるのは困難なので、</title>や</h1>の直前にテキストを追記するのが良いと考えました。(追記するテキストはすべて同じです。市区町村のタイトルに対し○○支店、△△支店、□□支店・・・というようなイメージです。その 支店 を追記したいのです。)
お知恵をお貸しいただけると幸いです。
不足している情報などございましたら、遠慮なくご指摘ください。
何卒よろしくお願いいたします。※
wordpressバージョン 4.9.6 、対象のテーマは cocoon です。
4件の返信を表示中 - 1 - 4件目 (全4件中)
4件の返信を表示中 - 1 - 4件目 (全4件中)
- トピック「functions.phpでHTMLを置換したい(フィルターフックうまくいきません)」には新たに返信することはできません。