こんにちは、
PHPが理解できればですが、
functions.php
<?php
function multisite_another_blog_has_tag_contents( $blog_ids,$tags = '',$number_posts = -1 ) {
global $wpdb;
foreach ( $blog_ids as $blog_id ) {
switch_to_blog( $blog_id );
query_posts( array('tag'=> $tags ,'posts_per_page' => $number_posts ));
if ( ms_is_switched() ) {
$details = get_blog_details( $blog_id );
echo '<h1><a href="' . esc_url( $details->siteurl ) . '">' . esc_html( $details->blogname ) . '</a></h1>';
if ( have_posts() ) {
while ( have_posts() ) {
the_post();
printf('<p><a href="%1$s">%2$s</a></p>', esc_url( get_permalink() ), get_the_title() );
}
}
}
restore_current_blog();
}
}
?>
テンプレートに
<?php
$blog_ids = array( 29, 24 );//ブログのIDを配列で
$tags = 'アーカイブ化,canvas';//タグ名をカンマ区切りで
$number_posts = 5;//表示件数を数字で
multisite_another_blog_has_tag_contents( $blog_ids, $tags, $number_posts );
?>
注意:ブログのパーマリンク構造によっては、404になる
ブログのパーマリンクが、archives/tag という風になっている場合
http://example.com/wp/archives/tag/customposttype
404になるようです
その場合
http://example.com/wp/tag/customposttype/
といったURLでブログにアクセスできるようにしてください
nobita 様
ご回答ありがとうございます。
PHPは詳しくないですがサイト・タグを指定して表示させるコードですよね?
私の説明不足で申し訳ありません。
通常プラグインなどで関連記事を表示する際
A記事(Aサイト)はaカテゴリに属しているから
Aサイトのaカテゴリに属する記事を関連記事として表示していると思います。
通常はaカテゴリに属しているというのは自動?で読み取っていると思います。
なのでタグを自動?で取得し
A記事(Aサイト)の投稿記事の下に、
1、Aサイト(タグを自動?で取得)関連記事一覧
2、Bサイト(A記事のタグを自動?で取得)関連記事一覧
3、Cサイト(A記事のタグを自動?で取得)関連記事一覧
と、したいと思っています。
1、はプラグイン等で表示できます。
2、3、はやはり指定しないと出来ないのかなと思い、
タグ指定をカスタムフィールドで対応しようと思ったのですがエラー・・・。
もし、難しいようなら WordPressの手法以外でも、
http://tenman.info/labo/snip/?p=5126
な、形で jQueryでインクルードすることもできます(一覧の記事量がものすごく多くなければ )
よかったら、試してみてください
実際にこのやり方で表示しているサンプル
http://tenman.info/labo/snip/?page_id=1236
左のタイトルリンクにhoverすると右側に、記事がロードされます
おまけ:
固定ページでjsonを出力させて、それを別のブログで、受け取って表示する方法
http://tenman.info/labo/snip/?p=1870
後は、xml-rpc rss などをキーワードに調べるといろいろ出てくると思います。