Concrete5でカスタムテーマの条件ステートメントを作成しました。私のコードの目標は、レイアウトを切り替えることです。現在のページの下に子ページがある場合は<div class="grid_3">
、サブページの項目を一覧表示するための追加のサイドバー()が表示されます。子ページがない場合は、完全なレイアウト(<div class="grid_13">
)が表示されます。
残念ながら、別の結果が得られます。条件ステートメントでおそらく見逃していたことがあります。1つのレイアウトを表示するだけでなく、2つのレイアウトをレンダリングしています。
以下は私のコードがどのように見えるかです:
<? if($c->getNumChildren()) { ?>
<div class="grid_3">
<?php
$bt_sidenav = BlockType::getByHandle('autonav');
$bt_sidenav->controller->orderBy = 'display_asc';
$bt_sidenav->controller->displayPages = 'below';
$bt_sidenav->controller->displaySubPages = 'all';
$bt_sidenav->render('view');
?>
</div>
<div id="main-content-container" class="grid_10">
<div id="main-content-inner">
<?php
$a = new Area('Main');
$a->display($c);
?>
</div>
</div>
<? } else { ?>
<div id="main-content-container" class="grid_13">
<div id="main-content-inner">
<?php
$a = new Area('Main');
$a->display($c);
?>
</div>
</div>
<? } ?>