別のウィジェットエリアにあるWebサイトからの最近の投稿を表示するプラグインはありますか?
質問
あるWebサイトから最近の投稿またはコンテンツ関連の投稿のタイトルを取り、別のWebサイトのウィジェットエリアに表示したいと思います。これを行う方法、おそらく標準の「最近の投稿」ウィジェットへの適応があるに違いないと思いますか?
あるサイトからRSSフィードを使用し、別のサイトにタイトルを表示する前に、同様のことをしました。ただし、これはワードプレス以外のサイトにあり、ここで同じ結果を達成する方法はよくわかりません。
理想的には、RSSフィードを使用せずに実行したいと考えています。また、どの投稿を表示するかを具体的に制御することもできます。
解決
これを達成するには3つの方法があります。2つは非常にコード集約的で、もう1つはすでに組み込まれています。
RSS
ハンドがダウンしている、あなたがやりたいことをする最も簡単な方法は、RSSウィジェットを使用することです。 WordPressにはすでにRSSウィジェットがコアに組み込まれているため、フィードとボイラを指定する必要があります!
ウィジェットはデフォルトでタイトルを表示しますが、投稿のコンテンツ、著者、公開日を追加することもできます。フロントエンドディスプレイを微調整してレイアウトに合わせて、他のウィジェットと同様にCSSに残されます。
この方法では、他のサイトにまったくアクセスする必要はありません。(CSSのスタイリング以外)コーディングはまったく必要ありません。
カスタムコード
ダイレクトデータベースアクセスがある場合(これはそうです)、他のコンテンツをロードする1つのサイトにスクリプトを追加できます。これは2つの方法のいずれかを実行できます。
- WordPress Bootstrapファイルを含める(
wp-blog-header.php
)2番目のサイト内にWordPressをロードします。次に、標準のWordPressクエリ関数を使用して投稿を取得し、必要なものを何でも実行できます。 - 直接データベースクエリを使用して、データベースから情報をすばやく引き出します。あなたはを見ています
wp_posts
何でもテーブルpost_type=post
とpost_status=publish
. 。タイトルとコンテンツを取得するだけで、必要なことは何でもしてください。
私は実際にこの方法をクライアントサイトで使用しました。彼らは既存のPHP/MySQL駆動型のホームページを持っていて、外部WordPressブログにリンクを追加したいと考えていました。あなたが行くなら 彼らのサイト, 、フロントページにブログ投稿のリストが表示されます。フロントページは、WordPressデータベースを照会する独自のCMSによって生成され、最近の投稿のリストを見つけ、解析し、表示します。
XML-RPC
WordPressには、コアに組み込まれた素晴らしいXMLリモートプロシージャコールシステムがあります。このシステムにより、外部アプリケーション(デスクトップアプリケーション、iPhoneアプリ、その他のWebサイト)が、XML形式のメッセージを送信および受信することにより、WordPressとリモートで対話することができます。必要なことを正確に行うXML-RPCメソッドもあります。 metaWeblog.getRecentPosts
.
したがって、投稿をリクエストするサイトのXML-RPC 'on'をnow 'on' 'on' 'on'にします。次に、送信します metaWeblog.getRecentPosts
リクエスト http://yoursite.com/xmlrpc.php
次のパラメーターを指定します。
- あなたが働いているブログのID(通常、単一のサイトの場合は0)
- WordPressユーザー名
- WordPressパスワード
- 返品したい投稿の数
WordPressがログインし、クエリを実行して投稿を取得し、それぞれに次のことを含む最近の投稿(指定されているとおり)のリストを含むXMLオブジェクトを返します。
- dateCreated - 公開日を投稿します
- ユーザーID - 投稿者のID
- PostID - 投稿自体のID
- 説明 - コンテンツを投稿します
- タイトル - 記事のタイトル
- リンク - パーマリンク後
- パーマリンク - パーマリンク後
- カテゴリ - ポストカテゴリの配列
- mt_excerpt - 抜粋後
- mt_text_more - 続きのテキストを読んでください
- mt_allow_comments - コメントが開いているか閉じているか
- mt_allow_pings - pingが開いているか閉じているか
- mt_keywords - 投稿タグの配列
- wp_slug - スラッグを投稿します
- wp_password - パスワードを投稿します
- wp_author_id - 投稿者のID
- wp_author_display_name - 投稿者の名前を表示します
- date_created_gmt - 公開日(GMT時間として)ポスト
- post_status - 公開ステータスを投稿します
- カスタムフィールド - カスタムフィールドの配列
- 粘着性 - 投稿が「粘着性」としてマークされているかどうか
私が書いた MetaWeblog APIに固有のチュートリアル (WordPressによって実装されています)しばらく前。私も書いた XML-RPC APIの使用方法を説明するもの WordPress内から外部WordPressシステムに呼び出しを行います。それはあなたを始めるのに役立つかもしれません。
単なる「最近の」投稿ではなく特定の投稿を取得したい場合は、そのためのメソッド呼び出しもあります。電話してください metaWeblog.getPost
必要な投稿のIDとWordPressのユーザー名とパスワードを指定します。この方法は、上記と同じデータを含むXMLオブジェクトとして単一の投稿を返します。