トップページの先頭に、特定のコンテンツやウィジェットを配置する

Raindropsテーマには、ページ内の特定の位置にコンテンツを表示するアクションフックがあります。このアクションフックと、page-featured.phpテンプレートで使われているraindrops_poster()関数を使って、トップページに任意の投稿やページ、ウィジェットを表示する方法を紹介します。

add_action( 'raindrops_after_nav_menu', 'my_poster' );

function my_poster() {

 $page_lists= array(
 array(
array( 'type'=> array( 'page', 2 ), 'class'=> 'unit size1of3' ),
array( 'type'=> array( 'post', array( 25194, 25160 ) ), 'class'=> 'unit size1of3' ),
array( 'type'=> array( 'widget', 'WP_Widget_Tag_Cloud', $instans= '', $args = '' ), 'page_id'=> 2, 'class'=> 'unit size1of3' )
 ),
 );
 if ( is_front_page() ) {
 echo '

'; raindrops_poster( $page_lists ); echo '
'; } }
$page_listsは、多重配列になっていますが、内側の2番目のarrayは、行を表します。上の例の3番目の3つの配列が、それぞれ、表示するコンテンツを指定する配列になります。
array( 'type'=> array( 'page', 2 ), 'class'=> 'unit size1of3' ),

は、

array( 'type'=> array( 'ページ', ページのID ), 'class'=> 'unit size1of3がボックスのサイズで三分の一のサイズを表します 分母は1-5まで使えます' ),

以下のように指定すると、2行にわたって表示されます。(行数は、さらに多くもできます)

$page_lists= array(
 array(
array( 'type'=> array( 'page', 2 ), 'class'=> 'unit size1of3' ),
array( 'type'=> array( 'post', array( 25194, 25160 ) ), 'class'=> 'unit size1of3' ),
array( 'type'=> array( 'widget', 'WP_Widget_Tag_Cloud', $instans= '', $args = '' ), 'page_id'=> 2, 'class'=> 'unit size1of3' )
 ),
    array(
array( 'type'=> array( 'page', 2 ), 'class'=> 'unit size1of3' ),
array( 'type'=> array( 'post', array( 25194, 25160 ) ), 'class'=> 'unit size1of3' ),
array( 'type'=> array( 'widget', 'WP_Widget_Tag_Cloud', $instans= '', $args = '' ), 'page_id'=> 2, 'class'=> 'unit size1of3' )
 ),
 );

ホットな話題や、注目してほしい話題を、時系列の配置に関係なく自由に配置することができます。

詳細は、page-featured.phpにサンプルコードがありますので、そちらをご確認ください


コメントは受け付けていません。