3

ブログに WordPress REST API プラグインをインストールしました。これを使用して、ブログ投稿のコンテンツを別の Web サイト内のパネル ウィンドウにプルしたいと考えています。テキスト コンテンツは問題ありませんが、「注目の画像」の URL の取得についてはよくわかりません。URL を変数に格納し、それをパネル (NON-WORDPRESS サイトのパネル ウィンドウにブログ データを表示する) の背景画像 CSS として使用できるようにします。

返されるデータ フィードの例を次に示します (最初のエントリのみ)。

[{
    "id": 15470,
    "date": "2015-05-21T15:56:31",
    "date_gmt": "2015-05-21T05:56:31",
    "guid": {
        "rendered": "http:\/\/blog2.slq.qld.gov.au\/jol\/?p=15470"
    },
    "modified": "2016-06-06T10:01:53",
    "modified_gmt": "2016-06-06T00:01:53",
    "slug": "test-post-3",
    "type": "post",
    "link": "http:\/\/blog2.slq.qld.gov.au\/jol\/2015\/05\/21\/test-post-3\/",
    "title": {
        "rendered": "test post"
    },
    "content": {
        "rendered": "<p>[slideshow_deploy id=&#8217;15471&#8242;]<\/p>\n<p>WP REST API plugins is great for getting your blog content out into another website.<\/p>\n<div id=\"attachment_15405\" style=\"width: 160px\" class=\"wp-caption alignleft\"><a href=\"http:\/\/blog2.slq.qld.gov.au\/jol\/files\/2014\/08\/Hotel-Metropole-Thursday-Island-1897.jpg\" rel=\"attachment wp-att-15405\"><img class=\"size-thumbnail wp-image-15405\" src=\"http:\/\/blog2.slq.qld.gov.au\/jol\/files\/2014\/08\/Hotel-Metropole-Thursday-Island-1897-150x150.jpg\" alt=\"Hotel Metropole, Thursday Island, 1897\" width=\"150\" height=\"150\" \/><\/a><p class=\"wp-caption-text\">Hotel Metropole, Thursday Island, 1897<\/p><\/div>\n"
    },
    "excerpt": {
        "rendered": "<p>[slideshow_deploy id=&#8217;15471&#8242;] WP REST API plugins is great for getting your blog content out into another website.<\/p>\n"
    },
    "author": 11,
    "featured_media": 15392,
    "comment_status": "open",
    "ping_status": "open",
    "sticky": false,
    "format": "standard",
    "categories": [1],
    "tags": [],
    "_links": {
        "self": [{
            "href": "http:\/\/blog2.slq.qld.gov.au\/jol\/wp-json\/wp\/v2\/posts\/15470"
        }],
        "collection": [{
            "href": "http:\/\/blog2.slq.qld.gov.au\/jol\/wp-json\/wp\/v2\/posts"
        }],
        "about": [{
            "href": "http:\/\/blog2.slq.qld.gov.au\/jol\/wp-json\/wp\/v2\/types\/post"
        }],
        "author": [{
            "embeddable": true,
            "href": "http:\/\/blog2.slq.qld.gov.au\/jol\/wp-json\/wp\/v2\/users\/11"
        }],
        "replies": [{
            "embeddable": true,
            "href": "http:\/\/blog2.slq.qld.gov.au\/jol\/wp-json\/wp\/v2\/comments?post=15470"
        }],
        "version-history": [{
            "href": "http:\/\/blog2.slq.qld.gov.au\/jol\/wp-json\/wp\/v2\/posts\/15470\/revisions"
        }],
        "https:\/\/api.w.org\/featuredmedia": [{
            "embeddable": true,
            "href": "http:\/\/blog2.slq.qld.gov.au\/jol\/wp-json\/wp\/v2\/media\/15392"
        }],
        "https:\/\/api.w.org\/attachment": [{
            "href": "http:\/\/blog2.slq.qld.gov.au\/jol\/wp-json\/wp\/v2\/media?parent=15470"
        }],
        "https:\/\/api.w.org\/term": [{
            "taxonomy": "category",
            "embeddable": true,
            "href": "http:\/\/blog2.slq.qld.gov.au\/jol\/wp-json\/wp\/v2\/categories?post=15470"
        }, {
            "taxonomy": "post_tag",
            "embeddable": true,
            "href": "http:\/\/blog2.slq.qld.gov.au\/jol\/wp-json\/wp\/v2\/tags?post=15470"
        }]
    }
}]

これで、主役の画像のエントリが次のようになっていることがわかります。

"featured_media": 15392,

さらに下の「_links」オブジェクトの下に、次の行があります。

"https:\/\/api.w.org\/featuredmedia": [{
    "embeddable": true,
    "href": "http:\/\/blog2.slq.qld.gov.au\/jol\/wp-json\/wp\/v2\/media\/15392"
}],

その URL を使用しようとすると、明らかに別の JSON フィードが引き戻され、実際の注目の画像 URL が次のように引き戻されるようです。

"guid": {
    "rendered": "http:\/\/blog2.slq.qld.gov.au\/jol\/files\/2014\/08\/NT-app2.png"
},

そのパスを適切な URL に変換できたら、それを変数として格納して使用できます。ここで何が起きてるの?これは別の JSON フィード内の JSON フィードのようなものですか?

注目の画像の URL を抽出するにはどうすればよいですか? 親フィードからすべてを利用できる JSON フィードから HTML コンテンツを作成することには慣れていますが、このパターンには慣れていません。

4

0 に答える 0