Sign in to follow this  
hayeli

новая страница

Recommended Posts

support
2 часа назад, hayeli сказал:

Добрый вечер. Подскажите как сделать новую страницу?

вот тут нету нечего для создания страницы

 

Здравствуйте!

В Админке - Категории и товары.

Зайдите например внутрь категори Информация и нажмите кнопку Добавить.

В закладке Данные выбиретие Тип контента - Страница.

Появится новая страница в категории Информация и она будет видна в магазине, внизу, в списке страниц Информация.

Можно легко сделать dropdown меню информация, т.е. в полоску добавить все страницы из Информация, по аналогии с dropdown меню Разделы.

Share this post


Link to post
Share on other sites
allef

а раздел  в админке Содержание - Страницы зачем? там что расположено?

И еще вопрос в шаблоне мне надо вывести 2 меню, содержащие разный набор страниц, вверху, например, Оплата Доставка Акции, а внизу Доставка О нас и тд

То есть в коде {content_listing template="links" parent="information"} я могу как то указать, ну например по id, какие страницы в конкретном меню надо вывести.

Потому что создавать 2 папки для разных меню и дублировать в них страницу Доставка не вариант.

Share this post


Link to post
Share on other sites
support
1 час назад, allef сказал:

а раздел  в админке Содержание - Страницы зачем? там что расположено?

И еще вопрос в шаблоне мне надо вывести 2 меню, содержащие разный набор страниц, вверху, например, Оплата Доставка Акции, а внизу Доставка О нас и тд

То есть в коде {content_listing template="links" parent="information"} я могу как то указать, ну например по id, какие страницы в конкретном меню надо вывести.

Потому что создавать 2 папки для разных меню и дублировать в них страницу Доставка не вариант.

Системные страницы.

Например страница оформления заказ, корзина и т.д. и т.п.

Можно редактировать эти страницы и добавлять какой-то свой текст, код, указывать свой шаблон для стрнаицы оформления заказа, к примеру.

1 час назад, allef сказал:

То есть в коде {content_listing template="links" parent="information"} я могу как то указать, ну например по id, какие страницы в конкретном меню надо вывести.

 

Нет, id перечислить нельзя, нужно указать parent.

Так а почему нельзя дублировать?!

Продублируйте и просто опция - Показывать в меню не включайте.

т.е. эти дубли, категории нигде и никто видеть не будет кроме Вас, в админке.

 

Share this post


Link to post
Share on other sites
allef

мне надо в 2х разных меню вывести одну и ту же страницу. Если я создам 2 папки и в каждой по странице доставке, то получится дубль страницы с одним и тем же содержимым.

 

Share this post


Link to post
Share on other sites
support

 

4 минуты назад, allef сказал:

мне надо в 2х разных меню вывести одну и ту же страницу. Если я создам 2 папки и в каждой по странице доставке, то получится дубль страницы с одним и тем же содержимым.

 

Во втором случае просто html-кодом ссылку добавьте да и всё.

т.е. в шаблоне foreach ... /foreach </ul>

т.е. просто добавьте: foreach ... /foreach <li>ссылка</li></ul>

Что б дублей не делать никаких.

Share this post


Link to post
Share on other sites
allef

а если в середину? так то получается либо до, либо после. В целом этот момент не продуман

еще вопрос, мне надо добавить свою php функцию. куда её добавить в какой файл?

 

Share this post


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

а если в середину? так то получается либо до, либо после. В целом этот момент не продуман

еще вопрос, мне надо добавить свою php функцию. куда её добавить в какой файл?

 

В середину получается, что никак.

Только сверху или снизу

Смотря что за функция.

В принципе, можно через Админку - Расширения - Тэги пользователя.

Добавить php код и затем в шаблон вставить метку с тэгом, в списке Тэги пользователя будет видна метка, которую нужно вставить в шаблон, в колонке Вызов (метка для шаблона)

Share this post


Link to post
Share on other sites
allef

я хочу функцию, чтоб просклонять окончание "товар/товаров/товары" в зависимости от количества в корзине

а код php в шаблон как вставить?

 

Share this post


Link to post
Share on other sites
allef
function sklonenie($n, $forms) {
 return $n%10==1&&$n%100!=11?$forms[0]:($n%10>=2&&$n%10<=4&&($n%100<10||$n%100>=20)?$forms[1]:$forms[2]);
 }

echo sklonenie(число , array('товар', 'товара', 'товаров') ) ;

Причем число это - {shopping_cart_total}

Share this post


Link to post
Share on other sites
allef

В меню сортировку пунктов выставила, но на сайте они не так рассортированы, судя по всему по дате создания идут

Share this post


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

В меню сортировку пунктов выставила, но на сайте они не так рассортированы, судя по всему по дате создания идут

Почитайте описание параметра order в Админке - Расширение - Тэги.

+ вот в faq ответ по поводу сортировки - 

 

55 минут назад, allef сказал:

function sklonenie($n, $forms) {
 return $n%10==1&&$n%100!=11?$forms[0]:($n%10>=2&&$n%10<=4&&($n%100<10||$n%100>=20)?$forms[1]:$forms[2]);
 }

echo sklonenie(число , array('товар', 'товара', 'товаров') ) ;

Причем число это - {shopping_cart_total}

Сделайте новую смарти метку sklonenie

и например используйте её затем так: {sklonenie text={shopping_cart_total}}

Возьмите за основу наример самую простую метку {page_description}

Файл /app/Catalog/function.page_description.php

Скопироуйте function.page_description.php в function.sklonenie.php

В самое файле function.sklonenie.php поменяйте все строки с помощью поиска и замены по всему файлу, page_description на sklonenie

И уже внутри добавьте свой код этой фуцнкии.

Ничего сложного нет.

 

Share this post


Link to post
Share on other sites
support
1 час назад, allef сказал:

В меню сортировку пунктов выставила, но на сайте они не так рассортированы, судя по всему по дате создания идут

Вот прицепил готовый файл funtion.sklonenie.php

Я его не проверял, но, по идее, должно работать.

Положите его в папке /app/Catalog и в админке в опиании товара, в любом шаблоне, т.е. в любом месте можете использовать, к примеру так:

{sklonenie text={shopping_cart_total}}

или:

{sklonenie text=2}

т.е. как-то так это делается, по идее.

function.sklonenie.php

Share this post


Link to post
Share on other sites
allef

Большое спасибо)) Буду разбираться)

Share this post


Link to post
Share on other sites
support
1 час назад, allef сказал:

Большое спасибо)) Буду разбираться)

Если что не получается, пишите.

Share this post


Link to post
Share on other sites
allef

Все настроила по вашей инструкции, и сортировку и функцию. Все удалось без проблем) Спасибо.

Еще момент, по поводу корзины. Она кешируется. То есть я кладу в корзину, а там все еще старое количество, увеличивается только после очистки кеша в админке.. Как то не кешировать этот блок можно?

Share this post


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

Все настроила по вашей инструкции, и сортировку и функцию. Все удалось без проблем) Спасибо.

Еще момент, по поводу корзины. Она кешируется. То есть я кладу в корзину, а там все еще старое количество, увеличивается только после очистки кеша в админке.. Как то не кешировать этот блок можно?

Не должна кэшироваться, в корзине кэш отключён. Проверьте на http://demo2.vamshop.ru

Какая у Вас версия VamShop?!

А то как раз не так давно найден был такой баг и был исправлен, больше 1 единицы нельзя было положить в корзину.

Возьмите из архива https://vamshop.ru/vamshop2.zip

Файл /app/Controller/CartController.php и перепишите к себе.

Видимо, это как раз Вы нарвались на этот баг (ошибку).

Share this post


Link to post
Share on other sites
allef

Вот, http://kotri-shop.ru/

Версия свежая, куплена пару недель назад.

Я сделала свой бокс, точнее микрошаблон -

<a  href="{$cart_link}">{lang}Cart{/lang}</a><br>
{if $order_items}
    {if $order_total_value > 0}
    
    {shopping_cart_total} {sklonenie text={shopping_cart_total}} на {$order_total}
    {/if}
{else}
0 товаров на 0 руб
{/if}

Может поэтому и кешируется? Что то я не учла видимо?

Но я копировала основной микрошаблон, просто удалила из него все лишнее и по другому назвала

Share this post


Link to post
Share on other sites
allef

Еще вопрос, вот у категории у меня две картинки. В одном месте надо показывать именно вторую. Как это сделать?

Share this post


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

Вот, http://kotri-shop.ru/

Версия свежая, куплена пару недель назад.

Я сделала свой бокс, точнее микрошаблон -


<a  href="{$cart_link}">{lang}Cart{/lang}</a><br>
{if $order_items}
    {if $order_total_value > 0}
    
    {shopping_cart_total} {sklonenie text={shopping_cart_total}} на {$order_total}
    {/if}
{else}
0 товаров на 0 руб
{/if}

Может поэтому и кешируется? Что то я не учла видимо?

Но я копировала основной микрошаблон, просто удалила из него все лишнее и по другому назвала

Попробовал добавить в корзину товар, у меня вообще ничего не отображается и не добавляется.

 

1 час назад, allef сказал:

Еще вопрос, вот у категории у меня две картинки. В одном месте надо показывать именно вторую. Как это сделать?

Нужно просто задать свой шаблон, который будет выводить не все картинки, а только вторую и вставить его в нужное место.

В Админке - Расширения - Тэги зайдите в тэг content_images

Внизу нажмите кнопку Создать микро-шаблон из тэга.

Затем в опции псевдоним напримиер пишите my-image-template

В содержимом шаблона всё удалите и оставьте только:

{$images.1.image}

 

Это как раз вывод адреса второй картинки.

 

Всё, затем в нужное место вставляйте Ваш шаблон, например в Админке - Оформление - Шаблоны - Шаблон карточки товара:

{content_images number=1 template="my-image-template"}

 

Либо можете прямо в описание товара в админке вставить вставить, вот так:

{content_images number=1 template="my-image-template" content_id="{$content_id}"}

 

Share this post


Link to post
Share on other sites
support

Вообще лучше конечно не оборачивать корзину новыми метками.

Если Вам нужная всякие там округления, вывод текстов и т.д. Вы можете напрямую это всё сделать smarty тэгами.

Например через replace или ещё как: https://www.smarty.net/docsv2/en/language.modifier.replace.tpl

или foreach использовать, т.е. можон вообще в php не лезть и ничего не делать, а прямо в шаблоне прописать через smarty логику такую простоую функцию.

либо в /app/Catalog/function/shopping_cart.php сразу код прописать.

Для такой простой функции наверное особо смысле нет заводить отдельные метки.

Share this post


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

Попробовал добавить в корзину товар, у меня вообще ничего не отображается и не добавляется. 

Не отображается как раз потому что закешировалась.

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

Поэтому и кешируется, вернула в шаблон стало нормально.

Share this post


Link to post
Share on other sites
support
4 минуты назад, allef сказал:

Не отображается как раз потому что закешировалась.

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

Поэтому и кешируется, вернула в шаблон стало нормально.

Хорошо, что разобрались.

Да, кэшируется всё и вся, что б магазин быстро работал и нагрузки на хостинг не было.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this