WordPress
カスタマイズ事例

WORDPRESS CUSTOMIZATION

固定ページの下層ページ一覧を取得し、一覧表示する テーマ販売あり

サイドバーにサブメニューを並べたりしますよね。

会社概要
 代表挨拶
 会社沿革

みたいに。
これを自動でやることができます。
自動でやれれば、会社概要の下層に新たにもう1ページ追加しても、動的に表示してくれますから楽チンです。

まず、functions.php で現在のページのIDから最上位の親のページのオブジェクトを取得する関数を作ります。

function kaiza_get_root_page( $child_id, $root = true ) {

	if ( $child_id == false ) {
		return false;
	}

	while ( $child_id ) {
		$page     = get_post( $child_id );
		$result[] = $page;
		$child_id = $page->post_parent;
	}

	//配列を逆順に(rootを0に)
	$result = array_reverse( $result );

	//rootがtrueの場合0番目(rootページのみ)をセット
	if ( $root == true ) {
		$result = $result[0];
	}

	return $result;
}

サイドバーに親子同階層のliでページ一覧を並べる場合は、テーマのsidebar.phpに下記のように記述します。

<?php
$root_page = kaiza_get_root_page( $post->ID, true );
$thePostID = $root_page->ID;
$children = wp_list_pages('title_li=&child_of='. $thePostID. '&echo=0');

$cid = get_the_ID();
?>

<div class="side-menu">
<ul class="s-navi">
<li class="page_item <?php if($cid==$thePostID){echo 'current_page_item';} ?>">
<a href="<?php echo get_the_permalink($thePostID); ?>"><?php echo get_the_title($thePostID); ?></a>
</li>
<?php
if ( $children ){echo $children;}
?>
</ul>
</div>

【この事例を解決するためのWordPressテーマを購入できます】

現在あなたが利用されているWordPressテーマを活かしたまま、このページの事例を解決できるWordPressテーマを、子テーマとして購入できます。
この子テーマを有効化するだけで、現在お使いのデザインテーマにこの事例解決の機能が自動付与されます。
デザインが入っていないため、一般より格段に低い価格(事例の難易度により200円~1.3万円)です。
※ テーマは買い切りです
※ 自由に改変してお使いいただいて構いません
※ すでに子テーマでサイト運用されている方は、当該子テーマをマージしてください

【100ウェブ新着情報メルマガ】

WordPressカスタマイズ事例やウェブ制作ノウハウの新着情報、お役立ち情報を
リアルタイムにメルマガ配信!