WordPressのページタイトルにサイト名が2つ入ってしまう問題を修正

WordPressのページタイトルにサイト名が2つ入ってしまう問題を修正

ずっと前から気になっていた(=ずっと放置していた)、ページタイトルにサイト名が2つ入ってしまう「タイトルタグの重複」を修正しました。

問題

想定:ONDA V701が絶賛文鎮中 | 徒労日記

          ↓

問題:ONDA V701が絶賛文鎮中徒労日記 | 徒労日記

タブブラウザなら長すぎて隠れてしまうので見るだけなら影響は小。ただしCreate Link – ChromeMake Link :: Add-ons for Firefoxでリンクを取得する場合や、Tweetボタンからツイートして貰う場合に顕著化するため非常に格好悪い。と思っては居たのに面倒で今まで手で削除してました・・・

どうやら今使っているWPテーマ「Evoque: Dark WordPress Theme – ByPeople」に起因する固有の問題だったようです。基本的に他のテーマでは起きませんが、作者さんの記述次第では他のテーマでも起きている事かも。

調べる

最初にクサそうなheader.phpをチェック

<title><?php wp_title( '-', true, 'right' ); ?></title>

これしか書いてませんでした。シンプルにwp_titileだけで表示してみましたが、この時点ですでに「…徒労日記|徒労日記」になっちゃってる。wp_titleをどこかでフックしている模様。

サーバのLinuxコンソールにログインし、テーマ(今回はEvoque)ディレクトリにて全文検索します。

[xxxxx evoque]$ find ./ -type f -print | xargs grep wp_title
./functions.php:/* Filters wp_title to print a neat <title> tag. ----------------------------*/
./functions.php:function themememe_wp_title( $title, $sep ) {
./functions.php:add_filter( 'wp_title', 'themememe_wp_title', 10, 2 );
./header.php:   <title><?php wp_title( '-', true, 'right' ); ?></title>

やっぱりheader.php以外はfunctions.phpしか無いようです。

修正

あとは

add_filter( 'wp_title', 'themememe_wp_title', 10, 2 );

をどうするか。

なんだかポチポチ調べるとWordPress4.xからwp_titleはもう使わない、みたいな記事を発見。

という事で262行目をコメントアウト&add_theme_supportを追加で直りました。

// add_filter( 'wp_title', 'themememe_wp_title', 10, 2 );
add_theme_support( 'title-tag' );

これでスッキリ.。゚+.(・∀・)゚+.゚

Evoqueも古いし改版されてないので手を入れて使わないとですね。
それはそうとSUVを買えといわれたら自分はRange Rover Evoqueが欲しいです。

 

コメントを残す