WordPress

WordPressで記事タイトルからサイト名を除去する方法!コピペでOK!

パソコン男性

WordPressでは使用するテーマにもよりますが、通常個別記事のタイトルは「○○○○○○○○○○○○○○○○|△△△△ブログ」のようになります。

記事タイトルの最後に「|△△△△ブログ」とサイト名が付加されるんですね!

これはおそらくSEO効果を狙ったもので、標準でサイト名が付加される仕様になっていますが、サイト名が付いて欲しくない場合もあると思います。

サイト名がSEO効果を狙ったタイトルを狙ったものではなく、例えば、トレンドアフィリエイトを実践している「トレンド速報ブログ」というタイトルだったとしましょう。

「トレンド」で検索してくる人はまずいませんし、記事タイトルに付加されていてもまず意味のない文字列です。

今回は、WordPressで記事タイトルからサイト名を除去する方法を紹介します。

当記事が参考になる人

当記事が参考になる人

「All in One SEO Pack」のプラグインを利用している方は非常に多いです。

「All in One SEO Pack」の設定で個別記事でサイト名を表示しないようにすることができますが、「All in One SEO Pack」を使うべきではない人もいます。

最近のアフィリエイターに人気のテーマは、「JIN」、「SANGO」、「STOKE」、「THOR」、「AFFINGER」等です。

当ブログでもJINを使用しています。

実は、JINは「All in One SEO Pack」との相性が悪く、非推奨のプラグインとなっています。

そのため、「All in One SEO Pack」を利用しないほうが良いのです。

当記事では、「All in One SEO Pack」を使用せずに、記事タイトルからサイト名を除去したい人向けの記事となります。

※子テーマを使っていることを前提としています!

WordPressで記事タイトルからサイト名を除去する方法!

WordPressで記事タイトルからサイト名を除去する方法!

「All in One SEO Pack」を使用せずに、記事タイトルからサイト名を除去する方法は色々ありますが、手っ取り早いのが、functions.phpに関数を追加することです。

例を紹介します。

ここでは、JINを例に紹介しますね!

JINの親テーマのfunctions.phpでは、このようなコードがあります。

上記の部分が、記事タイトルを編集している部分です。

この関数全体をコピーして少し書き換えて、子テーマのfunctions.phpに記述すればいいのでは?と思うかもしれませんが、それはできません。

子テーマは親テーマの内容を上書きしますが、functions.phpについては「子テーマ→親テーマ」の順に処理されるため、親の方が優先されてしまいます。

子テーマは親テーマの内容を上書きしますが、 functions.php だけは「子→親」の順で処理されるため、親子で同じアクションフックを使うと親の方が優先されてしまいます。

だからと言って、親テーマの方を直接書き換えたりはしたくありませんよね。

大丈夫です!

以下のようにすると、親テーマを編集することなく、子テーマのみの記述で行けます!

個別記事のタイトルからサイト名を除去

親テーマからwp_jin_title_custom()関数をコピーしてきて関数名、内容を書き換えます。

JINを使用している方は、上記のコードをコピーして、子テーマのfunctions.phpに追記するだけでOKです。

固定ページ、投稿記事の場合、サイト名を付加しないようにしています。

そして、新たにwp_jin_title_custom()関数を作り、after_setup_themeというアクションフックで実行しています。

set_after_parent_theme()関数は全てのテーマが読み込まれた後に処理されるアクションフックです。

set_after_parent_theme()関数の中で、remove_action()で親テーマの出力結果を削除し、子テーマの関数を実行します。

それほど難しくないですね!

ここでは固定ページ、記事の場合のみサイト名を除去するようにしましたが、お好みによって、各if文の分岐を編集してください。

「.$sep.$site_name」を除去するだけです。

JIN以外でも、当記事で紹介した考え方でいけるはずです。

if文の条件分岐に使える関数

if文の条件分岐に使える関数

上で紹介したのは、固定ページ、投稿記事の場合に、タイトルにサイト名を付加しないようにするコードですが、知っておくとさらに自分好みに設定ができる条件を紹介します。

if文の条件次第であなたのやりたいようにできます。

if文の条件分岐に使える関数をいくつか紹介します。

この辺りの関数を使うことができれば、あなた好みにカスタマイズできるのでは?と思いますので、ぜひ参考にしてください。

関数 説明
is_single() 個別投稿の場合
is_page() 固定ページの場合
in_category(‘X’) カテゴリーID=Xのカテゴリーの場合
is_home() || is_front_page() トップページの場合

「トップページ以外の場合」としたいときは、「!is_home() && !is_front_page()」とすれば、「トップページ以外の場合」とすることができますので、色々試してみてください。

くれぐれもfunctions.phpを編集するときはバックアップを忘れずにし、いつでもから編集してくださいね!