1

ブートストラップを使用して Joomla テンプレートを構築します。

次のように3つのグリッドを使用します。

<div class="row">
<div id="leftbar" class="col-xs-3">
<jdoc:include type="modules" name="leftbar" />
</div>
<div id="middle-content" class="col-xs-6">
<jdoc:include type="component" />
</div>
<div id="rightbar" class="col-xs-3">
    <jdoc:include type="modules" name="rightbar" />
</div>

ユーザーが私のウェブサイトで「フォーラム」を押すと、私のクネナ フォーラムに移動します。問題は、上記のフォーラムが jdoc の「コンポーネント」を介して読み込まれることです。左バーと右バーの両方を非表示にしても、「col-xs-6」のみです。サイト全体を引き伸ばしたい。

これはブートストラップで変更できるものですか、それとも Joomla の設定ですか? フロントページは 3-6-3 フォーラムは 12 のはずです

4

1 に答える 1

1

countModules()モジュールを表示する前に、メソッドを使用して各位置にモジュールが存在するかどうかを確認する必要があります。

構文は次のとおりです。

<?php if ($this->countModules( 'user1' )) : ?>
  <div class="user1">
    <jdoc:include type="modules" name="user1" style="rounded" />
  </div>
<?php endif; ?>

メイン エリアの幅を計算するためのブロックをもう 1 つ追加して、コードを変更しました。

<?php
$main_area_width = 12;
if($this->countModules( 'leftbar' )) {
  $main_area_width -= 3;
}
if($this->countModules( 'rightbar' )) {
  $main_area_width -= 3;
}
?>

<div class="row">
<?php if ($this->countModules( 'leftbar' )) : ?>
  <div id="leftbar" class="col-xs-3">
    <jdoc:include type="modules" name="leftbar" />
  </div>
<?php endif; ?>
<div id="middle-content" class="col-xs-<?php echo $main_area_width; ?>">
  <jdoc:include type="component" />
</div>
<?php if ($this->countModules( 'rightbar' )) : ?>
  <div id="rightbar" class="col-xs-3">
    <jdoc:include type="modules" name="rightbar" />
  </div>
<?php endif; ?>
</div>

参考:JDocumentHTML/countModules

于 2015-05-28T22:18:43.510 に答える