お問い合わせはコチラから

SEO観点 WordPressの記事スラッグを簡単に最適化するには?

サイト運営

WordPressサイトの記事を公開すると、URLにはslug(スラッグ)が含まれます。

ごちゃごちゃするのが嫌でパーマリンク設定は投稿名を選び、%post_name%となっている人がほとんどではないかとお察しします。

しかし、この%post_name%になっていると記事タイトルがそのまま入ってしまうので日本語タイトルの場合は日本語URLになってしまいます。

皆さんいちいちslugをローマ字表記に書き換えていて、どんなslugにするか頭を悩ませているのではないでしょうか?

ちなみに、このサイトは日本語タイトルをIBMのワトソンAPIで自動翻訳を掛けて自動生成しているので、奇妙奇天烈摩訶不思議なslugになっている記事が多いです。

記事のスラッグを短く自動的に設定したい

post IDを使う方法が有名

記事URLは短くしたいし、考えるのも面倒という場合にはpostIDを使って自動的に名前を付ける方法があります。

%post_id%というやつをつかって、例えば、post-%post_id%とかにパーマリンクを設定しておけば、自動的にslugが決まります。

しかし、この単純な方法だとSEO的にかなり不利なのではないかと最近思うようになりました。

post IDとカテゴリ名を組み合わせたらどうか?

でも、いちいちslugは考えたくないので、苦肉の策としてカテゴリ名を組み入れたらいいのでは?と考えました。

%category%/%post_id%にしてみる

その場合のパーマリンク設定は、%category%/%post_id%となります。

実際変更してみると、思いのほか良さそうなURLになります。

でも、ここで大きな問題に気が付きました。

カテゴリ名をslugに含めるとカテゴリ名を変更した時にリダイレクトが必要になるということです。

WordPressは記事のslugを変更しても勝手にリダイレクトしてくれるのですが、カテゴリに関してはリダイレクトしてくれません。

パーマリンク設定は、%category%/%post_id%は良さそうだったのですが、パーマリンク設定に”/”が入っているとカテゴリ名の変更があった時に404になってしまうことがわかりました。

いちいちカテゴリ名をリダイレクトするのは嫌なので、これは捨てます。

%category%-%post_id%にしてみる

次に考えたのは、パーマリンク設定から”/”を取り除くことです。

パーマリンク設定:%category_name%-%post_id% としてみます。

この場合は、カテゴリ名を変更しても記事はリダイレクトされます。

カテゴリーアーカイブページはリダイレクトされませんが、SEO的には大した話ではないので無視します。

階層が深い場合はどういうURLになるでしょうか?

親階層 / 子階層 – post_id というURLになり、親階層がスラッグに入ってきて、止めたはずの”/”が復活しました。

嫌な予感がします。

でも、パーマリンク設定自体に”/”が入ってなければカテゴリ名が変わってもリダイレクトされることが確認できました。

パーマリンクで親カテゴリだけ使用するスニペット

子カテゴリの場合は階層付きでslugが出てきてしまい、カテゴリ変更するとslugが変わってしまい、自動的にリダイレクトされるとはいえ、やはり気持ち悪い。

パーマリンクの%category%で親カテゴリだけを使うようにするスニペットです。

複数カテゴリに属する記事に%category%が適用される場合、カテゴリIDが小さいものを引っ張ってきます。

それに合わせて、カテゴリIDが小さい順にソートして使うようにしてあります。

<?php
//https://wordpress.stackexchange.com/questions/60800/how-to-display-only-the-parent-category-in-the-permalink
//https://hacknote.jp/archives/14172/
if ( ! is_admin() ){
 add_filter( 'post_link', 'custom_permalink', 10, 3 );
}
function custom_permalink( $permalink, $post, $leavename ) {
  // Get the categories for the post
  if ( 'post' === $post->post_type ) {
	  $cats = get_the_category($post->ID);
	  if($cats){
		  usort( $cats, '_usort_terms_by_ID' );
		  $cat=$cats[0];
		  if ( $cat->parent ) {
			  $parentcategory = get_category($cat->parent);
			  $parentcat = $parentcategory->slug;
		  } else {
			  $parentcat = $cat->slug;
		  }
		  $permalink = trailingslashit( site_url('/'.$parentcat.'-'.$post->ID.'/' ) );
	  }
  }
  return $permalink;
}

まとめ

GoogleはドメインやURLについてはあまり気にしなくてよいと言ってますが、そんなことは絶対にありません。

なおURLにキーワードが入っていてリンクがURLで張られたとしたら、アンカーテキストの効果が出ることがあることを補足しておきます。

SEOのために、商品名やカテゴリ階層をURLに入れる必要はない

キーワードが入ってるサイトの方が上にきます。

手抜きSEO対策として、%post_id%を使用しているサイトについては、

パーマリンク設定:%category_name%-%post_id%

このパーマリンクで様子を見たいと思います。

このサイトのslugは奇妙奇天烈摩訶不思議なままなので変更していません。

この記事を書いた人
ブーン

はるばる日本よりオランダ王国へやってまいりました。
自分の経験が少しでも参考になれば嬉しいです。
お問い合わせは、『こちら』からお願い致します。

\ブーンをフォロー/
スポンサーリンク
サイト運営
\シェアお願いします!/
\ブーンをフォロー/
こんな記事も読まれています

失敗しないレンタルサーバーランキング

mixhost

不正アクセスに強くて使いやすいおススメサーバー
\本サイトで利用中/
メリット①:自動ウィルス駆除対応
メリット②:サイトの表示速度が速い!
メリット③:転送量の上限が多い!
メリット④:自由にプラン変更ができ、アクセス増にも対応できる!
メリット⑤:バックアップデータが無料で復元できる!
メリット⑥:Wordpressが簡単にインストールできる!
メリット⑦:どのプランでも初期費用が無料!
メリット⑧:10日間の無料お試し期間と30日の返金保証!

Conoha Wing

国内Wordpress最速の最強サーバー
メリット①:圧倒的な表示速度
メリット②:レンタルサーバーと独自ドメインがセットでお得◎
メリット③:プラン変更はすべてのプランで自由自在
メリット④:一か月の利用転送量の制限が緩い(9TB~)
メリット⑤:WordPresサイトの移行が簡単

エックスサーバー

国内シェアNo1の安定性と実績が魅力。ALL SSDで死角なしの万能サーバー。
メリット①:サイトの表示速度が安定して速い!
メリット②:アクセス負荷に強くて安定性が高い!
メリット③:24時間365日の充実サポートで安心!電話サポートもあり!
メリット④:転送量が多い!
メリット⑤:自動バックアップ機能付き!
メリット⑥:WordPressが簡単にインストールできる!
メリット⑦:10日の無料お試し期間がある!

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