フェチ杜ブログ

アダルトサイト管理人が日々のサイト運用のあれこれや気になる事などを備忘録的に綴っていきます

Google Indexing APIを使ってはてなブログの記事をインデックス登録する方法

GoogleIndexingAPI はてなブログ

昨年秋以降のGoogleのコアアップデートでインデックスされない問題に活路を見出したかもしれないと話題のGoogle Indexing APIを使用したインデックス登録。

WordPressではプラグインで簡単に利用できるのですが、はてなブログではプラグイン等も無く、Indexing APIを利用する為には自分でプログラムを組む必要があります。

しかし世の中親切な方がいるもので、IndexingAPIでのインデックス登録ツールを公開されている方がおられましたので、本記事ではそのツールを用いてプログラミングの知識が無くてもIndexing APIを利用できる方法を解説します。

実行環境

私は普段使用しているPCがMacBookProなので本記事はMacでの説明となりますが、Windows環境でも実行可能です。
※ただしWindowsはPHPとGitが標準でインストールされていないので別途インストールが必要

また、冒頭でプログラミングの知識は不要と言いましたが、ターミナル(Windowsはコマンドプロンプト)からのコマンド操作が必要となります。

実行環境は以下となります。

  • MacOS Big Sur バージョン11.6.2
  • PHP 7.4.21
    • Macに標準インストールされていたもので、ツールを実行するのに必要
  • Git 2.30.1
    • これもMac標準でインストールされており、今回はツールをローカル環境に持ってくるのに使用します

ツールについて

今回kanaxx (id:kanaxx43)さんが作成されたPHP製のツールを使用しました。

github.com

kanaxx (id:kanaxx43)さんのホームページでもツールの使用方法は解説されているのですが、どちらかと言えばエンジニア向けな内容で用語解説等は無かったので、当サイトでは冒頭の通り非エンジニアでもわかる様に噛み砕いて説明させて頂きます。

ツールの導入

1. 環境確認

1-1. ターミナルの起動

1. 「Command + スペース」を押します
2. 「スポットライトバー」が表示されるので「ターミナル」と入力し「Enter」を押します
3. 以下の通りターミナルが表示されます
mac terminal

1-2. PHPとGitの確認

今時のMacには標準でPHPとGitが入っていますが念のため確認しておきます

1. 以下のコマンドを打ってインストールされているPHPのバージョンを確認します

php -v

と入力し実行すると

PHP 7.4.21 (cli) (built: Jul 12 2021 11:57:26) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.21, Copyright (c), by Zend Technologies

この様にインストールされているバージョンが表示されればOKです。

2. 同じくGitも確認します

git --version

と入力し実行すると

git version 2.30.1 (Apple Git-130)

この様にインストールされているバージョンが表示されればOKです。

2. インデックス登録ツールのダウンロード

ツールはgithubと言うプログラム等を公開するサービスに置いてありますのでそこからダウンロードします

1. 以下のコマンドを実行します

git clone https://github.com/kanaxx/hatenablog-indexing.git

2. 以下のコマンドを実行して「hatenablog-indexing」と言うディレクトリがあればOKです

ls

3. 以下のコマンドを実行し「hatenablog-indexing」に移動します

cd hatenablog-indexing

3. composerのインストール

ツールを使う為にはGoogle API Libraryと言うGoogleが提供しているプログラム群が必要なのですが、それをインストールする為にcomposerと言うPHPのライブラリ管理ツールが必要となります

1. 以下のコマンドを1行ずつコピーして実行していきます

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '906a84df04cea2aa72f40b5f787e49f22d4c2f19492ac310e8cba5b96ac8b64115ac402c8cd292b8a03482574915d1a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

特にエラー等でなければOKです

2. composerへのパスを通す為に以下のコマンドを実行してください
どこからでもcomposerコマンドを実行できる様にします

$mv composer.phar /usr/local/bin/composer

4. Googleクライアントライブラリのインストール

1. 以下のコマンドを実行します

composer require google/apiclient:"^2.0"

ずらずらっと様々な文字が出力されますので出力が終わったら以下のコマンドを実行してインストール結果を確認します

ls

上記コマンドの結果で下記の通り「composer.json」「composer.lock」「vendor」があればOKです

$ ls
composer.json	composer.lock	vendor

5. Googleのサービスアカウント作成とSearchConsoleへのアカウント登録

IndexingAPIを利用する為には

  • Googleのサービスアカウント作成
  • IndexingAPIを利用する為の認証キーの発行
  • 作成したサービスアカウントをサーチコンソールへ登録

上記3点の実施が必要となります。

本記事の読者は既にサーチコンソール用のGoogleアカウントがあると思うので、そのアカウントで上記作業を実施します。

これらの作業を非常に簡潔に説明されているサイトを発見しましたので、以下リンク先を参考に上記3点の作業を行なって下さい。


manual.leafworks.jp

上記リンク先の作業の中で「jsonファイル」をダウンロードする手順があるのですが、この「jsonファイル」が以降の作業で必要となります

6. 認証ファイルの配置

前述の通り、以降の手順ではダウンロードした「jsonファイル」が必要となります。

1. ダウンロードした「jsonファイル」を「controlキーを押しながらクリック」もしくは2本指でクリックし「コンテキストメニュー」を表示します
コンテキストメニュー

2. コンテキストメニューが表示されたら「情報を見る」をクリックし「場所」に記載されている文字列をコピーします
情報ウィンドウ

3. ターミナルで以下のコピーコマンドを実行し「jsonファイル」をコピーます

cp -a "コピーした内容を貼り付け/ファイル名" ./credential.json

「""」の間にコピーした内容を貼り付けて続けて「/」とファイル名を入力します。
コピーした内容が「/Users/user」でファイル名が「test.json」だった場合は以下となります

cp -a "/Users/user/test.json" ./credential.json

「""」も入力してください

4. 以下コマンドを入力しコピーが行われているか確認します
以下コマンドを入力して結果に「credential.json」があればOKです

ls

長かったですが、ここまででツールを実行する準備が整いました。

ツールの実行

phpコマンドを使ってツールを実行します。
ツールはブログのサイトマップに記載されているURLをインデックスに登録してくれるので、以下通りにコマンドを入力します

php publish_sitemap_to_indexing_api.php "サイトマップのURL"

例えば当ブログの2022年1月の記事を登録したい場合だと

php publish_sitemap_to_indexing_api.php "https://blog.fetinomori.com/sitemap_periodical.xml?year=2022&month=1"

と入力すれば記事をインデックスに登録してくれます。
参考までに実行結果を貼り付けておきます

$ php publish_sitemap_to_indexing_api.php "https://blog.fetinomori.com/sitemap_periodical.xml?year=2022&month=1"
-getting XML >> https://blog.fetinomori.com/sitemap_periodical.xml?year=2022&month=1
 got 3 entries.
 page :2022-01-05 12:04:35 https://blog.fetinomori.com/entry/2022/01/05/001848
 page :2022-01-04 22:37:58 https://blog.fetinomori.com/entry/2022/01/04/033523
 page :2022-01-05 12:04:44 https://blog.fetinomori.com/entry/2022/01/03/234416
=== URL ====
3
============
200:OK|https://blog.fetinomori.com/entry/2022/01/03/234416|2022-01-05 17:19:30
200:OK|https://blog.fetinomori.com/entry/2022/01/05/001848|2022-01-05 17:19:32
200:OK|https://blog.fetinomori.com/entry/2022/01/04/033523|2022-01-05 17:19:35
=== Result ===
200:3
==============


以上で説明は終わりとなります。

ツール作成者のkanaxx (id:kanaxx43)さんのホームページでツールの詳細などを説明されていますのでよければご覧ください。
kanaxx.hatenablog.jp

Copyright © 2021-2022 フェチ杜ブログ All Rights Reserved.