【コピペOK】WordPressのAPIでSEO情報を取得する手順

★悩み★
・WordPressのAPIで全記事のSEO情報を取得することはできるのだろうか。
・All in One SEOで設定したSEO情報をWordPressのAPI経由で取得したい。
・WordPressのAPIでSEO情報を取得する手順を知りたい。


こういった「悩み」に答えます。

★本記事の内容★
WordPressのAPIでSEO情報を取得する手順をご紹介


これからご紹介する「WordPressのAPIでSEO情報を取得する手順」を実践したことで、筆者は30分以内でWordPressのAPI経由でSEO情報を取得できました。

記事の前半では「WordPressのAPIでSEO情報を取得するための準備」を解説します。
記事の後半では「”WordPressのAPIでSEO情報を取得する”APIの作成手順」をご紹介します。

この記事を読み終えることで、「WordPressのAPIでSEOを取得する手順とWordPressのAPI作成手順」を把握した状態になります。

ちなみに、「WordPressのAPIとは何か?」を知りたい方は、以下の記事をご覧ください。

WordPressのAPIでSEO情報を取得する手順

「WordPressのAPIでSEO情報を取得する手順」に関してご紹介します。

★WordPressのAPIでSEO情報を取得までの流れ★
手順1:WordPressで「All in One SEO」をインストール
手順2:WordPressでSEO情報を取得するAPIを作成
手順3:WordPressでSEO情報を取得するAPIの動作確認


上記の流れで、WordPressのAPIでSEO情報を取得することができます。

以降で、「WordPressのAPIでSEO情報を取得までの流れ」の各手順に関してご紹介します。

手順1:WordPressで「All in One SEO」をインストール

「手順1:WordPressで「All in One SEO」をインストール」に関してご紹介します。

WordPressのAPIでSEO情報を取得するためには、「All in One SEO」のインストールが必要です。


WordPressに「All in One SEO」をインストールする手順に関しては、以下の記事をご覧ください。


既に「All in One SEO」をインストールされている方は、本手順を省略してください。


以上で、「手順1:WordPressで「All in One SEO」をインストール」は完了です。

手順2:WordPressでSEO情報を取得するAPIを作成

「手順2:WordPressでSEO情報を取得するAPIを作成」に関してご紹介します。

以下の記事を参照し、WordPress管理画面で「テーマのための関数(functions.php)」を編集する画面(下図)を開きましょう。


今回は、以下のコードを上図の赤四角に貼り付け、ページ末尾の「ファイルを更新」をクリックします。

<?php //子テーマ用関数
if ( !defined( 'ABSPATH' ) ) exit;

//子テーマ用のビジュアルエディタースタイルを適用
add_editor_style();

//以下に子テーマ用の関数を書く
//記事のIDとタイトル、SEOキーワードを返却する関数を設定
add_action('rest_api_init', function() {
    register_rest_route( 'wp/v2', '/org_api', array(
        'methods' => 'GET',
        'callback' => 'org_api',
    ));
});

//記事のIDとタイトル、SEOキーワードを返却する関数
function org_api( ) {
    $contents = array(); //APIで返却する値用の配列を宣言
    $myQuery = new WP_Query(); //取得したいデータを設定
    $param = array(
    //    'order' => 'DESC'
    'posts_per_page'   => -1
    );
    $myQuery->query($param); //WordPressを検索し、データの取得
     if($myQuery->have_posts()):
         //記事情報で処理の繰り返し
         while ( $myQuery->have_posts() ) : $myQuery->the_post();
                $ID = get_the_ID(); //記事のIDを取得
                $title = get_the_title(); //記事のタイトルを取得
	        $keyword = get_post_meta($ID, "_aioseop_keywords", true); //記事のSEOキーワードを取得
                //APIで返却する値を設定
                array_push($contents, array(
                    "title" => $title,
                    "id" => $ID,
	            "keyword" => $keyword
                ));
         endwhile;
     endif;
     return $contents;
 }



上のコードにより、WordPressで執筆した全記事の「ID」/「タイトル」/「SEOキーワード」を取得できます。

「get_post_meta($ID, “_aioseop_keywords”, true);」を利用することで、記事に設定されたSEO用のキーワードを取得できます。


以上で、「手順2:WordPressでSEO情報を取得するAPIを作成」は完了です。

手順3:WordPressでSEO情報を取得するAPIの動作確認

「手順3:WordPressでSEO情報を取得するAPIの動作確認」に関してご紹介します。

Webブラウザを起動し、以下のURLを開きましょう。
http://<WordPressのIPアドレス>/wp-json/wp/v2/org_api


Webブラウザで上記URLにアクセスすることで、WordPressでSEO情報を取得するAPIを実行できます。

上図のフォーカス部分に着目したところ、以下記事の「All in One SEO Packで設定したキーワード」(下図の赤枠)の取得ができています。


以上で、「手順3:WordPressでSEO情報を取得するAPIの動作確認」は完了です。

上記3手順で、WordPressのAPIでSEO情報を取得することができました。

【まとめ】WordPressのAPIでSEO情報を取得する手順

今回の記事を通して、「WordPressのAPIでSEO情報を取得する手順」をご紹介することで、以下の悩みを解消しました。

★悩み★
・WordPressのAPIで全記事のSEO情報を取得することはできるのだろうか。
・All in One SEOで設定したSEO情報をWordPressのAPI経由で取得したい。
・WordPressのAPIでSEO情報を取得する手順を知りたい。


WordPressのAPIでSEO情報を取得する手順?」で悩んでいるあなたにこの記事が少しでも役に立てれば幸いです。

コメント