はじめに
SEOの一環として、Google Search Consoleにサイトマップを登録することは特に新しいウェブサイトにとって重要なステップとなります。サイトマップを持つことで、Googleのウェブクローラーがウェブページをより効率的に見つけてインデックス化できるようになり、検索結果でのサイトの表示性を向上させるのに役立ちます。
しかし、Google Search Consoleにサイトマップを登録した後も、全てのクロール時に毎回Googleがサイトマップを確認するわけではありません。
そのため、ウェブサイトで頻繁にコンテンツを追加または変更する場合、サイトマップの更新をGoogleに定期的に通知することが重要です。
Googleへのサイトマップ更新
Google Search Consoleを介した初期の手動更新
サイトマップを更新するもっとも簡単な方法は、Google Search Console自体を使用することです。ここでは、サイトマップを手動で再送信することができます。ただし、毎日これを行うことは非常に手間がかかります。
URLアクセスによる自動更新
サイトマップの更新を自動化するために、Googleは簡単な方法を提供しています。特定のURLにアクセスすることで、サイトマップを自動的に更新することができます。例えば、次のURLにアクセスすることでサイトマップを更新できます。
http://www.google.com/ping?sitemap=https://example.com/sitemap.xml
GitHub Actionsを使用したサイトマップの自動更新
GitHub Actionsは、リポジトリ内でソフトウェア開発のワークフローを自動化、カスタマイズ、実行することができる強力なツールです。その中に含まれる機能の1つに、Unix系オペレーティングシステムの時間ベースのジョブスケジューラであるcronのサポートがあります。この機能を利用して、サイトマップの自動更新を定期的にスケジュールすることができます。
これを実現するには、GitHub Actionsに次のコードを実装する必要があります。
name: Update Sitemap
on:
schedule:
- cron: '0 15 * * *'
jobs:
update-sitemap:
runs-on: ubuntu-latest
steps:
- name: Ping to Google
run: |
curl -X GET "http://www.google.com/ping?sitemap=https://io.traffine.com/sitemap.xml"
このスクリプトは、GitHub Actionsにcurl
コマンドを実行するよう指示し、提供されたURLにGETリクエストを送信してサイトマップを更新します。schedule
セクションは、スクリプトを実行するタイミングをGitHub Actionsに伝えます。この例では、cronの構文0 15 * * *
により、スクリプトが毎日15時(UTC時間)に実行されるよう設定されています。
参考