2016-08-17 20 views
0

これを行う方法については、インターネットで精練しています。私がやりたいことは次のとおりです:他のWPサイトのブログ投稿を1つのWPブログに表示

WP Site "A"は、私が走っている他のWPサイトと同じ種類のポータルとして使用されます。また、それ自身のブログ記事もあります。

WPサイト「B」は、アクティブなブログを持つ2つの外部サイトのうち最初のものです。投稿にはサムネイルとタイトルが付いています。

WPサイト「C」は、アクティブなブログを持つ2つの外部サイトのうちの2番目のサイトです。投稿にはサムネイルとタイトルが付いています。

WPサイト「A」は、ホームページにサムスンのホームページ、リンク先のポストタイトルを掲載します。私はサイト「B」と「C」から新しいブログ投稿を引き出し、サムネイル、投稿タイトル、外部サイトにつながるリンクを同じ方法で表示したいと思います。私はまた、新しいブログが作成されるときに一緒に点在する、日付の昇順でそれらを表示したいと思います。

誰でもこれを行う方法や、外部の投稿を別のブログにフィードする方法はありますか?役立つならば、これらのブログはすべて同じホスティングアカウントにあり、同じDBにアクセスできます。私はいくつかのRSSベースのソリューションを見つけています(実際には、それらのうちの1つを使用して以前のホームページに投稿しましたが、これはもっと複雑です)。しかし、それらを構造に統合する方法がわかりませんブログ "A"を作成して、それらがすべて同じ石造格子でグループ化されるようにします。

ありがとうございました。

答えて

2

WP REST API(http://v2.wp-api.org)をご覧ください。これはまさにあなたが探しているものです。 WP REST APIを使用すると、あなたが管理しているサイトの投稿のEVERYの要素を取得し、他のサイトに表示することができます。 (しかし、あなたはまた、認証のいくつかのフォームを実装する必要があります!)

例要求:

http://www.example.com/wp/wp-json/wp/v2/venue 

「会場は」私は実際のコードで使用するカスタムポストタイプです。この例の要求は、サイトからすべての会場を取得するために行われます。

例応答:

[ 
    { 
    "id": 20, 
    "date": "2016-06-08T16:37:23", 
    "date_gmt": "2016-06-08T16:37:23", 
    "guid": { 
     "rendered": "http://www.example.com/wp/?post_type=venue&p=20" 
    }, 
    "modified": "2016-06-20T11:45:22", 
    "modified_gmt": "2016-06-20T11:45:22", 
    "slug": "aquarium-club", 
    "type": "venue", 
    "link": "http://www.example.com/wp/venue/aquarium-club/", 
    "title": { 
     "rendered": "Aquarium Club" 
    }, 
    "content": { 
     "rendered": "<p>Aquarium Club. That&#8217;s OK. 7765e546uzfkjglh</p>\n<p>&nbsp;</p>\n<style>\n.gmap-iframe-container {\nmax-width: 100%;\n}\n.gmap-iframe {\nwidth: 100%;\nheight: 200px;\nmin-width:100%;\n}\n</style>\n<div class=\"gmap-iframe-container\">\n<iframe src=\"https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2695.565888030695!2d19.052103115616678!3d47.49836967917771!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x4741dc402a04eee3%3A0x6869564cd433693c!2sAkv%C3%A1rium+Klub!5e0!3m2!1shu!2shu!4v1466147278469\" frameborder=\"0\" style=\"border:0\" allowfullscreen class=\"gmap-iframe\"></iframe></p>\n" 
    }, 
    "excerpt": { 
     "rendered": "<p>Aquarium Club. That&#8217;s OK. 7765e546uzfkjglh &nbsp;</p>\n" 
    }, 
    "featured_media": 0, 
    "menu_order": 0, 
    "format": "standard", 
    "tags": [], 
    "meta_data": { 
     "youtube_embed": "https://www.youtube.com/embed/xBW7DglTDGs" 
    }, 
    "_links": { 
     "self": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/venue/20" 
     } 
     ], 
     "collection": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/venue" 
     } 
     ], 
     "about": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/types/venue" 
     } 
     ], 
     "wp:attachment": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/media?parent=20" 
     } 
     ], 
     "wp:term": [ 
     { 
      "taxonomy": "post_tag", 
      "embeddable": true, 
      "href": "http://www.example.com/wp/wp-json/wp/v2/tags?post=20" 
     } 
     ], 
     "curies": [ 
     { 
      "name": "wp", 
      "href": "https://api.w.org/{rel}", 
      "templated": true 
     } 
     ] 
    } 
    }, 
    { 
    "id": 18, 
    "date": "2016-06-08T15:55:04", 
    "date_gmt": "2016-06-08T15:55:04", 
    "guid": { 
     "rendered": "http://www.example.com/wp/?post_type=venue&#038;p=18" 
    }, 
    "modified": "2016-06-08T15:55:04", 
    "modified_gmt": "2016-06-08T15:55:04", 
    "slug": "durer-kert", 
    "type": "venue", 
    "link": "http://www.example.com/wp/venue/durer-kert/", 
    "title": { 
     "rendered": "Dürer Kert" 
    }, 
    "content": { 
     "rendered": "" 
    }, 
    "excerpt": { 
     "rendered": "" 
    }, 
    "featured_media": 19, 
    "menu_order": 0, 
    "format": "standard", 
    "tags": [], 
    "meta_data": { 
     "youtube_embed": "https://www.youtube.com/embed/w9saGGpnKlk" 
    }, 
    "_links": { 
     "self": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/venue/18" 
     } 
     ], 
     "collection": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/venue" 
     } 
     ], 
     "about": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/types/venue" 
     } 
     ], 
     "wp:featuredmedia": [ 
     { 
      "embeddable": true, 
      "href": "http://www.example.com/wp/wp-json/wp/v2/media/19" 
     } 
     ], 
     "wp:attachment": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/media?parent=18" 
     } 
     ], 
     "wp:term": [ 
     { 
      "taxonomy": "post_tag", 
      "embeddable": true, 
      "href": "http://www.example.com/wp/wp-json/wp/v2/tags?post=18" 
     } 
     ], 
     "curies": [ 
     { 
      "name": "wp", 
      "href": "https://api.w.org/{rel}", 
      "templated": true 
     } 
     ] 
    } 
    }, 
    { 
    "id": 15, 
    "date": "2016-06-08T14:52:40", 
    "date_gmt": "2016-06-08T14:52:40", 
    "guid": { 
     "rendered": "http://www.example.com/wp/?post_type=venue&#038;p=15" 
    }, 
    "modified": "2016-06-08T15:41:27", 
    "modified_gmt": "2016-06-08T15:41:27", 
    "slug": "kobuci-kert", 
    "type": "venue", 
    "link": "http://www.example.com/wp/venue/kobuci-kert/", 
    "title": { 
     "rendered": "KOBUCI Kert" 
    }, 
    "content": { 
     "rendered": "<p>This is KOBUCI Kert.</p>\n" 
    }, 
    "excerpt": { 
     "rendered": "<p>This is KOBUCI Kert.</p>\n" 
    }, 
    "featured_media": 17, 
    "menu_order": 0, 
    "format": "standard", 
    "tags": [], 
    "meta_data": { 
     "youtube_embed": "https://www.youtube.com/embed/zwNBKh6ghOY" 
    }, 
    "_links": { 
     "self": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/venue/15" 
     } 
     ], 
     "collection": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/venue" 
     } 
     ], 
     "about": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/types/venue" 
     } 
     ], 
     "wp:featuredmedia": [ 
     { 
      "embeddable": true, 
      "href": "http://www.example.com/wp/wp-json/wp/v2/media/17" 
     } 
     ], 
     "wp:attachment": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/media?parent=15" 
     } 
     ], 
     "wp:term": [ 
     { 
      "taxonomy": "post_tag", 
      "embeddable": true, 
      "href": "http://www.example.com/wp/wp-json/wp/v2/tags?post=15" 
     } 
     ], 
     "curies": [ 
     { 
      "name": "wp", 
      "href": "https://api.w.org/{rel}", 
      "templated": true 
     } 
     ] 
    } 
    }, 
    { 
    "id": 13, 
    "date": "2016-06-08T14:12:38", 
    "date_gmt": "2016-06-08T14:12:38", 
    "guid": { 
     "rendered": "http://www.example.com/wp/?post_type=venue&#038;p=13" 
    }, 
    "modified": "2016-06-08T14:12:38", 
    "modified_gmt": "2016-06-08T14:12:38", 
    "slug": "mupa", 
    "type": "venue", 
    "link": "http://www.example.com/wp/venue/mupa/", 
    "title": { 
     "rendered": "MÜPA" 
    }, 
    "content": { 
     "rendered": "<p>MÜPA is MÜPA. Not bad from a building, is it? A lot of concerts and stuff.</p>\n" 
    }, 
    "excerpt": { 
     "rendered": "<p>MÜPA is MÜPA. Not bad from a building, is it? A lot of concerts and stuff.</p>\n" 
    }, 
    "featured_media": 14, 
    "menu_order": 0, 
    "format": "standard", 
    "tags": [], 
    "meta_data": { 
     "youtube_embed": "https://www.youtube.com/embed/YnOW2rUXuSg" 
    }, 
    "_links": { 
     "self": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/venue/13" 
     } 
     ], 
     "collection": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/venue" 
     } 
     ], 
     "about": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/types/venue" 
     } 
     ], 
     "wp:featuredmedia": [ 
     { 
      "embeddable": true, 
      "href": "http://www.example.com/wp/wp-json/wp/v2/media/14" 
     } 
     ], 
     "wp:attachment": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/media?parent=13" 
     } 
     ], 
     "wp:term": [ 
     { 
      "taxonomy": "post_tag", 
      "embeddable": true, 
      "href": "http://www.example.com/wp/wp-json/wp/v2/tags?post=13" 
     } 
     ], 
     "curies": [ 
     { 
      "name": "wp", 
      "href": "https://api.w.org/{rel}", 
      "templated": true 
     } 
     ] 
    } 
    }, 
    { 
    "id": 8, 
    "date": "2016-06-07T08:36:40", 
    "date_gmt": "2016-06-07T08:36:40", 
    "guid": { 
     "rendered": "http://www.example.com/wp/?post_type=venue&#038;p=8" 
    }, 
    "modified": "2016-06-08T13:22:39", 
    "modified_gmt": "2016-06-08T13:22:39", 
    "slug": "some-venue", 
    "type": "venue", 
    "link": "http://www.example.com/wp/venue/some-venue/", 
    "title": { 
     "rendered": "National Concert Hall" 
    }, 
    "content": { 
     "rendered": "<p>This is the next venue for REST API. Just to see more than one. This should be the general description of this venue. This is the venue &#8211; what is it? 5324</p>\n" 
    }, 
    "excerpt": { 
     "rendered": "<p>This is the next venue for REST API. Just to see more than one. This should be the general description of this venue. This is the venue &#8211; what is it? 5324</p>\n" 
    }, 
    "featured_media": 9, 
    "menu_order": 0, 
    "format": "standard", 
    "tags": [], 
    "meta_data": { 
     "youtube_embed": "https://www.youtube.com/embed/camVVzjGheQ" 
    }, 
    "_links": { 
     "self": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/venue/8" 
     } 
     ], 
     "collection": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/venue" 
     } 
     ], 
     "about": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/types/venue" 
     } 
     ], 
     "wp:featuredmedia": [ 
     { 
      "embeddable": true, 
      "href": "http://www.example.com/wp/wp-json/wp/v2/media/9" 
     } 
     ], 
     "wp:attachment": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/media?parent=8" 
     } 
     ], 
     "wp:term": [ 
     { 
      "taxonomy": "post_tag", 
      "embeddable": true, 
      "href": "http://www.example.com/wp/wp-json/wp/v2/tags?post=8" 
     } 
     ], 
     "curies": [ 
     { 
      "name": "wp", 
      "href": "https://api.w.org/{rel}", 
      "templated": true 
     } 
     ] 
    } 
    }, 
    { 
    "id": 7, 
    "date": "2016-06-07T08:33:13", 
    "date_gmt": "2016-06-07T08:33:13", 
    "guid": { 
     "rendered": "http://www.example.com/wp/?post_type=venue&#038;p=7" 
    }, 
    "modified": "2016-06-08T13:20:27", 
    "modified_gmt": "2016-06-08T13:20:27", 
    "slug": "orchestra-hall", 
    "type": "venue", 
    "link": "http://www.example.com/wp/venue/orchestra-hall/", 
    "title": { 
     "rendered": "Music Academy" 
    }, 
    "content": { 
     "rendered": "<p>This is a venue &#8211; it is made of a custom post type, and I get it with REST API.</p>\n" 
    }, 
    "excerpt": { 
     "rendered": "<p>This is a venue &#8211; it is made of a custom post type, and I get it with REST API.</p>\n" 
    }, 
    "featured_media": 11, 
    "menu_order": 0, 
    "format": "standard", 
    "tags": [], 
    "meta_data": { 
     "youtube_embed": "https://www.youtube.com/embed/ZL6BFCxNGZ8" 
    }, 
    "_links": { 
     "self": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/venue/7" 
     } 
     ], 
     "collection": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/venue" 
     } 
     ], 
     "about": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/types/venue" 
     } 
     ], 
     "wp:featuredmedia": [ 
     { 
      "embeddable": true, 
      "href": "http://www.example.com/wp/wp-json/wp/v2/media/11" 
     } 
     ], 
     "wp:attachment": [ 
     { 
      "href": "http://www.example.com/wp/wp-json/wp/v2/media?parent=7" 
     } 
     ], 
     "wp:term": [ 
     { 
      "taxonomy": "post_tag", 
      "embeddable": true, 
      "href": "http://www.example.com/wp/wp-json/wp/v2/tags?post=7" 
     } 
     ], 
     "curies": [ 
     { 
      "name": "wp", 
      "href": "https://api.w.org/{rel}", 
      "templated": true 
     } 
     ] 
    } 
    } 
] 

注: - 上記の例の結果は、私のニーズに合わせてカスタマイズビットがある - ので、あなたは少し他の結果を見ることができます。そしてあなたも、あなたの好みに応じてカスタマイズすることができます - あなたは、あなたが他のサイトから必要なあらゆる情報を得ることができます見ることができるように

http://www.example.com/wp/wp-json/wp/v2/venue/20 

: - シングル会場の要求は次のようになります。

+0

お返事ありがとうございます。私は実際にここでもう一つの関連する質問を見た後、もっと早くRest APIを見ていました。 1から10までのスケールで、私が記述したように物事を統合するために実際にコードを更新する複雑さはどこでランク付けされていますか?私はPHPに堪能ですが、これはかなり複雑かもしれないようです。何かご意見は? – mg33

+0

1から10まで? REST APIはプラグインです(実際にはWP 4.5のWPコア機能になる予定でした)ので、インストールはケーキです。次に、APIページ(および他のチュートリアル)では、必要なデータを取得するためのサンプルコードがたくさん用意されています。画面に応答が表示されると、必要な場所に配列要素を配置してフォーマットするゲームになります。結果を見るには、いくつかのテストソフトウェア(私はChromeのPostman拡張機能を使用します)を使用することをお勧めします。認証は別の問題です。あなたが選んだタイプによっては難しいかもしれません。 –

+0

また、もう1つの質問 - REST APIを使用して私が説明したことを実行し、他のサイトの投稿を特定のサイトに単にリンクすることは可能でしょうか?例:ブログAでブログBの投稿へのリンクをクリックすると、ブログBがその投稿の詳細ページに表示されますか? – mg33

関連する問題