Доброго времени суток! Вот хочу изменить вывод спецификаций Teaser’а. Может не доступно выражаюсь, вот выводится медиа в категории таким образом: А хотелось бы вот так как на фото ниже. Что бы спецификации не выводились в столбик. Не списком все вниз, а что бы колонка итема была ограничена по высоте, и спецификации что не влазят переходили бы в другой столбик, как то так.
и? Код (CODE): /media/zoo/applications/Ваше приложение/templates/catalog/renderer это примерный путь. Далее например каталог product: Размечаем позиции: Далее размечаем условия: И далее применяем правила в CSS Вперед и с песнями
Можно хоть на каком то примере по поводу "Применяем правила в CSS" немножко подробнее. В моем случае, условия описаны так: Код (PHP): <?php if ($this->checkPosition('specification')) : ?> <p class="pos-specification"> <?php echo $this->renderPosition('specification', array('style' => 'pipe')); ?> </p> <?php endif; ?> Параметры дергаются из класса "class="pos-specification"". Но в пхп я не особо силен. И где искать CSS-ый файл?
Вы можете найти CSS файл своего шаблона и внизу переопределить правила: Код (html): .pos-specification {color: red !important;} Это просто как пример... т.е. у Вас есть данные, а верстку (разметку) сделали уже в тизер.пхп (там хоть таблицу рисуйте), а уже в CSS высоту / ширину / позицию / отступы и так далее. Пример teaser.php: Код (PHP): <?php /** * @package com_zoo * @author YOOtheme http://www.yootheme.com * @copyright Copyright (C) YOOtheme GmbH * @license http://www.gnu.org/licenses/gpl.html GNU/GPL */ // no direct access defined('_JEXEC') or die('Restricted access'); // init vars $params = $item->getParams('site'); ?> <?php if (($params->get('template.teaseritem_media_alignment') == "above") && $this->checkPosition('media')) : ?> <div class="pos-media media-<?php echo $params->get('template.teaseritem_media_alignment'); ?>"> <?php echo $this->renderPosition('media', array('style' => 'block')); ?> </div> <?php endif; ?> <?php if ($this->checkPosition('title')) : ?> <h1 class="pos-title"> <?php echo $this->renderPosition('title'); ?> </h1> <?php endif; ?> <?php if ($this->checkPosition('meta')) : ?> <p class="pos-meta"> <?php echo $this->renderPosition('meta'); ?> </p> <?php endif; ?> <?php if ($this->checkPosition('subtitle')) : ?> <h2 class="pos-subtitle"> <?php echo $this->renderPosition('subtitle'); ?> </h2> <?php endif; ?> <?php if (($params->get('template.teaseritem_media_alignment') == "top") && $this->checkPosition('media')) : ?> <div class="pos-media media-<?php echo $params->get('template.teaseritem_media_alignment'); ?>"> <?php echo $this->renderPosition('media', array('style' => 'block')); ?> </div> <?php endif; ?> <div class="floatbox"> <?php if ((($params->get('template.teaseritem_media_alignment') == "left") || ($params->get('template.teaseritem_media_alignment') == "right")) && $this->checkPosition('media')) : ?> <div class="pos-media media-<?php echo $params->get('template.teaseritem_media_alignment'); ?>"> <?php echo $this->renderPosition('media', array('style' => 'block')); ?> </div> <?php endif; ?> <?php if ($this->checkPosition('content')) : ?> <div class="pos-content"> <?php echo $this->renderPosition('content', array('style' => 'block')); ?> </div> <?php endif; ?> </div> <?php if (($params->get('template.teaseritem_media_alignment') == "bottom") && $this->checkPosition('media')) : ?> <div class="pos-media media-<?php echo $params->get('template.teaseritem_media_alignment'); ?>"> <?php echo $this->renderPosition('media', array('style' => 'block')); ?> </div> <?php endif; ?> <?php if ($this->checkPosition('links')) : ?> <p class="pos-links"> <?php echo $this->renderPosition('links', array('style' => 'pipe')); ?> </p> <?php endif; В нем есть разметка: Вывести заголовок: Код (PHP): <?php if ($this->checkPosition('subtitle')) : ?> <h2 class="pos-subtitle"> <?php echo $this->renderPosition('subtitle'); ?> </h2> <?php endif; ?> Вам по аналогии можно сделать: Код (html): <table border="1"> <tr><td> <?php if ($this->checkPosition('specification')) : ?> <p class="pos-specification"> <?php echo $this->renderPosition('specification', array('style' => 'pipe')); ?> </p> <?php endif; ?> </td><td>СЮДА другая переменная</td><td>СЮДА другая переменная</td></tr> </table>
Емае.... Точно, я чето не додул что в пхп, то что размечено "дивами" это уже разметка. Вот спасибо Вам!!!! Очень сильно помогли! Плюсанул еще вчера) Спасибо!!!
Привет всем! Благодаря вашим постам решил поставленною задачу, но столкнулся с другой в zoo http://nedwizh.istrawebdesign.ru/квартиры-в-подмосковье Код (CODE): <table class="tablelist"> <tbody><tr class="trnorm"> <td class="numtable"><?php if ($this->checkPosition('dop1')) : ?><?php echo $this->renderPosition('dop1', array('style' => 'pipe')); ?><?php endif; ?></td> <td class="otmkad"><?php if ($this->checkPosition('dop2')) : ?><?php echo $this->renderPosition('dop2', array('style' => 'pipe')); ?><?php endif; ?></td> <td class="price"><?php if ($this->checkPosition('dop3')) : ?><?php echo $this->renderPosition('dop3', array('style' => 'pipe')); ?><?php endif; ?></td> <td class="plosh"><?php if ($this->checkPosition('dop4')) : ?><?php echo $this->renderPosition('dop4', array('style' => 'pipe')); ?><?php endif; ?></td> <td class="plosh"><?php if ($this->checkPosition('dop5')) : ?><?php echo $this->renderPosition('dop5', array('style' => 'pipe')); ?><?php endif; ?></td> <td class="foto"><?php if ($this->checkPosition('dop6')) : ?><?php echo $this->renderPosition('dop6', array('style' => 'pipe')); ?><?php endif; ?></td> <td class="opis"><?php if ($this->checkPosition('dop7')) : ?><?php echo $this->renderPosition('dop7', array('style' => 'pipe')); ?><?php endif; ?></td> <td class="stage"><?php if ($this->checkPosition('dop8')) : ?><?php echo $this->renderPosition('dop8', array('style' => 'pipe')); ?><?php endif; ?></td> <td class="komnat"><?php if ($this->checkPosition('dop9')) : ?><?php echo $this->renderPosition('dop9', array('style' => 'pipe')); ?><?php endif; ?></td> <td class="gde"><?php if ($this->checkPosition('dop10')) : ?><?php echo $this->renderPosition('dop10', array('style' => 'pipe')); ?><?php endif; ?></td> <td class="gde"><?php if ($this->checkPosition('dop11')) : ?><?php echo $this->renderPosition('dop11', array('style' => 'pipe')); ?><?php endif; ?></td> </tr></tbody></table> Подскажи пожалуйста! Как можно скрыть пустые столбцы таблицы?
Да с этим согласен! Делом в том, что мне нужен универсальный тизер, под разные категории, с другими классами, поэтому вот такой и большой мой тизер. Может есть какая либо переменная которая скрывает столбец при нуле инфы....может я что ни так называю))) просто я еще учусь писать код --- добавлено: Feb 26, 2015, первое сообщение размещено: Feb 26, 2015 --- Хотя, я и сам вижу что слишком все усложнил, много просто всего перепробовал за день
В Zoo есть типы - под разные каталоги можно разные типы. Если прям скрывать, то: у вас есть проверка php If this... Поставьте ее перед ячейкой, понятно?
В общем сделал так в зоо, привязав к каждой вкладке свой шаблон, таким образом получил для каждого пункта меню свой уникальный тизер) может и с легка замороченно