Перейти к содержанию
Официальный форум поддержки Simpla

Отдельная категория со своим стилем


Рекомендуемые сообщения

Подскажите как сделать отдельную категорию со своим стилем, отличным от других. Предполагаю что потребуется создать отдельный tpl и выводить категорию через $category->id или еще как. Но уже который день что не пробую ничего не получается. Может кто то уже делал такое и поделится опытом?

Ссылка на сообщение
Поделиться на другие сайты

Файл products.tpl :

{if $category->id == 5}
{$wrapper = 'index2.tpl' scope=parent} {* Если нужна оболочка другая *}
{include file='products2.tpl'} {* Шаблон для категории с АйДи = 5 *}
{else}
Код файла products.tpl
{/if}
Ссылка на сообщение
Поделиться на другие сайты
  • 3 месяца спустя...
  • 5 лет спустя...

 

Файл products.tpl :

{if $category->id == 5}
{$wrapper = 'index2.tpl' scope=parent} {* Если нужна оболочка другая *}
{include file='products2.tpl'} {* Шаблон для категории с АйДи = 5 *}
{else}
Код файла products.tpl
{/if}

а как без оболочки без ничего, просто вывести 1 категорию отдельно?

Ссылка на сообщение
Поделиться на другие сайты

$cat = $this->categories->get_category(7);

знал бы я куда это вставлять

 

 

Файл products.tpl :

{if $category->id == 5}
{$wrapper = 'index2.tpl' scope=parent} {* Если нужна оболочка другая *}
{include file='products2.tpl'} {* Шаблон для категории с АйДи = 5 *}
{else}
Код файла products.tpl
{/if}
<!-- Меню каталога -->
			<div id="catalog_menu">
					
			{* Рекурсивная функция вывода дерева категорий *}
			{function name=categories_tree}
			{if $category->id == 1171}
			<ul>
			{foreach $categories as $c}
				{* Показываем только видимые категории *}
				{if $c->visible}
					<li>
						{if $c->image}<img src="{$config->categories_images_dir}{$c->image}" alt="{$c->name|escape}">{/if}
						<a {if $category->id == $c->id}class="selected"{/if} href="catalog/{$c->url}" data-category="{$c->id}">{$c->name|escape}</a>
						{categories_tree categories=$c->subcategories}
					</li>
				{/if}
			{/foreach}
			</ul>
			{/if}
			{/function}
			{categories_tree categories=$categories}
			</div>
			<!-- Меню каталога (The End)-->	

Вот так вставляю не пашет((

Ссылка на сообщение
Поделиться на другие сайты

знал бы я куда это вставлять

 

<!-- Меню каталога -->
			<div id="catalog_menu">
					
			{* Рекурсивная функция вывода дерева категорий *}
			{function name=categories_tree}
			{if $category->id == 1171}
			<ul>
			{foreach $categories as $c}
				{* Показываем только видимые категории *}
				{if $c->visible}
					<li>
						{if $c->image}<img src="{$config->categories_images_dir}{$c->image}" alt="{$c->name|escape}">{/if}
						<a {if $category->id == $c->id}class="selected"{/if} href="catalog/{$c->url}" data-category="{$c->id}">{$c->name|escape}</a>
						{categories_tree categories=$c->subcategories}
					</li>
				{/if}
			{/foreach}
			</ul>
			{/if}
			{/function}
			{categories_tree categories=$categories}
			</div>
			<!-- Меню каталога (The End)-->	

Вот так вставляю не пашет((

То нужно в php вставлять и будет работать лишь для одной категории. Куда проще так сделать: 

 

в view/IndexView.php после:

$this->design->assign('categories', $this->categories->get_categories_tree(array('visible' => 1)));

добавляем:

$this->design->assign('all_categories', $this->categories->get_categories());

и теперь в шаблоне можно получать категории по иду таким способом: 

{$all_categories[7]}
Ссылка на сообщение
Поделиться на другие сайты

 

То нужно в php вставлять и будет работать лишь для одной категории. Куда проще так сделать: 

 

в view/IndexView.php после:

$this->design->assign('categories', $this->categories->get_categories_tree(array('visible' => 1)));

добавляем:

$this->design->assign('all_categories', $this->categories->get_categories());

и теперь в шаблоне можно получать категории по иду таким способом: 

{$all_categories[7]}

Белый экран тогда и ошибки

 Object of class stdClass could not be converted to string in /Smarty/libs/sysplugins/smarty_internal_templatebase.php(165) : eval()'d code on line 154
[11-Feb-2018 16:21:48 Europe/Moscow] PHP Catchable fatal error:  Object of class stdClass could not be converted to string in /compiled/enar/13e68c93245ebafc598fb5a21f8bb760dc3f4dea.file.header.tpl.php on line 154
Ссылка на сообщение
Поделиться на другие сайты

Ну так правильно! Выводите что хотите от нужной категории, а не просто {$all_categories[7]}.

{$all_categories[7]->name} или {$all_categories[7]->url}
Ссылка на сообщение
Поделиться на другие сайты

 

Ну так правильно! Выводите что хотите от нужной категории, а не просто {$all_categories[7]}.

{$all_categories[7]->name} или {$all_categories[7]->url}

большое спасибо, получилось. +100% к здоровью!

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...