Здравствуйте! Не получается самостоятельно справиться со следующей задачкой: Шаблон списка категорий выводит список ссылок-заголовков^ 1.Материал1 2. Материал2 3. Материал3 Нужно, чтобы список выводился так же, НО ссылками были бы заголовки только определенных статей. 1.Материал1 2. Материал2 3. Материал3 Т.е., параметр материалов "Заголовок как ссылка:" у Материала1 был активным, у Материалов 2 и 3 -- нет, и шаблон списка категорий отобразил бы их указанным выше образом. Пробовал редактировать код в файле шаблон\components\com_content\views\category\tmpl\default_items.php Так было: Код (PHP): <a href="<?php echo $item->link; ?>"> <?php echo $item->title; ?> </a> <?php $this->item = $item; echo JHTML::_('icon.edit', $item, $this->params, $this->access) ?> Так стало: Код (PHP): <?php if ($item->link_titles) : ?> <a href="<?php echo $item->link; ?>"> <?php echo $item->title; ?> </a> <?php else: ?> <?php echo $item->title; ?> <?php endif; ?> <?php $this->item = $item; echo JHTML::_('icon.edit', $item, $this->params, $this->access) ?> Но $item->link_titles всегда воспринимается пустым. Как осуществить проверку параметра Заголовок как ссылка материалов категории в этом контексте? Буду признателен любой помощи.
посмотри содержимое переменной $item print_r($item); и посмотри содержимое переменной $this print_r($this); может внутренности наведут на мысль
Спасибо, оказалось, что в $item хранится структура статьи, например, в $this->items[1] содержится такой кусок: Код (CODE): ... [attribs] => show_title=1 link_titles=1 show_intro=0 show_section= link_section= show_category= link_category= show_vote= show_author= show_create_date= show_modify_date= show_pdf_icon= show_print_icon= show_email_icon= language= keyref= readmore= [hits] => 17 ... т.е. в структуре $this->items[1]->attribs хранится нужный мне параметр, но из-за своих скудных познаний, вытащить его не получается: Код (CODE): echo $this->items[1]->attribs->show_title; echo $this->items[1]->attribs['show_title']; выдает пустой символ и символ "s" соответственно. Без результатно использовал parse_str($this->items[1]->attribs), предварительно пытаясь выпилить разделители, но уж больно они хитрые, не удаляются. Как можно вытащить нужный параметр из структуры attribs?
Получил нужный параметр. Заменил разделители на символ '&' и использовал parse_str, но, наверняка, вынуть его можно гораздо проще. Вот код, может кому-н. пригодится: Код (PHP): <?php $attr_str=$item->attribs; $attr_str=str_replace(chr(10), '&', $attr_str); parse_str($attr_str, $attr_arr); if ($attr_arr['link_titles']) : ?> <a href="<?php echo $item->link; ?>"> <?php echo $item->title; ?> </a> <?php else: echo $item->title; ?> <?php endif; ?>