デフォルトの「投稿」のURLをカスタマイズする

今回やりたいこと

WordPressには「投稿」という機能がついており、ニュース記事やブログ記事など、さまざまな投稿に使用することができます。

URLにこだわりのない場合だと、そのままで特に問題ないのですが、このデフォルトの投稿記事ページのURLはhttps://xxxxxxx.jp/投稿名/のように、ドメイン直下に投稿名がきてしまいます。

ニュース記事やブログ記事なら、https://xxxxxxx.jp/news/投稿名/https://xxxxxxx.jp/blog/投稿名/のようにしたいという場合も少なくないかと思います。

管理画面のパーマリンクの変更設定で変更することも可能ですが、これを変更してしまうとカスタム投稿がある場合にそのURLも併せて変わってしまいます。

今回は別の方法で任意の文字列を挟んだURLに変更する方法をご紹介します。

functions.php

functions.phpに以下を記述します。「news」となっている部分を任意の文字に変更するだけでOKです。


// ==========================================================================
// デフォルトの投稿 URL リライト
// ==========================================================================
function add_article_post_permalink($permalink)
{
  $permalink = '/news' . $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['news/' . $regex] = $rewrite;
  }
  return $return_rule;
}
add_filter('post_rewrite_rules', 'add_article_post_rewrite_rules');

これでhttps://xxxxxxx.jp/news/投稿名/にアクセスすると記事が見れることを確認できました。

参考にさせていただいた記事

今回参考にさせていただいた記事はこちらこちらです。ありがとうございました。

related article

2019/10/16 WordPress

まだ記事のないカテゴリを出力する

2021/01/15 WordPress

WordPressのビジュアルエディタの名称や出力されるhtmlタグを変更する

2020/07/03 WordPress

管理画面で固定ページを検索すると投稿が表示されてしまう

2020/01/17 WordPress

マルチサイトはlogin rebuilderプラグインは使えない