Jump to content


Photo
- - - - -

Подзаголовок Категории как вывести?

subcategory subtitle category

  • This topic is locked This topic is locked
25 replies to this topic

#1 LeMax

LeMax
  • JBZoo User (rus)
  • User rate: 8.6
  • posts: 308
  • topics: 27

Posted 28 December 2015 - 13:01

1. В шаблоне Сategory (категории) вывести SubTitle Category (подзаголовок категории)

<?php
$this->app->jbdebug->mark('layout::category::start');
$category = $vars['object'];
$title = $this->app->string->trim($vars['params']->get('content.category_title', ''));
$subTitle = $this->app->string->trim($vars['params']->get('content.category_subtitle', ''));
?>

<?php if ($subTitle = $this->app->string->trim($vars['params']->get('content.category_subtitle', ''))) : ?>
<div><?php echo $subTitle; ?></div>
<?php endif; ?>

ОК



2. В шаблоне Subcategory и Category - как вывести свои значения?


Edited by LeMax, 26 January 2016 - 10:16.

  • 0

#2 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 29 December 2015 - 13:04

LeMax, получить объект родительской категории можно в файле:

\media\zoo\applications\jbuniversal\templates\ВАШ_ШАБЛОН\renderer\subcategory\_default.php 

с помощью:

$parentCategory = $subcategory->getParent();
$parentCategory->params->get('content.category_subtitle'); // Получаем subtitle 

  • 2
Изображение
 

#3 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 29 December 2015 - 13:52

LeMax, в нужном месте сделайте вывод:

echo $parentCategory->params->get('content.category_subtitle'); 

  • 0
Изображение
 

#4 LeMax

LeMax
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 8.6
  • posts: 308
  • topics: 27

Posted 14 January 2016 - 07:55

К сожалению вывод не происходит.

Вот содержимое файла:

<?php
defined('_JEXEC') or die('Restricted access');
$this->app->jbdebug->mark('layout::subcategory(' . $vars['object']->id . ')::start');

// set vars
$subcategory = $vars['object'];
$params = $subcategory->getParams('site');
$link = $this->app->route->category($subcategory);
$task = $this->app->jbrequest->get('task', 'category');
$parentCategory = $subcategory->getParent();

// teaser content
$text = $params->get('content.category_teaser_text', '');

// items
$itemsOrder = $vars['params']->get('config.item_order', 'none');
$maxItems = $vars['params']->get('template.subcategory_items_count', 5);
$showCount = $vars['params']->get('template.subcategory_items_count_show', 1);
$items = array();
$image = $this->app->jbimage->get('category_teaser_image', $params);
?>

<div>
  <?php echo $parentCategory->params->get('content.category_subtitle'); ?>
</div>

1. Возможно, что-то делаю не так?

2. Как сделать условие  <?php if ... ?> _____ <?php endif; ?> , чтобы при пустом поле Подзаголовка - вывод не производился


Edited by LeMax, 14 January 2016 - 08:34.

  • 0

#5 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 14 January 2016 - 11:10

1. Возможно, что-то делаю не так?

Посмотрите через var_dump что возвращает  $parentCategory - есть ли там данные?

2. Как сделать условие  _____ , чтобы при пустом поле Подзаголовка - вывод не производился
 

Условие можно сделать следующим способом:

<?php if ($subTitle = $parentCategory->params->get('content.category_subtitle')) : ?>
    <div><?php echo $subTitle; ?></div>
<?php endif; ?>

  • 0
Изображение
 

#6 LeMax

LeMax
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 8.6
  • posts: 308
  • topics: 27

Posted 14 January 2016 - 12:37

Посмотрите через var_dump
 

К сожалению, я не знаю что это и как пользоваться этим

 

 

В итоге каким способом сделать вывод элемента?

 
echo $parentCategory->params->get('content.category_subtitle');  

 

или

 

 
<div><?php echo $subTitle; ?></div> 
 
  • 0

#7 LeMax

LeMax
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 8.6
  • posts: 308
  • topics: 27

Posted 14 January 2016 - 12:45

Чтобы избежать путаницы, еще раз конкретизирую вопрос (ы)

 

1. В шаблоне Сategory (категории) вывести SubTitle Category (подзаголовок категории)

<?php
$this->app->jbdebug->mark('layout::category::start');
$category = $vars['object'];
$title = $this->app->string->trim($vars['params']->get('content.category_title', ''));
$subTitle = $this->app->string->trim($vars['params']->get('content.category_subtitle', ''));
?> 

<?php if ($subTitle = $this->app->string->trim($vars['params']->get('content.category_subtitle', ''))) : ?>
<div><?php echo $subTitle; ?></div>
<?php endif; ?>

ОК

 

 

 

2. В шаблоне Subcategory (подкатегории) вывести SubTitle SubCategory (подзаголовок данной подкатегории)?

<?php
$this->app->jbdebug->mark('layout::subcategory(' . $vars['object']->id . ')::start')
$subcategory = $vars['object'];
$parentCategory = $subcategory->getParent();
?>

<div><?php echo $subTitle; ?></div>

// или

<?php if ($subTitle = $parentCategory->params->get('content.category_subtitle')) : ?>
  <div><?php echo $subTitle; ?></div>
<?php endif; ?>

Вывода не происходит


Edited by LeMax, 21 January 2016 - 09:13.

  • 0

#8 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 14 January 2016 - 13:13

1а) Вывод правильный, все показывается 1б) Как здесь прописать условие _____

Следующим образом:

<?php if ($subTitle = $this->app->string->trim($vars['params']->get('content.category_subtitle', ''))) : ?>
    <div><?php echo $subTitle; ?></div>
<?php ?> 

2а) Вывода не происходит

Вы в нужном, используемом на сайте шаблоне делаете изменения, т.к код 100% рабочий?

2б) Как здесь прописать условие _____

Чуть выше я дал на это ответ

В итоге каким способом сделать вывод элемента?

И тот и тот вариант рабочий. Если необходимо через условие используйте мой пример.

К сожалению, я не знаю что это и как пользоваться этим
 
  • 0
Изображение
 

#9 LeMax

LeMax
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 8.6
  • posts: 308
  • topics: 27

Posted 21 January 2016 - 09:08

код 100% рабочий

 

К сожалению, нет т.к.

 

Если в шаблоне поставить в нужном мне месте - просто:

<div>Демо текст</div>

то все выводится, как мне нужно, в том месте и в том виде

 

 

Если ставить:

<div><?php echo $subTitle; ?></div>

  // или

<?php if ($subTitle = $parentCategory->params->get('content.category_subtitle')) : ?>
  <div><?php echo $subTitle; ?></div>
<?php endif; ?>

то абсолютно ничего не выводится.

 

Т.е. нужно чтобы когда мы переходим список подкатегорий, на самих подкатегориях вывести SubTitle самих себя же

(Картинка субкатегории + Заголовок субкатегории + Подзаголовок субкатегории. Как вывести "Подзаголовок"?)

 

=======

 

СТРУКТУРА:

 

=====

 

Категории "Гималаи" в подзаголовке указан текст "Новинка" - он отображается, поверх картинки, когда мы внутри категории. Как сделать так, чтобы находясь в Категории "Природа" - мы на картинке категории видели текст такой же текст "Новинка".

 

Или другими словами - как клиенту узнать - что это новинка, не заходя внутрь Категории

 

=====

 

Очень прошу помощи в этом вопросе.


Edited by LeMax, 21 January 2016 - 09:28.

  • 0

#10 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 21 January 2016 - 10:30

LeMax, если я вас правильно понял вы хотите вывести текст из категории "Гималаи" в категории "Природа"?


  • 0
Изображение
 





Also tagged with one or more of these keywords: subcategory, subtitle, category

Click to return to top of page in style!