У меня есть поле, которое содержит три позиции модуля внутри. Теперь цель состоит в том, чтобы когда позиция модуля загружалась одна, ее ширина должна составлять 100% поля; когда загружены две позиции модулей, ширина каждого из них должна быть 50%; и наконец, когда все три позиции загружены, на каждой должно быть по 33%. Как я могу установить эти условия с наименьшим кодированием? мой код теперь выглядит примерно так:
<?php if ($this->countModules( 'user1 or user2 or user3' )) : ?>
<div style="width:860px; margin:10px auto;">
<?php if ($this->countModules( 'user3' )) : ?>
<div style="width:33%; float:left; min-height:100px;"><jdoc:include type="modules" name="user3" style="xhtml" /></div>
<?php endif; ?>
<?php if ($this->countModules( 'user2' )) : ?>
<div style="width:34%; float:left; min-height:100px;"><jdoc:include type="modules" name="user2" style="xhtml" /></div>
<?php endif; ?>
<?php if ($this->countModules( 'user1' )) : ?>
<div style="width:33%; float:left; min-height:100px;"><jdoc:include type="modules" name="user1" style="xhtml" /></div>
<?php endif; ?>
</div>
<?php endif; ?>
подробнее:
Я думаю определить каждое особое условие, но таким образом я не знаю, как сравнивать "три" (или более) позиции друг с другом. то есть я знаю, когда я хочу ِ Отобразить только одну из двух позиций (а не обе), я должен использовать это:
<?php if ($this->countModules( 'user1 xor user2' )) : ?>>
Но если я хочу сравнить одну позицию с двумя другими позициями одновременно; Какой будет код? что-то похожее на это: ?
<?php if ($this->countModules( 'user1 xor user2 or user3' )) : ?>
в приведенном выше коде я хочу показать только user1 или только одну из позиций user2 или user3. Это правда?
Спасибо