【SEO SIMPLE PACK】カスタム投稿アーカイブページのディスクリプションを変更したい

WordPressのプラグイン【SEO SIMPLE PACK】を使って、

  • カスタム投稿タイプ ※2つ以上ある場合
  • アーカイブページ
  • ディスクリプション(description)

を変更したい!!

と思ったのですが、一般設定からは変更ができませんでした。

結果としては、【SEO SIMPLE PACK】が用意しているフックを使用する事で、ディスクリプションを変更できました。
※以下は2つある、カスタム投稿アーカイブページの、ディスクリプションを設定するコードです。

/**
 * カスタム投稿のアーカイブページにdescription追加
 */
function custom_meta_description($description) {
  if (is_post_type_archive('カスタム投稿タイプ名①')) {
      $description = 'ここにディスクリプションの文章が入ります。';
  } elseif (is_post_type_archive('カスタム投稿タイプ名②')) {
      $description = 'ここにディスクリプションの文章が入ります。';
  }
  return $description;
}
add_filter('ssp_output_description', 'custom_meta_description');

上記コードをfunctions.phpに記述すれば完了です!

詳細が気になる方は、以下に解説しますので、よろしければご確認ください。

使用したフック

公式サイトのFAQに以下回答がありましたので、フック【‘ssp_output_description’】を使用しました。

特定のページでの出力内容を上書きする方法は?
出力されるほとんどのタグの出力にはフィルターフックを使用していますので、add_filterで上書きが可能です。

以下のようなフックを用意しています。

‘ssp_output_title’
‘ssp_output_robots’
‘ssp_output_description’
‘ssp_output_canonical’
‘ssp_output_keyword’
などなど…

https://ja.wordpress.org/plugins/seo-simple-pack/#how%20to%20overwrite%20the%20output%20on%20a%20particular%20page%3F

一般設定で試したこと

最初に記述したコードを使用すれば、一般設定からの設定は不要です。
上記コードに辿り着くまでに、一般設定を一通り触ったので以下に記録として残しておきます。

 一般設定>その他アーカイブ>「カスタム投稿タイプ」のアーカイブページ

実はここを変更すれば、カスタム投稿タイプのアーカイブページのディスクリプションが設定できます。
しかし、投稿タイプが1つの時は良いのですが、2つ以上ある時は、2つとも同じディスクリプションの内容が出力されます。

上記のように %page_contents% に変えて、固定ページ>カスタム投稿タイプのタイトル>以下部分に入力した内容が出力されることを期待しましたが、出力されませんでした。

 試しに 一般設定>その他アーカイブ>「カスタム投稿タイプ」のアーカイブページ
のディスクリプションを、以下のように空欄にしてみましたが、やはり出力されませんでした。

一般設定>固定ページ>カスタム投稿タイプ : ⚪︎⚪︎

この項目で行けるんじゃないか!?と思うが、赤枠部分はデフォルトで%page_contents%でした。

試しに「%term_description%」に変更して、先ほどと同じように、
固定ページ>カスタム投稿タイプのタイトル>以下部分に入力しても、やはり出力されませんでした。

結果

以上の一般設定の奮闘を終え、最終的にはフックを使ってディスクリプションを、各カスタム投稿タイプ一覧ページに出力しました!

タイトルとURLをコピーしました