第15回 【WordPress】 プラグイン リンクエラーチェック、サイトマップ、日本語対応パッチ

WordPress GCP

1. 第15回 【WordPress】 プラグイン リンクエラーチェック、サイトマップ、日本語対応パッチ

環境:Debian 9 php 7.0 Apache 2.4.25 MySQL 5.7 Cocoon

目的:リンクチェック、サイトマップ、日本語対応パッチ

今回のポイント

「YouTube」のリンクエラーも検知できるようにするために「Google API」の設定方法を記載しています。この「Google API」をWordPressプラグイン「Broken Link Checker」に反映させています。

設定自体が分かりにくいので、詳細に図解して書いていきます。

「Google API キー」を正しく設定できていなければ「YouTubeのリンクエラーは検知できない」ということになります。下記画面は私がはまった「Google Maps」のプラグイン「Google Maps Easy」でのエラー画面です。

以前「Google Maps」は誰でも埋め込めるようになっていましたが、ユーザーの利用頻度が高くなり「APIを利用」しないと埋め込めなくなりました。「YouTube」でも同様の措置だと思います。

違い

  • Google Maps:APIの設定が間違っているとエラーで先に進めない。
  • Broken Link Checker:APIの設定が間違っていてもエラーにならず誰も教えてくれない。
  1. Broken Link Checker「YouTube」対応
  2. Google XML Sitemaps、WP Multibyte Patchの2つについては簡単なので、最後の方にまとめてしまっています。

上記3つのプラグインは、日本語でWordPressを運営するなら必須的なものだと思います。

手順の流れ
  • WordPress
    Broken Link Checker

  • GCP
    YouTube API の設定

    Google API キーの取得

  • GCP
    Google API キーの制限

  • WordPress
    Broken Link Checker

    Google API キーの設定

  • WordPress
    Google XML Sitemaps

  • WordPress
    WP Multibyte Patch

1.1 Broken Link Checker 詳細設定①

「Broken Link Checker」は自サイトで貼り付けたリンクが切れた時、「リンク切れしてるよ」と教えてくれるプラグインです。リンク切れしたまま放置していると、Googleに無視され始めるようになります。無視されると通信簿に響きます。ここまでは当たり前の話です。

私は音楽が好きなので、音楽系のWebサイトの方へ出かけたりもしますが、「YouTube」のリンク切れをよく見かけます。どのサイトであっても「Google API」を設定しないと「YouTube」のリンク切れは検知できません。

この「Google API」の取得は面倒くさいのと、きっちり設定しないと反映しないのでよく見かけるのだと思います。さらに、「Google API」の設定は間違っていても「Google側」が教えてくれないので、設定したつもりになっているのかも知れません。そのあたりを書いていきます。

  • 「WordPress管理画面」「プラグイン」「新規追加」で「Broken Link Checker」を検索します。
  • 「今すぐインストール」をクリックして、次へ進みます。

1.2 有効化

「有効化」をクリックして、次へ進みます。

1.3 〇〇個のリンクエラーを発見しました。

リンク切れがあるとちゃんと教えてくれます。下記画面でいうと「7個のリンクエラーを発見しました」というリンクをクリックすると、

  • リンク切れURL
  • ステータス
  • リンクテキスト
  • 該当ページ

きっちり教えてくれるので、修正するポイントがピンポイントで分かります。

  • 「各リンクをチェック」という項目、デフォルトでは「72時間ごと」で設定されています。

    私は48時間ごとに設定しています。リンク切れの発見が設定時間より遅いと思います。極稀にですが、該当のリンク切れを探している最中に、別のリンク切れを私のほうが先に発見してしまうことがあります。

    そういったことがあるので、3日ごと→2日ごとに変更しています。

1.4 「You Tube API キー」

「You Tube API キー」と書いてあるから、分かりにくいのではないかと思います。「YouTube リンクをチェックするには自分の api key を使ってください。」と書いてあります。

Google公式:「YouTube Data API の概要」

そこに「You Tube」の説明動画もありますが、古いのでこの通りにやろうと思ったらハマると思います。

「GCP」のプロジェクトの中に「Google API キー」というものがあります。

その中に色々な種類の「アプリケーション API」が存在し、約300種類の「API ライブラリ」があります。そこから自分が必要とする「API ライブラリ」を「Google API」に登録していくと考えると分かりやすいです。

  • 親:「Google API キー」
  • 子:「API ライブラリ」

ですから、必要なのは「You Tube API ライブラリ」が登録された「 Google API キー」です。

1.5 「 Google API キー」の取得

最重要ポイント
  • 「GCP」について説明しているので「プロジェクトが作成されていることを前提として書いていきます。まだ「プロジェクトを作成していない方はこちら。

    第1回 WordPress(Google Click to Deploy) GCPのプロジェクト作成から独自ドメインへ紐付ける(プロジェクトが作成できたら戻ってきてください。)

    お支払い方法の追加、削除、更新「支払は登録しても有効化しない」

    普通のサイトなら無料枠で問題ないはずなので「支払は登録しても有効化しない」ようにすることです。無料枠の上限は1ヶ月毎に定められています。この先「Google側」が有効化しないと利用できないようにした場合は、無料枠を超えないように自分で1日毎の上限や1ヶ月毎の上限を設定することも可能です。

  • 「Googleアカウント」「GCPプロジェクト作成」「支払い設定」のすべてが揃っていないと、この先には進めないと思います。
  • 「API」の無料枠を超える場合、「API利用の支払い」と「広告収入」とを天秤にかけたら、遥かに広告収入のほうが大きくなると思います。「支払は有効化して」リンク切れ対応はしておいた方が良いと思います。

  • 「GCP」「メニュー」「APIとサービス」「ダッシュボード」の順番でクリックします。
  • 「+APIとサービスを有効化」をクリックして、「API」を有効にして、次へ進みます。ここでは「Google API」が有効になっただけです。

1.6 「Marketplace」へ移動

  • 「メニュー」「Marketplace」の順番でクリックして、次へ進みます。

    良く利用するものは、上部にピン留めしておくととても楽です。

1.7 「Marketplace」で検索

  • 「Marketplace」で「YouTube Data API」と検索します。

1.8 「YouTube Data API」を発見

  • 「YouTube Data API v3」をクリックして、次へ進みます。

1.9 「YouTube Data API v3」有効化

  • 「有効にする」をクリックして、次へ進みます。

1.10 認証情報を作成

  • 「有効化」した後、右側の「認証情報を作成」をクリックして、次へ進みます。
迷子になった時

間違えて、どこか他をクリックして、この画面から外れてしまった場合は、

  • 「メニュー」「APIとサービス」「ダッシュボード」をクリックして、下の方に表示される「YouTube Data API v3」をクリックすると、この画面に戻ることができます。

1.11 プロジェクトへの認証情報の追加

  • 「認証情報を作成」をクリックすると「認証情報」画面へ切り替わります。
  • 赤枠「プロジェクトへの認証情報の追加」の「使用するAPI」の「選択」部分をクリックして、次へ進みます。

1.12 使用するAPI

  • 前画面の「使用する API」の「選択」部分をクリックすると、下の方に「YouTube Data API v3」が出てきます。
  • クリックして次へ進みます。

1.13 「API を呼び出す場所」

  • 「使用する API」の「選択」をすると、「API を呼び出す場所」の項目が出てきます。
  • プルダウン「選択」をクリックして次へ進みます。

1.14 「API を呼び出す場所」の選択

  • 「ウェブブラウザ(JavaScript)」を選択して次へ進みます。

1.15 アクセスするデータの種類

  • 「一般公開データ」のラジオボタンを選択します。
  • 「必要な認証情報」をクリックして、次へ進みます。

1.16 プロジェクトへの認証情報を取得する

  • 下記画面「2 認証情報を取得する」が表示されます。
  • 赤枠「API キー」が表示されますので、次へ進みます。※「完了」ボタンを押さないようにしてください。

1.17 「API キー」をコピー

  • 「API キー」の右端に「コピーボタン」があるので、クリックしてコピーします。
  • コピーした「API キー」はメモ帳など一時的なものに貼り付けておきます。
  • 「キーの制限」を右クリック「新しいタブで開く」をクリックして、次へ進みます。
ポイント
  • この「API キー」が「Google API キー」です。

1.18 API キーの制限と名前変更

  • 「名前」任意ですが、その前に次の画面へ進みます。
  • ※右側のぼかしの部分に「API キー」が表示されています。

1.19 名前について

ポイント
  • 最初、下記画面のように「Broken Link Checker API」と入力しようとしました。
    リンク切れをチェックするプラグイン「Broken Link Checker」のAPIと思っていました。

ところが、

  • その下の「キーの制限」の画面を見て、別のサイトで先に取得した「Google Maps API」ではまった画面だと思い出したことで、調べ直しました。
  • 「プロジェクト」ごとに「1つのGoogle API キー」を取得し、「API ライブラリ」を登録して有効化していくことなんだと。

冒頭の最重要ポイントで説明していることと一緒です。

  • 次の画面へ進みます。

1.20 名前に「独自ドメイン」

  • 名前に独自ドメイン「例、tohyo2020.org」を入力し直しました。
  • 「HTTP リファラー(ウェブサイト)」を選択して、次へ進みます。

1.21 ウェブサイトの制限

  • キャプチャ外の画面右側には、「ウェブサイトの制限」の記載例があります。いろいろ試しましたが、一番シンプルにきちんと動作するのは下記の設定です。
  • 「wwwなし」(サブドメインのwwwがない時)
    「例、http://tohyo2020.org/*」
    「例、https://tohyo2020.org/*」
  • 「wwwあり」(サブドメインのwwwがある時)
    「例、http://*.tokyo2020unofficial.com/*」
    「例、https://*.tokyo2020unofficial.com/*」
  • 「保存」ボタンをクリックして、次へ進みます。
注意点

上記はあくまでも、例です。「tohyo2020.org」の独自ドメイン部分は、「自分の独自ドメイン」で入力してください。

ひとこと

私の場合、仮に「Google Maps API」ではまっていなかったら、「You Tube」のリンク切れチェックについて、エラー画面がないので、間違ってしまっても設定が合っていると思っていたことでしょう。

ですが、「Google Maps」は「API」が間違っていると、最初から動作しません。「Google Maps」については、個人では私以上に利用している人を見たことがないので、自身を持って言える部分だと思います。

別で運営している「Tokyo2020 unofficial 非公式」では、2種類の「Google Maps」を利用しています。

  • プラグインを利用しない方法。
  • プラグインを利用する方法。

試しにこちらを御覧ください。→「日本の城」

  • プラグインを利用せず、1つの地図に1つの場所。(通常)
  • プラグインを利用して、1つの地図に約140箇所を表示した地図。
    マーカーをクリックすると2種類のリンクが出るようにしています。

1.22 「API とサービス」

  • ダッシュボードで確認すると、非常に多くの「API ライブラリ」が登録されていることが分かります。

1.23 「 Google API キー」の取得完了

  • 「1.17 「API キー」をコピー」画面に戻って「完了」ボタンをクリックして、次へ進みます。
  • この時、「API キー」をコピーし忘れていたら、再度コピーして「メモ帳など」に貼り付けておきます。
  • この「API キー」は「Google API 」と呼ばれるものですので「メモ帳など」に一時的にコピーしたものは削除してください。
ポイント

「Google API キー」は一度登録してしまえば、あとから下記画面の「認証情報」から確認することができます。

他のプラグインを利用する際に、Googleの「API キー」を求められた場合は、該当するサービスの「API ライブラリ」を登録して、今回取得した同一の「Google API キー」を入力すると有効になります。

1.24 Broken Link Checker 設定画面②

「 Google API キー」の取得が完了したので「Broken Link Checker」の設定に戻ります。一般タブの下部です。

  • 「WordPress管理画面」「設定」「リンクチェッカー」の順番でクリックします。
  • 「Google API キー」を赤枠内に貼り付け、「設定を保存」をクリックして、次へ進みます。

1.25 Broken Link Checker 詳細設定③

  • 「含まれるリンクを探す」タブに移動します。
  • 最低でも「固定ページ」「投稿ページ」「公開済み」にはチェックを入れます。なぜ、固定ページの項目が2つあるのかは分かりませんが。
  • 変更を保存して、次へ。

1.26 Broken Link Checker 詳細設定④

  • 「チェックするリンクの種類」タブに移動します。
  • 私の場合ですが、「Dailymotion」は利用しないと思うのでチェックを外しています。
  • 変更を保存して、次へ。

1.27 Broken Link Checker 詳細設定⑤

  • 含まれるリンクを探す」タブに移動します。
  • 初期設定で「基本的なHTTP」「YouTube API」はチェックされていると思います。
  • 変更を保存して、次へ。

1.28 Broken Link Checker 詳細設定⑥

「高度な設定」タブの上部です。

  • 「バックグラウンドで1時間ごとに実行する」のチェックを外しています。(リンクチェックは行なっておきたいけど、サーバーに負荷をかけてまでそんなに厳しくチェックしなくてもと思いまして。)
  • 「リダイレクトを修正」のチェックは好みの問題です。リンクチェックの機能としてはどちらでも構わないです。

1.29 Broken Link Checker 詳細設定⑥

「高度な設定」タブの下部です。

  • 初期設定が「4.00」でした。どのような指標かは分かりませんが、「4.20」とかになっている方もいるようです。赤枠の「サーバー負荷」をクリックすると計算方法が出てきますが、すぐ読むのやめました。
  • 「変更を保存」します。これで「Broken Link Checker」の設定が完了です。「YouTube」のリンク切れをチェックしたい場合を含んでいるので長いです。

1.30 Broken Link Checker サーバー負荷①

実際、リンクチェッカーのサーバーに与える負荷はどんなものか見ていきたいと思います。

  • 下記画面では「6554個のリンク中4108個のユニークURLを検出しました。」とあります。
    リンクチェッカーがこれから確認するのは「1867個のURLが作業キューにあります。」の部分です。次へ進みます。

1.31 Broken Link Checker サーバー負荷②

GCPの画面で「WordPressが格納されているVMインスタンス」(仮想マシンサーバー)です。

  • 「メニュー」「該当のVMインスタンス」をクリックして、下記画面①の「モリタリング」タブ画面へ移動します。
  • グラフ全体を②12時間で取り、リンクチェッカー前後を6時間ずつで「CPU使用率」で比較しています。赤枠の左側6時間はリンクチェッカー作動前でちょこちょことアクセスがあるような感じです。
  • 赤枠③~④へかけてリンクチェッカーを作動させた時に生じる「CPU使用率」はちょこちょことアクセスがあると同時にリンクチェッカーによるサーバー負荷の生じ頻繁に波が上下しているのがわかります。
  • ⑤ネットワークバイトで確認しても、リンクチェッカー作動前と作動後は明らかにデータのやり取りが行なわれています。このことからもリンクチェッカーを作動させる「時間を何時間ごとに設定するか」というのは、それなりに考えたほうが良いということがわかります。

1.32 Broken Link Checker リンクエラー①

WordPress管理画面にログインした最初のダッシュボードの画面です。

  • すべてのリンクチェックが終了したので「作業キューにURLはありません。」と表示されています。
  • どのページでリンクエラーが発生しているのかリンクをクリックして確認します。

1.33 Broken Link Checker リンクエラー②

上記画面をクリックしたあとの画面です。

  • どのページで、どんなステータスで、どんなリンクテキストで、エラーが発生しているのかがわかります。とても便利です。
  • このリンク切れに対して、「URL編集」「リンク解除」「リンクエラーでない」「無視」「再確認」「リダイレクトを修正」などの項目でどのような対処をするかを決めることができます。

どの対処方法を選択すればいいか

  • 「URL編集」:
    正しいURLを入力して修正します。
  • 「リンク解除」:
    リンク先が存在しないが、投稿ページの本文から削除してしまうと文章が成り立たないなど、単純にリンクを解除します。
  • 「リンクエラーでない」:
    クリックして確認したらリンク先は存在している場合があります。その時はリンクエラーでないをクリックします。一度、「リンクエラーでない」を選択したからといっても、通常通りリンクエラーかどうかの対象として扱われます。
  • 「無視」:
    「リンクエラーでない」と比較すると、無視にした場合、リンク先が存在するしないに関わらず取り消し線が引かれます。その時はリンクエラーでないをクリックします。「無視」を選択したからといっても、通常通りリンクチェックが行われます。リンク先で編集が行われた際には改めてリンクエラーかどうかの対象として扱われます。
  • 「再確認」:
    リンクエラーとなっているリンク先が存在する場合、一番最初にクリックして再確認するのが望ましいと思います。存在している場合はかなりの確率でOKになります。一気にリンクチェックを行なってサーバーに負荷をかけているのでそのくらいは許容範囲だと思って使いましょう。
  • 「リダイレクトを修正」:
    リンクエラーとなっていても、予め存在するリダイレクト先がわかっている場合にはリダイレクト修正を行なうことも可能ですが、できるだけ「URL編集」で大元のURLを指定してしまったほうが良いと思いますが、リンク先が直接のリンクではなく元のリンクにアクセスを希望している場合にはそちらの「リンク先が指定するURL」に修正することが望ましいと思います。

2.1 Google XML Sitemaps

ここから先は1つの記事にまとめるのはどうかと思いましたが、かなり当たり前のプラグインですのでついでに買いてしまします。

  • このプラグインは有名すぎて説明すら必要ないかも知れません。
  • 「WordPress管理画面」「プラグイン」「新規追加」の順番でクリックし「Google XML Sitemaps」を検索します。
  • 「今すぐインストール」をクリックして、次へ進みます。

2.2 有効化

  • 有効化して、次へ進みます。

2.3 XML-Sitemap

  • 「WordPress管理画面」「設定」「XML-Sitemap」の順番でクリックします。
  • 投稿ページ、固定ページを公開すると、検索エンジンが探してくれるようになります。

2.4 注意点は一つだけ

ポイント

「HTML形式でのサイトマップを含める」に✔が入っていると「Google Search Console」でエラーが発生する可能性があります。

  • 「エラーが発生した場合は、✔を外します。」それだけで解決すると思います。

3.1 WP Multibyte Patch

このプラグインも有名なので特に説明を書かなくても良いと思います。

  • 「WordPress管理画面」「プラグイン」「新規追加」で「WP Multibyte Patch」を検索します。
  • 「今すぐインストール」をクリックして、次へ進みます。

3.2 有効化

  • 有効化するだけで、何の設定も必要のない優れたプラグインです。

本家版日本語版 WordPress のマルチバイト文字の取り扱いに関する不具合の累積的修正と強化を行うプラグインです。英語圏で作られた WordPress を日本語環境で正しく動作させるために必要となる機能を網羅していますので、なんらかの対策を行っていない場合は導入をおすすめします。

日本語で「WordPress」を運営するならば、必要不可欠なプラグインです。

4.1 さいごに Google API キー エラー画面

「Broken Link Checker」は有名ではありますが、「Google API キー」を取得して「YouTube」のリンク切れを検知するように設定することは、書かれていないと思います。

そして「Google API キー」を正しく設定できていなければ「検知できない」ということになります。ここが落とし穴で「Broken Link Checker」では「Google API キー」正しく設定できているかどうか教えてくれないところです。

下記画面は私がはまった「Google Maps」のプラグイン「Google Maps Easy」でのエラー画面です。「Google API キー」は取得できたのに「他の設定が間違っている」がために利用ができませんでした。

問題は「API ライブラリ」が3種類必要なこと、はまる可能性の高い「 HTTPリファラーの設定」の両方です。ずいぶん先になりますが「第30回」「第31回」2つに分けて、設定編と使い方編を書きたいと思います。


次は、第16回です。


【コメント】 ※「メールアドレス不要」