Jump to content

Recommended Posts

Здравствуйте. Как сделать так что бы название категории выводилось в теле страницы?
сейчас все выглядит следующим образом - при нажатии на категорию мы попадаем на страницу со всеми товарами категории, но она никак не обозначена кроме выделения меню другим цветом и "хлебных крошек", что для обычного не разбирающегося в интернетах пользователя ничего не дает. Я же хочу между "хлебными крошками" и фильтрами(они у меня идут друг под другом) вывести заголовок категории.

Link to post
Share on other sites

В products.tpl присутствует следующий код??:

{* Заголовок страницы *}{if $keyword}<h1>Поиск {$keyword|escape}</h1>{elseif $page}<h1>{$page->name|escape}</h1>{else}<h1>{$category->name|escape} {$brand->name|escape} {$keyword|escape}</h1>{/if}
Link to post
Share on other sites

нет, ничего подобного там нет, возможно, вырезано тем кто делал магазин изначально.
есть только Хлебные крошки, Постраничная навигация и Фильтр по свойствам

Link to post
Share on other sites
  • 8 years later...

А как вывести название в products.tpl - {$catalog->product->name} вывести название первой категории?

К примеру в категориях идет:

- чайники

-- электро

-- газовые

-- без шнура

и я выбрал электро и газовые, то на сайте в каталоге пишется "газовые", а в карточке товара "электро", как сделать чтобы там и там выводилось "электро"?

Link to post
Share on other sites
5 часов назад, get31 сказал:

А как вывести название в products.tpl - {$catalog->product->name} вывести название первой категории?

К примеру в категориях идет:

- чайники

-- электро

-- газовые

-- без шнура

и я выбрал электро и газовые, то на сайте в каталоге пишется "газовые", а в карточке товара "электро", как сделать чтобы там и там выводилось "электро"?

{$category->path[0]->name}

Link to post
Share on other sites
11 часов назад, Noxter сказал:

{$category->path[0]->name}

не то, выводит главную категорию "Чайники", тот же принцип что и {$category->name|escape}

Link to post
Share on other sites

В View/ProductsView.php перед 

$variants = $this->variants->get_variants(array('product_id'=>$products_ids, 'in_stock'=>true));

Добавьте

$categories = $this->categories->get_product_categories($products_ids);
				foreach($categories as $cat)
				$products[$cat->product_id]->category = $this->categories->get_category((int)$cat->category_id);

И в шаблоне выводите {$product->category->path[0]->name}

 

Link to post
Share on other sites
10 минут назад, MStyle28 сказал:

В View/ProductsView.php перед 


$variants = $this->variants->get_variants(array('product_id'=>$products_ids, 'in_stock'=>true));

Добавьте


$categories = $this->categories->get_product_categories($products_ids);
				foreach($categories as $cat)
				$products[$cat->product_id]->category = $this->categories->get_category((int)$cat->category_id);

И в шаблоне выводите {$product->category->path[0]->name}

 

в view/Products.View.php у меня этот код добавлен, но не отображает как нужно с {$product->category->path[0]->name}, все равно отображает главную категорию((((

Link to post
Share on other sites

Что-то явно не так делаете, перед тем как публиковать я у себя проверил, все работает.

Напишите в skype - mstyle28 попробую помочь.

Link to post
Share on other sites
2 часа назад, MStyle28 сказал:

Что-то явно не так делаете, перед тем как публиковать я у себя проверил, все работает.

Напишите в skype - mstyle28 попробую помочь.

Проверил на чистой Simpla, выводит аналогично.

Хочу узнать правильно ли вы поняли меня, есть к примеру 2 категории с подкатегориями:

- велосипеды (категория)

-- двухколесный (подкатегория)

-- трехколесный (подкатегория)

- ролики (категория)

-- двухколесный (подкатегория)

-- трехколесный (подкатегория)

 

Должен быть вывод категорий или подкатегорий? Потому что у меня выводит категории {$product->category->path[0]->name}.

А мне нужно вывод подкатегорий "двухколесный" если я добавляю все 2 подкатегории к товару

Link to post
Share on other sites

Пробуйте так:

1. В View/ProductsView.php вставить

$cats = $this->categories->get_product_categories($products_ids);
foreach($cats as $cat)
    $products[$cat->product_id]->categories[] = $this->categories->get_category((int)$cat->category_id);

перед   
            $variants = $this->variants->get_variants(array('product_id'=>$products_ids, 'in_stock'=>true));

2. В шаблоне products.tpl

{foreach $product->categories as $c} {$c->name} {/foreach}

 

Link to post
Share on other sites
3 часа назад, phukortsin сказал:

Пробуйте так:

1. В View/ProductsView.php вставить

$cats = $this->categories->get_product_categories($products_ids);
foreach($cats as $cat)
    $products[$cat->product_id]->categories[] = $this->categories->get_category((int)$cat->category_id);

перед   
            $variants = $this->variants->get_variants(array('product_id'=>$products_ids, 'in_stock'=>true));

2. В шаблоне products.tpl

{foreach $product->categories as $c} {$c->name} {/foreach}

 

Спасибо, ваше решение помогло. Нужно добавить еще first

{foreach $product->categories as $c}{if $c@first}{$c->name}{/if}{/foreach}

 

Link to post
Share on other sites
8 часов назад, get31 сказал:

Спасибо, ваше решение помогло. Нужно добавить еще first


{foreach $product->categories as $c}{if $c@first}{$c->name}{/if}{/foreach}

 

Чуть проще минуя цикл:

{if $first = $product->categories|first}
{$first->name}
{/if}

Link to post
Share on other sites
10 часов назад, phukortsin сказал:

Еще проще

{$product->categories[0]->name}

Проще - да, но не совсем правильное. В случае если перебрать массив с заменой ключей твой способ работать будет не правильно или вообще не будет работать и выведет 500 ошибку.

Link to post
Share on other sites
14 часов назад, Noxter сказал:

Проще - да, но не совсем правильное. В случае если перебрать массив с заменой ключей твой способ работать будет не правильно или вообще не будет работать и выведет 500 ошибку.

Делалось под стандартную Simpla. А если "перебрать", то можно натворить такое, что не только мой способ, но и много чего другого сломается.

Если напишете ТОЧНО, как надо "перебрать", чтоб увидеть ошибку, будет любопытно ознакомиться...

Link to post
Share on other sites
4 часа назад, phukortsin сказал:

Делалось под стандартную Simpla. А если "перебрать", то можно натворить такое, что не только мой способ, но и много чего другого сломается.

Если напишете ТОЧНО, как надо "перебрать", чтоб увидеть ошибку, будет любопытно ознакомиться...

"Стандартно" в симпле это работать вообще не будет без доработки вью...

Link to post
Share on other sites
В 19.11.2020 в 18:13, Noxter сказал:

"Стандартно" в симпле это работать вообще не будет без доработки вью...

У меня работает на стандартной Simpla (и мое решение включает изменение view/ProductsView.php).

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...