Страница 1 из 1
Как сделать Вывод Способов Доставки и Оплат?
Добавлено: 04.11.2018, 00:56
exid
Имеется ввиду: Как сделать вывод активных Способов Доставки и Способов Оплат на странице товара?
На данный момент там просто текст, который можно отредактировать.
Нужно вывести активные элементы через foreach !
Вывести нужно Заголовки, Описания и Фото Способов Доставки и Способов Оплат.
Кто то может в этом помочь?
Добавлено: 04.11.2018, 06:38
korshunov
Смотреть, как выводится на странице корзины и действовать по аналогии.
Добавлено: 04.11.2018, 06:52
OkayCMS
Лишние запросы с каждой карточки товара, при том что способы доставки и оплаты почти никогда не меняются. Зачем их тянуть оттуда, а не просто вписать текстом?
Добавлено: 04.11.2018, 23:34
exid
korshunov писал(а):Смотреть, как выводится на странице корзины и действовать по аналогии.
Делал не получилось.
Код: Выделить всё
{if $deliveries}
{foreach $deliveries as $delivery}
{$delivery->name|escape}<br>
{$delivery->description}
{/foreach}
{/if}
Может что то не так делал...
Добавлено спустя 11 часов 13 минут:OkayCMS писал(а):Лишние запросы с каждой карточки товара, при том что способы доставки и оплаты почти никогда не меняются. Зачем их тянуть оттуда, а не просто вписать текстом?
Дело не в этом, а в том, что бы людям просто было при редактировании своего проекта.
Сейчас, что бы убрать лишние пункты надо лезть в код и обычный клиент с его никаким знанием программирования этого сделать просто не сможет.
Ну так что, подскажете может по делу или такой возможности в системе не предусмотрено?
Добавлено: 17.02.2019, 21:22
Elanlar
exid писал(а):Кто то может в этом помочь?
недавно один из заказчиков потребовал такое. пришлось добавить в ProductView.php перед
такой код
Код: Выделить всё
// Отображение оплаты
$payment_methods = $this->payment->get_payment_methods();
$this->design->assign('payment_methods', $payment_methods);
// Отображение доставки
$deliveries = $this->delivery->get_deliveries();
$this->design->assign('deliveries', $deliveries);
// Отзывы о товаре
а в product.tpl вывел эти кодом
Код: Выделить всё
<ul>
<div>Способы оплаты и доставки</div>
{if $payment_methods}
{foreach $payment_methods as $payment_method}
<li><div><img class="" src="{$payment_method->image|escape|resize:50:50:false:$config->resized_payments_dir}"/></div><span>{$payment_method->name|escape}</span></li>
{/foreach}
{/if}
{if $deliveries}
{foreach $deliveries as $delivery}
<li><div><img class="" src="{$delivery->image|resize:50:50:false:$config->resized_deliveries_dir}"/></div><span>{$delivery->name|escape}</span></li>
{/foreach}
{/if}
</ul>
Добавлено: 18.02.2019, 06:30
OkayCMS
exid писал(а):Сейчас, что бы убрать лишние пункты надо лезть в код и обычный клиент с его никаким знанием программирования этого сделать просто не сможет.
Ну так что, подскажете может по делу или такой возможности в системе не предусмотрено?
А зачем лезть в код? Это же переводы. Прям из клиентской части, когда залогинены под админом наводите на пунктик, "редактировать перевод" и стираете его значение.
Добавлено: 18.02.2019, 14:55
Elanlar
OkayCMS писал(а):А зачем лезть в код? Это же переводы. Прям из клиентской части, когда залогинены под админом наводите на пунктик, "редактировать перевод" и стираете его значение.
OkayCMS писал(а):Буквально на днях основной разработчик прислал цитату:
Программисты постоянно соревнуются со Вселенной: они пытаются создать всё более идиотоустойчивые программы, а Вселенная создаёт всё более совершенных идиотов. Пока что Вселенная побеждает.
Тема знакомая для Вас :)
Добавлено: 19.02.2019, 07:50
OkayCMS
Elanlar писал(а):OkayCMS писал(а):А зачем лезть в код? Это же переводы. Прям из клиентской части, когда залогинены под админом наводите на пунктик, "редактировать перевод" и стираете его значение.
OkayCMS писал(а):Буквально на днях основной разработчик прислал цитату:
Программисты постоянно соревнуются со Вселенной: они пытаются создать всё более идиотоустойчивые программы, а Вселенная создаёт всё более совершенных идиотов. Пока что Вселенная побеждает.
Тема знакомая для Вас :)
True story, bro. True story.
Добавлено: 21.04.2024, 12:42
rox
Оновлено okaycms v4.4.01.Додаємо код у Okay/Controllers/ProductController.php
- Спойлер
- Импортуємо класс DeliveriesEntity у наш контреллер
Тепер, ми можемо впровадити залежність типу DeliveriesEntity у метод render
Код: Выделить всё
public function render(
//...
DeliveriesEntity $deliveriesEntity, // Доданий аргумент
$url
)
Отримання списку доставок та передача до шаблону
Код: Выделить всё
$this->design->assign('deliveries', $deliveriesEntity->find(['visible' => 1]));
2. Вивід у product.tpl
Код: Выделить всё
{if $deliveries}
{foreach $deliveries as $delivery}
<img src="{$delivery->image|resize:50:50:false:$config->resized_deliveries_dir}"/>
<span>{$delivery->name|escape}</span>
{/foreach}
{/if}
P.S пробував додати до page.tpl все чудово працює