KUSANAGI(Nginx)でWordPressが生成するXMLサイトマップをリダイレクトしたり無効化したりする

WordPress 5.5でXMLサイトマップの自動生成が標準機能として実装されました。
しかしこの自動生成サイトマップ。
出力するURLを細かく制御できないわ、更新日付は出力しないわ。
現状ではプラグインに任せた方がいいので無効化します。

なお、KUSANAGIとしていますが、当然Nginx全般で使えます。
ファイル名は適当に読み替えてください。

天満川鈴 WRITTEN BY 天満川鈴
スポンサーリンク

Nginxで標準XMLサイトマップをリダイレクトする方法

Nginxで標準XMLサイトマップをリダイレクトする方法は2つあります。

・Nginxの設定ファイルにリダイレクトを記述する方法。
・functions.phpに生成機能を無効化するコードを記述する方法。

どちらも簡単ですし、どちらでもいいです。

ただし、以下をお読みください。

プラグイン「XML Sitemap & Google News」を使うなら本稿の作業は不要【2024年9月16日追記】

定番プラグインXML Sitemap & Google Newsに置き換える場合。

プラグインが自動で前者のリダイレクトをやってくれます。
なので、

本稿の作業は必要ありません。

前からそうだったっけ?

さあ……

もしそうなら本稿を書いてないと思うんですけど……。
ちょっと記憶が定かじゃないです。
ただこのプラグインに置き換える人がほとんどのはずなので、本稿の意味がなくなってしまったのは確かです。

以下は、勉強したいならお読みください。

Nginxの設定ファイルにリダイレクトを記述する方法

プラグインが出力するXMLのURLを「~/sitemap.xml」とします。

/etc/opt/kusanagi/nginx/conf.d(KUSANAGI9の場合)
あるいは
/etc/nginx/conf.d/(KUSANAGI8の場合)
にある(プロファイル名)_ssl.confに次の記述をします。

rewrite ^/wp-sitemap.xml(.*)$ https://【ドメイン名】/sitemap.xml$1 redirect;

終わったら再起動します。

#kusanagi restart

https://【ドメイン名】/wp-sitemap.xmlにアクセスしてリダイレクトされているか確かめてみてください。

正規表現の参考にした記事はこちらです。

functions.phpに生成機能を無効化するコードを記述する方法

子テーマのfunctions.phpに次のコードを書き込みます。

add_filter( 'wp_sitemaps_enabled', '__return_false' );

https://【ドメイン名】/wp-sitemap.xmlにアクセスして404が返ってくるか確かめてください。

まとめ

WordPressがまともに対応してくれたら、プラグイン1つ減らせるんですけどね
それまではリダイレクトして気長に待ちましょう

スポンサーリンク
天満川 鈴のプロフィール画像
WRITTEN BY

天満川 鈴

未経験からWEB業界に入り、現在はWEBディレクターとして実務に従事。 要件整理・導線設計・コンテンツ構成などを学びながら、日々改善を重ねています。 AIを活用したコンテンツ制作・効率化を強みとし、プロンプト設計を含めた制作フローの最適化にも取り組んでいます。
本サイトでは、WordPressやサイト制作に関する試行錯誤・検証内容を中心に発信。 技術検証の一環として、KUSANAGI公式サイトにて記事を2回紹介いただきました。

RECOMMENDED INFRASTRUCTURE

私はConoHa以外を勧めない。

2016年からずっとConoHaを使い倒してきました。知人に「一番いいサーバーは?」と聞かれたら、迷わずここを教えます。

レンタルサーバーナンバーワンを誇る高速環境であることはもちろん。私が「黒い画面って何?」というド素人からサイト制作のプロになれたのは、傍らにずっとこのはちゃんがいてくれたから。
私がConoHaを使い続ける、嘘偽りない理由です。

※ConoHaに初めて入会の方限定。
本CTAの画像もしくはボタンを押してWINGパック12か月以上を契約すると、最大5000円割引してもらえます。

公式サイトで詳細を見る
× 閉じる