.
このブログの各投稿記事のURLは
https://virgil.jp/creat-template(記事スラッグ)/
このようになっています。
いえ、このようになっていました。
このパーマリンクの形式を
https://virgil.jp/blog/creat-template(記事スラッグ)/
という書式に変更することができたので、シェアします!
かずあき
YUKI.WORLDさんの記事で一発で解決しました!
Yukiさん、有益な記事をありがとうございました!!
“投稿”のパーマリンクだけカスタマイズ:/news/%post_id%にする – ゆうきのせかい
WordPressデフォルトの”投稿”記事ページのパーマリンクだけ変更して、かつカスタム投稿タイプページのパーマリンクはそのままにしたい。そんな時のカスタマイズ手順をまと…
投稿ページのパーマリンクを変更する方法
function.phpを書き換え
// 投稿ページのパーマリンクをカスタマイズ
function add_article_post_permalink( $permalink ) {
$permalink = '/xxx' . $permalink;
return $permalink;
}
add_filter( 'pre_post_link', 'add_article_post_permalink' );
function add_article_post_rewrite_rules( $post_rewrite ) {
$return_rule = array();
foreach ( $post_rewrite as $regex => $rewrite ) {
$return_rule['xxx/' . $regex] = $rewrite;
}
return $return_rule;
}
add_filter( 'post_rewrite_rules', 'add_article_post_rewrite_rules' );
このコードを、WordPressテーマフォルダ内のfunction.phpにそのままコピーして貼り付けます。
かずあき
「xxx」の部分を、スラッグの前につけたい任意の文字に変更してください!
function.phpの編集画面で「ファイルを更新」を押した時点で、過去に投稿した「投稿ページだけ」のURLが下記のように書き変わります。
パーマリンク設定の変更
WordPress管理画面>設定>パーマリンク設定へ進み、何も変更せずに「変更を保存」をクリックしましょう。
この作業をしないと、ブログの記事投稿ページから記事ページにアクセスできなくなります!
気になる部分の検証
- 変更されるのは投稿ページだけ!
固定ページは変更されません。 - 今後新しく投稿する記事にも適応されます!
これも投稿ページだけに適応されます。 - function.phpに書き込んだコードを削除すると、URLは元に戻ります。
- 過去に投稿したページは404エラーになります。
必要な場合はプラグインなどで対応を!
かずあき
投稿数が少ない状態での変更をオススメします!
内部リンクの書き換えは数が増えるほど大変です…!