(記事内リンクにPR含む場合があります)

【WordPress】パーマリンクを連番にする設定方法!投稿IDではなく

WordPressカスタマイズ

パーマリンク

WordPressで作成したブログのパーマリンクURLを「http://wispyon.com/連番/」のようなシンプル設計にする方法を紹介します。WordPressは通常この連番でのパーマリンクを生成してくれません。

ゆめぴょんです。こんちはっ(^^)/

パーマリンク形式によるSEO効果については、いろんなブログ・サイトで語られてます。私的には「?p=123」でも「/how-to-customize/」でも「/123/」でも、結局はブログの内容勝負になると思ってます。

(2014.3月追記)このブログでは50記事目くらいから、パーマリンクの連番をやめて、個別URLを設定することに変更しています。

「/how-to-customize/」のような形式の方が、検索エンジンも解釈できるので少しは有利になるとも言われています。毎回の設定が面倒でなければオススメです。

私はだんだん面倒になり挫折しそうなので、最初から簡単でシンプルな連番パーマリンクを選びました。ただこの方法は需要はありそうなのに探すとあまり情報が見つかりません。しかもWordPressは標準でサポートしてないんです。

上画像を参照して下さい。管理画面「設定」の「パーマリンク設定」にある「デフォルト」や「数値ベース」ってのは連番ではありません。この数値は自動保存などでリビジョンしたり、写真を追加したら増えていくので要注意です。

WordPressで、パーマリンクを連番にする方法

1箇所だけWordPressのPHPファイルを修正する必要があります。失敗するとブログが表示されなくなるので、必ず最初にファイルのバックアップを作成して自己責任でお願いします。

なお下の設定をした後も、記事の「下書き」などをすると「2-2」のようになることがありますので注意してください。

まず、WordPress管理画面の「パーマリンク設定」の共通設定で「投稿名」を選択。「変更を保存」を忘れずに!

meta-boxes.phpファイルの書換え方法

WordPressのPHPファイルを下のとおりに書き換えます。修正前に必ずコピーをとってくださいね。ファイル名と場所は次のとおり。

ファイル名:「WordPressフォルダ(通常はwp)/wp-admin/includes/meta-boxes.php」

修正箇所(行)は、WordPressのバージョンにより違うので、ファイルを開いたあとに「post_slug_meta_box」を検索するのが楽です。修正後のファイル保存とサーバーへのアップロードを忘れずに。

[修正前]
[php]
function post_slug_meta_box($post) {
?>
<label class="screen-reader-text" for="post_name"><?php _e(‘Slug’) ?></label><input name="post_name" type="text" size="13" id="post_name" value="<?php echo esc_attr( apply_filters(‘editable_slug’, $post->post_name) ); ?>" />
<?php
}
[/php]
[修正後]
[php]
function post_slug_meta_box($post) {
?>
<label class="screen-reader-text" for="post_name"><?php _e(‘Slug’) ?></label><input name="post_name" type="text" size="13" id="post_name" value="<?php
if(get_post_status() == ‘publish’){
echo esc_attr( apply_filters(‘editable_slug’, $post->post_name) );
} else {
echo count_user_posts(1) + 1;}
?>" />
<?php
}
[/php]

修正するのはinputのvalue以降です。

ソースコードの意味は「最新記事数」を「現在記事数+1」で計算して「投稿名(スラッグ)」に代入しています。古い記事を更新する場合は「投稿名」がそのままになるように条件分岐してます。細かいけど重要な点です。

参考:WordPress 記事のURLを自動で連番にする

ゆめぴょんでした。ちゃおっ!

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