googleしごと検索用のマークアップ(自動出力)を、Wordpressプラグインとして実装した記録です。
実装方法は2通りある
しごと検索の実装方法は下記の2通りがあります。
- Webサイト内のコードに直書きをする
- サイトの表示と共に自動出力されるプログラムを書く
求人ページが1~3程度ならWebページに直書きで、大量にあるなら自動出力がいいと思います。が、今後の運用を考えるなら自動出力を実装するのがベストではないでしょうか。
***
コードの記述ルールを理解すると進めやすくなるため、JSONの簡単な解説もさせてください。
しごと検索の構造化マークアップは【JSON-LD】という形式で記述します。JSON-LDでは、データのひとかたまりをKey(キー) とValue(バリュー) のペアで記述していくという特徴があります。
記述例:
"datePosted": "2016-02-18"
***
datePosted がKey(キー)
2016-02-18 がValue(バリュー)
下記の解説記事にはさらに詳しいルールが記載されています。とってもわかりやすいので、一読をおすすめします。
【徹底解説】JSON-LDを使ったschema.orgの記述方法 | 海外SEO情報ブログ
*
記述するべきKeyとValueの組み合わせは、公式サイトにて確認できます(構造化データタイプの定義)。
自動出力の手順(PHP)
自動出力の方法は下記の順番で行いました。
- しごと検索に用いるプロパティを確認
- 動的に記述する方法を確認
- WordPressの仮想環境を構築する
- WordPressの関数にフックをかける(add_action()関数)
- しごと検索のプロパティに対応した連想配列(array();)を作成
- json_encode()関数でJSON形式に変換して出力
- stripslashes()関数を用いてバックスラッシュを削除。
しごと検索のプロパティには、【必須項目】と【推奨項目】とにわかれています。推奨項目まで網羅するのは大変なので、必須項目を自動出力しようと試みました。
仮想環境の構築は「Flywheel」というアプリを用いています。
▼動作環境
Webサーバの言語:Apatch
PHPバージョン:7.0.3
データベース:mySQL5.5
実装したコードの紹介
コードを紹介します(公開用に一部改変しています)。各プロパティへの対応方法はコチラを参照ください。
大まかに解説をしますと、
・投稿日
・投稿内容
・タイトル
・県名、市名
これらをwordpress関数で取得するという方法をとりました(県名・市名はカスタムタクソノミーを追加して対応)。
次いで連想配列に格納し、JSON形式にエンコードして出力しています。
まとめ
実装までのイメージはついたでしょうか。
ポイントは
・不変なもの(会社名など)は直書き
・変わるもの(勤務地など)は動的に出力
です。
推奨項目まですべてを網羅するのが理想ですが、時間がなく突貫工事的に掲載まで済ませたい方は参考にしてみてください。
▼関連記事(indexingAPIの利用)
Google しごと検索のindexingAPI利用を自動化した【ソースコード有】