SEO SIMPLE PACK(以下、SSP)は、WordPressテーマ「SWELL」の開発元である株式会社LOOSが無料で配布しているSEOプラグインです。タイトルタグ、メタディスクリプション、canonical、noindex、OGPを、設定画面と記事ごとの入力欄で管理できます。
株式会社アマノートは、自社サイトと運営メディアのWordPressでSSPを使っています。本記事では、設定画面で確認したい初期値と記事ごとの設定方法に加えて、SSP 3.7.0のソースコードと実際の出力で確かめた「見落としやすい仕様」を3つ紹介します。
- SSPが出力するタグと、設定する場所
- インストール直後の初期値で確認したい項目
- ページ送りのcanonicalが1ページ目を向く仕様と、その直し方
- REST APIやllms.txtのプラグインと組み合わせるときの注意点
SEO SIMPLE PACKで設定できること
SSPが出力するのは、主に次のタグです。管理画面のメニュー名は「SEO PACK」で、その下に「一般設定」と「OGP設定」があります。
| 出力するもの | 内容 | 設定する場所 |
|---|---|---|
| タイトルタグ | ページの種類ごとの形式を決め、記事ごとに上書きできる | 一般設定/記事の編集画面 |
| メタディスクリプション | 同上 | 一般設定/記事の編集画面 |
| canonical | 自動で生成し、記事ごとに上書きできる | 記事の編集画面 |
| robots(noindexなど) | ページの種類ごとの初期値を決め、記事ごとに上書きできる | 一般設定/記事の編集画面 |
| OGP | SNSでシェアされたときのタイトル・画像 | OGP設定 |
| 所有確認のメタタグ | Google・Bing・Baidu・Yandexの認証コード | 一般設定の「ウェブマスターツール」 |
| Googleアナリティクス | 計測タグ | 一般設定の「Googleアナリティクス」 |
XMLサイトマップを作る機能はありません。WordPress本体が出力する /wp-sitemap.xml を使うか、サイトマップ用のプラグインを別に入れます。サイトマップの考え方は「XMLサイトマップとは」で解説しています。
SEO SIMPLE PACKの初期設定で確認する項目
「一般設定」には、基本設定・投稿ページ・タクソノミーアーカイブ・その他アーカイブ・Googleアナリティクス・ウェブマスターツールの6つのタブがあります。インストール直後の初期値は次のとおりです(3.7.0のソースコードで確認)。
| ページの種類 | 初期値 | 見直しを考える場面 |
|---|---|---|
| 投稿・固定ページ | インデックスさせる | 個別に外したい記事は、記事ごとにnoindexを選ぶ |
| カテゴリー・タグの一覧 | インデックスさせる | 記事が1〜2本しかないタグが大量にある |
| 著者の一覧 | noindex | 著者ページを、執筆者や監修者の経歴を示すページとして使う |
| 日付の一覧 | noindex | 多くのサイトでは初期値のままでよい |
| メディア(添付ファイル)ページ | 使用しない(画像ファイルへ転送) | 多くのサイトでは初期値のままでよい |
| カスタム投稿タイプの一覧 | noindex | 事例や商品の一覧を検索結果に出したい |
| 検索結果・404ページ | 常にnoindex | 設定では変えられない |
タイトルとディスクリプションの形式は、%_page_title_%(記事タイトル)、%_site_title_%(サイト名)、%_sep_%(区切り文字)などの記号を組み合わせて決めます。投稿ページのタイトルは、初期値では「記事タイトル・区切り文字・サイト名」の順に並び、ディスクリプションは本文の冒頭から作られます。本文の冒頭が導入の挨拶などで始まる記事は、記事ごとにディスクリプションを書いたほうが、検索結果での見え方を管理できます。
記事ごとにSEO SIMPLE PACKを設定する方法
投稿と固定ページの編集画面の下部に、SSPの設定欄が表示されます。カテゴリーやタグの編集画面にも、同じ欄があります。
robotsタグを選ぶ
「デフォルト設定のまま」「index,follow」「noindex」「nofollow」「noarchive」「noindex,nofollow」から選びます。通常は「デフォルト設定のまま」にしておき、一般設定の初期値に従わせます。
タイトルとディスクリプションを書く
空欄なら、一般設定で決めた形式が使われます。入力すると、その記事だけ入力した文言に置き換わります。
canonical URLを指定する
空欄なら、SSPがそのページのURLを自動で出力します。内容が重複する記事を1本にまとめたいときなどに、正規にしたいURLを入れます。canonicalの役割は「canonicalタグとは」で解説しています。
SEO SIMPLE PACKで見落としやすい3つの仕様
ここからは、当社がSSPのソースコード(3.7.0)を読み、実際に出力されたHTMLと突き合わせて確かめた仕様です。いずれも設定画面を見ただけでは気づきにくい点です。
ページ送りのcanonicalが1ページ目を向く
当社のサイトでブログ一覧の2ページ目(/category/blog/page/2/)を確かめたところ、canonicalが1ページ目(/category/blog/)を指していました。SSPのcanonicalを作る処理はページ番号を見ていないため、カテゴリー・タグ・著者・日付の一覧やトップページの2ページ目以降は、すべて1ページ目のURLになります。<!--nextpage--> で分割した記事の2ページ目も同じです。
WordPress本体は、一覧ページにはcanonicalを出さず、分割した記事の2ページ目以降にはページ番号の付いたURLを出します。SSPはこの本体の出力を止めて自前のcanonicalに置き換えるため、SSPを入れた時点で挙動が変わります。
Googleは、ページ送りの1ページ目をcanonicalにせず、各ページにそれぞれのcanonicalを付けるよう案内しています(Google 検索セントラル)。2ページ目以降が1ページ目の重複として扱われると、一覧の奥にしかリンクがない古い記事が、見つけられにくくなるおそれがあります。なお、SSPは rel="prev" rel="next" を出力しませんが、Googleはこのタグをすでに使っていません。
設定画面に、この挙動を変える項目はありません。記事やカテゴリーごとのcanonical入力欄は、2ページ目以降にも同じURLを出すため、解決になりません。直し方は次の見出しで紹介します。
記事ごとの設定はREST APIから読み書きできない
記事ごとの設定は、次のカスタムフィールドに保存されます。
| 設定欄 | カスタムフィールドのキー |
|---|---|
| robotsタグ | ssp_meta_robots |
| タイトル | ssp_meta_title |
| ディスクリプション | ssp_meta_description |
| canonical URL | ssp_meta_canonical |
| OGP画像 | ssp_meta_image |
これらはREST APIに登録されていないため、REST APIで記事を取得しても値は返らず、送っても保存されません。当社は、複数の記事のディスクリプションをまとめて書き換えるときにREST APIを使うため、次のようなコードでキーを登録しています。
add_action( 'init', function () {
foreach ( array( 'ssp_meta_title', 'ssp_meta_description' ) as $key ) {
register_post_meta( 'post', $key, array(
'show_in_rest' => true,
'single' => true,
'type' => 'string',
'auth_callback' => function () {
return current_user_can( 'edit_posts' );
},
) );
}
} );
なお、REST APIで本文だけを更新しても、SSP側の保存処理は動かないため、入力済みのタイトルやディスクリプションが消えることはありません。
llms.txtのプラグインにディスクリプションが渡らない
llms.txtを自動で作るプラグイン「Website LLMs.txt」は、記事の説明文をYoast SEOやRank Mathから取り込みますが、SSPには対応していません(8.6.1で確認)。SSPでディスクリプションを書いていても、llms.txtには本文の冒頭を切り詰めた文が入ります。日本語のサイトでは20字前後で切れ、説明として読めない長さになります。
当社の運営メディアでもこの状態になっていたため、プラグインのフィルターフックでSSPのディスクリプションを渡すようにしました。llms.txtとプラグインの選び方は「LLMO対策に使えるプラグイン」で紹介しています。
ページ送りのcanonicalを各ページのURLにする方法
SSPには、出力するcanonicalを書き換えるためのフィルターフック ssp_output_canonical が用意されています。一覧の2ページ目以降で、canonicalをそのページ自身のURLにする例です。パーマリンク設定が「投稿名」などで、URLが /page/2/ の形になるサイトを想定しています。
add_filter( 'ssp_output_canonical', function ( $canonical ) {
if ( ! $canonical || is_singular() ) {
return $canonical;
}
$paged = (int) get_query_var( 'paged' );
if ( $paged < 2 ) {
return $canonical;
}
global $wp_rewrite;
return user_trailingslashit( trailingslashit( $canonical ) . $wp_rewrite->pagination_base . '/' . $paged, 'paged' );
} );
サイト全体の出力が変わるコードなので、バックアップを取ってから、テーマのfunctions.phpかコードスニペット用のプラグインに追加します。追加したら、2ページ目のHTMLでcanonicalが /page/2/ 付きのURLになっているかを確かめます。Googleの判断に反映されるまでは時間がかかるため、数週間おいてからSearch ConsoleのURL検査で、Googleが選んだcanonicalも確認します。確認の手順は「リライト後の再クロールを確認する方法」が参考になります。
SEO SIMPLE PACKに関するよくある質問
SWELL以外のテーマでも使えますか?
使えます。WordPress.orgで配布されているプラグインで、SWELL専用ではありません。SWELLと同じ開発元のため、SWELLのサイトで使われることが多いプラグインです。
Yoast SEOなど、ほかのSEOプラグインと一緒に使えますか?
同じタグが二重に出力されるため、SEOプラグインはどれか1つにします。SSPには、ほかのプラグインから設定を取り込む機能がありません。乗り換えるときは、記事ごとに入力したタイトルやディスクリプションが移らない点に注意します。
Bingウェブマスターツールの所有確認にも使えますか?
使えます。一般設定の「ウェブマスターツール」タブにBingの認証コードを入れると、所有確認用のメタタグが出力されます。Googleについても同じ欄があります。
まとめ:SEO SIMPLE PACKは初期値と仕様を確かめてから使う
- SSPはタイトル・ディスクリプション・canonical・robots・OGPを管理する。XMLサイトマップの機能はない
- 初期値では著者・日付の一覧がnoindex、メディアページは使わない設定になっている
- 一覧の2ページ目以降のcanonicalは1ページ目を向く。変えるにはフィルターフック
ssp_output_canonicalを使う - 記事ごとの設定はREST APIに出てこない。llms.txtのプラグインにも渡らない
株式会社アマノートは、WordPressサイトのSEO設定の点検から記事の改善まで、継続して支援しています。サイトの設定が検索エンジンにどう読まれているかを確かめたい場合は、SEO/LLMO顧問サービスからご相談いただけます。


