Нужна помощь с php

#1 1 ноября 2011 в 15:56
Здравствуйте!
У меня на сайте sasovo.net имеется правая колонка сайта. Так вот, если в данной колонке (позиция right) не включено ни одного модуля, то колонка все равно отображается, точнее остается ее ширина. В файле шаблона имеется такой код:

  1. <?php if (cmsCountModules("right")) { ?>
  2. <td width="204" valign="top" id="right" rowspan="4" style="min-width:0px;"><?php cmsModule("right"); ?></td>
  3. <?php } ?>
Как я понимаю здесь и идет проверка на наличие модулей в позиции right.
Но почему она тогда отображается при отсутствии модулей?

Это видно например здесь sasovo.net/astro/horoscope.html

Сам я не очень силен в php поэтому прошу вашей помощи.
Спасибо
#2 1 ноября 2011 в 16:31
Rossoman, всё зависит от версии движка.
Что у Вас возвращает функция? cmsCountModules("right") ?
сделайте вывод в произвольном месте echo cmsCountModules("right");
отпишитесь сюда о результатах.
#3 1 ноября 2011 в 16:45
Версия движка 1.8.1

Сделал вывод. Под панелью навигации слева стала выводится цифра sasovo.net/astro/horoscope.html
Цифра выводится на каждой странице.
#4 1 ноября 2011 в 16:59
если модуль возвращает после отработки false, например модуль авторизации при залогиненном пользователе, то cmsCountModules все равно вернет истину. Исправить на текущий момент это никак нельзя, только путем каких-либо ухищрений.
#5 1 ноября 2011 в 17:11
Хмм...)) То есть, как я понял, если на какой то странице имеется модуль в этой позиции, то все равно на каждой странице будет отображаться колонка? Точнее <td> в данном случае все равно будет выводится?
#6 1 ноября 2011 в 17:19
Пока поборол с помощью css, но это конечно не тот вариант который хотелось бы. А нельзя что то наподобие джумлы сделать?
  1. <?php if ($this->countModules('comments')) : ?>
  2. <div class="comments<?php echo $mainmod_width; ?>">
  3. <jdoc:include type="modules" name="comments" style="afterburner" />
  4. </div>
  5. <?php endif; ?>
Всегда прекрасно работает!
В данном случае у меня в парамс.ини mainmod = 0 на джумле.
Нельзя в инстанте что то подставлять как в джумле?
Я может выше глупость написал)) Но говорю, что не силен в php)
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.