異なる投稿タイプを紐付けるプラグイン「Posts 2 Posts」

異なる投稿タイプを紐付けるプラグイン「Posts 2 Posts」

1.紐付けの設定

テーマのfunctions.phpに紐付けるアイテムを登録します。
今回はサンプルで ‘wordpress_tips’ 投稿タイプのアイテムを ‘portfolio’ 投稿タイプのページで表示するように登録しました。


// カスタム投稿タイプの紐付け
function custom_post_relation() {
	p2p_register_connection_type( array(
		'name' => 'plugin_relation', // 紐付けグループの名称
		'from' => 'wordpress_tips', // 出力されるアイテム
		'to' => 'portfolio' // 出力する投稿タイプ
	) );
}
add_action( 'p2p_init', 'custom_post_relation' );

 

2.紐付けるアイテムを選択

編集画面にメタボックスが表示されます。
(今回の例では ‘portfolio’ カスタム投稿タイプ)
posts2posts
投稿ごとに、紐付けるアイテムを選択できます。

3.紐付けたアイテムの出力

紐付けたアイテムを各テンプレートを編集し出力します。
(今回の例では single-portfolio.php のループ内)

通常の出力と同じように、WP_Queryを使って出力できます。


<?php
$args = array(
	'connected_type' => 'plugin_relation', // function.php で登録した紐付けグループの名称
	'connected_items' => get_queried_object() // 紐付けられた記事の情報の取得
);
?>
<?php $loop = new WP_Query( $args ); ?>
<?php if($loop -> have_posts()): ?>
	<ul>
	<?php while($loop -> have_posts()): $loop->the_post();?>
		<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
	<?php endwhile; ?>
	</ul>
<?php endif; ?>
<?php wp_reset_postdata(); ?>

商品などを扱うサイトでは商品とメーカーとの紐付けて表示させるなど、かゆいところに手が届くプラグインです。
今回はご紹介できませんでしたが、ユーザーと紐付けもできたり、さまざまな用途や使い方ができそうです。

SNSシェア

WP TECH WordPress技術専門 Tips

コーポレートサイトへ

WP TECH WordPress技術専門 Tips

採用サイトへ