alexivchenko
-
Публикаций
359 -
Зарегистрирован
Сообщения, опубликованные alexivchenko
-
-
11 минут назад, Alex000 сказал:
Файл product.tpl, переделок хватает, просто не думал, что для получения среза важно на какой странице он выводится. Ну как ещё подробнее, вроде простая задача для тех кто разбирается, получит нулевой и первый элемент массива. В карточке товара (product.tpl) выводятся фото товара, их может быть разное количество, нужно вывести только первую и вторую. Я не знаю как ещё подробнее описать.
Распечатайте массив вариантов на странице product.tpl, найдите нужные ключи и работайте в коде с ними. Как еще подробнее описать.
-
5 часов назад, Alex000 сказал:
Всем привет, код приведённый ниже выводит товары на странице товара принадлежащие этому же бренду, а как вывести товары принадлежащие этой же категории?
{get_products var=cat_brand_products brand_id=$product->brand_id category_id=$category->id sort='rand' in_stock=1 limit=10} {if $cat_brand_products} <h2>Похожие товары по бренду</h2> <div class="itemslist1 row owl-carousel12 owl-theme"> {foreach $cat_brand_products as $product} <div class="item_col items myitems"> {include file="_myproduct.tpl"} </div> {/foreach} </div> {/if}
Ваш код не полный, видимо прописан еще «универсальный виджет».
Нужны еще файлы view/View.php и api/Products.php
-
2 часа назад, StudioPanda сказал:
Добрый день! Может кто-нибудь все же подскажет?
Чтобы вывести для каждого товара:
Берем за пример стандартный файл в корне ./yandex.php
Ищем
print " <offer id='$p->variant_id' available='true'> <url>".$simpla->config->root_url.'/products/'.$p->url.$variant_url."</url>";
Подставляем ниже
print"<adult>true</adult>";
Чтобы получилось
print " <offer id='$p->variant_id' available='true'> <url>".$simpla->config->root_url.'/products/'.$p->url.$variant_url."</url>"; print"<adult>true</adult>";
И сохраняем. Теперь все продукты будут иметь элемент "adult" в фиде yandex.xml
Дя выборки определенного товара, обращайтесь.
-
52 минуты назад, StudioPanda сказал:
Добрый день! Может кто-нибудь все же подскажет?
Напишите в личных сообщениях ссылку на сайт с фидом
-
7 часов назад, get31 сказал:
Правильно, но если это убрать будет нормально выводиться, НО возникает другая проблема: если в админке ставим количество бесконечно какому-то варианту, то покажет страницу product_stock.tpl (нет в наличии)
Непонятно зачем вы дергаете вьюшку, не проще вашу манипуляцию реализовать внутри вью?
Стукните в личку, думаю разберёмся за час. -
-
1 час назад, megauser сказал:
Да убирал прям всё, выходит окно авторизации и всё
Через режим браузера «инкогнито» пробовали зайти в панель? Может кеш на стороне хостинга.
-
10 минут назад, simpler сказал:
Нужно именно доработку для самостоятельной установки, т.к. имеется несколько сайтов, и в дальнейшем может пригодится
Могу вытащить и расписать куда и что.
-
В 25.11.2022 в 19:04, nigga сказал:
Дано: версия simpla 1.4
Задача: в админке категории сделать включатель/выключатель её показа в основном дереве категорий сайта, не скрывая сам url и остальные ссылки на эту категорию.
Подскажите в какой файл лезть и какой код вставлять?
Вам проще обновить Simpla до последней актуальной версии, даже если там многое переделано.
А так, новое поле в БД categories по типу enabled, в Storefront.class.php ищем вывод дерева категорий и прописываем новое поле в WHERE, так же в admin/Storefront.admin.php ищем вывод категорий, добавляем новое поле, в дизайне админа добавляем переключатель в категориях. -
3 часа назад, simpler сказал:
Доброго времени суток!
Ищу доработку, которую уже установил и использовал ранее на сайте, сейчас хочу на другой её установить, но не могу найти исходники.
Суть доработки - создавать описания для связок категория + бренд.
В админке, на странице описания категории можно добавить описание для бренда этой категории, как это выглядит - на скриншоте (заполняется тайтл, дескрипшн, тело страницы) https://ibb.co/0DrBCHm
Помню что БД создается таблица s_category_brand
и в шаблоне используется переменные $category_brand
Авторы доработки откликнитесь или помогите найти решение как это установить
Проще выдернуть код из уже готового и перенести его на новый сайт. Если интересно, пишите, помогу.
-
3 часа назад, Alex000 сказал:
Иииии.....???? )))
и псё)))
-
2 часа назад, xikarx сказал:
Изловил еще одну проблему, чтобы не создавать новой темы - спрошу здесь. Я не уверен, что связано с заменой версии Smarty, но вроде проблема появилась после обновления.
Короче суть - при создании заказа письмо о заказе на админский email приходит с заголовком "<без темы>", до этого прихоили с заголовком "Новый заказ №ххх".
полез разбираться. в исходниках писем наблюдаю такое
Subject: =?utf-8?B??=,
до этого, в Subject передавалось сообщение о номере заказа в закодированном виде, типа так:
Subject: =?utf-8?B?0J3QvtCy0YvQuSDQt9Cw0LrQsNC3IOKEljQ0NzU=?=
Вопрос - куда это вообще копать? Это вопросы к серверу, к движку, к Smarty, email-серверу? Я этой темы вообще не знаю, ни разу не сталкиваося
какой скрипт/служба ответственны за передачу в http заголовки темы письма?
В Гугле куча теоретической инфы о заголовках, а как и где они формируются при создании и пересылке электронных писем я не нашел. Может правильно не заню как гугла спросить...
В файле /simpla/design/html/email_order_admin.tpl
Находим
{$subject = "Новый заказ №`$order->id`" scope=parent}
и меняем у scope parent на root
и так по всем файлам админки
-
25 минут назад, Alex000 сказал:
Спасибо. Как я понимаю нужно в файле simpla/design/html/settings.tpl создать поля для ввода данных, в базе данных создать поля для хранения данных и в файле Simpla/SettingsAdmin.php получать эти данные. Если напишите свой комментарий который мне поможет буду благодарен.
В БД создавать поля для хранения нет надобности, после сохранения данных в админке, поля в БД создадутся сами.
В /simpla/design/html/settings.tpl
После<div class="block"> <h2>Настройки сайта</h2> <ul> <li><label class=property>Имя сайта</label><input name="site_name" class="simpla_inp" type="text" value="{$settings->site_name|escape}" /></li> <li><label class=property>Имя компании</label><input name="company_name" class="simpla_inp" type="text" value="{$settings->company_name|escape}" /></li> <li><label class=property>Формат даты</label><input name="date_format" class="simpla_inp" type="text" value="{$settings->date_format|escape}" /></li> <li><label class=property>Email для восстановления пароля</label><input name="admin_email" class="simpla_inp" type="text" value="{$settings->admin_email|escape}" /></li> </ul> </div>
Добавить
<div class="block layer"> <h2>Информация в шаблоне сайта</h2> <ul> <li><label class=property>Телефон</label><input name="phone" class="simpla_inp" type="text" value="{$settings->phone|escape}" /></li> <li><label class=property>Адрес</label><input name="address" class="simpla_inp" type="text" value="{$settings->address|escape}" /></li> </ul> </div>
В /simpla/SettingsAdmin.php
После
$this->settings->admin_email = $this->request->post('admin_email');
Добавить
$this->settings->phone = $this->request->post('phone'); $this->settings->address = $this->request->post('address');
В любое место /design/{ВашШаблон}/html/index.tpl
{$settings->phone} {$settings->address}
С проверкой на заполненность полей
{if $settings->phone} {$settings->phone} {/if}
{if $settings->address} {$settings->address} {/if}
-
1 час назад, Alex000 сказал:
Всем привет, может кто подскажет можно ли сделать, что бы пользователь через админку мог добавлять номер телефона и адрес который будет выводиться на сайте.
Заранее всех благодарю.
Конечно можно.
-
12 часов назад, Alex000 сказал:
Всем привет. Знаю, что много раз обсуждалась тема спама, который приходит через комментарии с сайта, все обсуждения датированы 2013 - 2017 годами. Подскажите пожалуйста самый эффективный способ защиты от спама.
Спасибо.
Бороться можно через капчу на smarty.
-
7 минут назад, xikarx сказал:
Спасибо, помогло. Я еще думал про эти ссылки нопробовать не стал. Не вкуриваю эту тему в ооп.
Осталась одна ошибка - но уже, по всей видимости из другой оперы -
Warning: Creating default object from empty value in /var/www/ikar/data/www/astra-omsk.ru/view/View.php on line 167
т.е. вот тут
public function get_session_products_plugin($params, $smarty) { if(!empty($_SESSION[$params['key']])) { $result->key = $params['key']; // ключ $result->ids = $_SESSION[$params['key']]; // сессия $result->count = count($_SESSION[$params['key']]); // количество $smarty->assign($params['key'], $result); } }
я так понимаю, попытка создать объект из пустого значения? В общем с эти что сделать? Пробовал закомментить - получаю 500 ошибку..
Это что-то не стандартное, нужно смотреть на месте. Напишите в личные сообщения.
-
10 минут назад, xikarx сказал:
Под хостинг с php7.2 решил установить Smarty 4.x в Симплу. Залил простым копированием - все вроде нормально, работает справно. Но как оказалось, после создания заказа, на страницах /order/dflvndxxxxxxxxx.. в трех местах получаю ошибки:
Warning: Parameter 2 to View::get_session_products_plugin() expected to be a reference, value given in /var/www/ikar/data/www/astra-omsk.ru/compiled/trizzy/26ad3e601ce79c2f0e821f49033bee73e1903f28_0.file.header.tpl.php on line 79
Warning: Parameter 2 to View::get_brands_plugin() expected to be a reference, value given in /var/www/ikar/data/www/astra-omsk.ru/compiled/trizzy/26ad3e601ce79c2f0e821f49033bee73e1903f28_0.file.header.tpl.php on line 132
Warning: Parameter 2 to OrderView::checkout_form() expected to be a reference, value given in /var/www/ikar/data/www/astra-omsk.ru/compiled/trizzy/4270d009197103a9a5e214be39555a51b172abbd_0.file.order.tpl.php on line 286
Соответственно в логах про это:
PHP Warning: Parameter 2 to View::get_brands_plugin() expected to be a reference, value given in /var/www/ikar/data/www/astra-omsk.ru/compiled/trizzy/26ad3e601ce79c2f0e821f49033bee73e1903f28_0.file.header.tpl.php on line 132
[Mon Nov 14 20:19:16.294071 2022] [php7:warn] [pid 9021] [client 5.255.253.155:51548]PHP Warning: Parameter 2 to View::get_session_products_plugin() expected to be a reference, value given in /var/www/ikar/data/www/astra-omsk.ru/compiled/trizzy/26ad3e601ce79c2f0e821f49033bee73e1903f28_0.file.header.tpl.php
Насколько я понял - что-то связанное с условиями компилляции шаблонов, в файле View.php с функцией public function get_session_products_plugin($params, &$smarty).
Подскажите, как чинить?
И еще - пытался отключить показ ошибок (вроде кроме поломанного дизайна ни на что эти варнинги не влияют), но так и не смог. В самой симпле в индексном файле error_reporting итак закомментирован, ни добавление инструкций в htaccess, ни установка error reporting - off в php.ini на сервере - результатов не дала. Естьвообще возможность из самой cms выключить отображение ошибок?
во view/View.php у функций плагинов уберите оператор &
Было
public function get_browsed_products($params, &$smarty) { ... }
Стало
public function get_browsed_products($params, $smarty) { ... }
-
15 часов назад, shtockman сказал:
Как вам вариант лишиться лицензии?! Я сменил домен и прощай 12 лет работы... Денис Пикусов обиделся и не разговаривает с нами..., а может и почил в бозе. Царствие небесное, но я 400 у.е. заплатил честно 12 лет назад. Алё, Денис, причём здесь я, причём здесь ты? Санкции ввёл? Алё, заместители, все без света и интернета? Пишу письма, русский забыли? Украсть решили, так нет наживы, одна подлость. Вот и считай их нормальными после этого...
Могу помочь с решением проблемы бесплатно
-
Вам проще отказаться от http-авторизации, а сделать авторизацию по логину и паролю из базы средствами php.
и попробуйте в /simpla/.htaccess вписать верхней части файла
RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
-
4 часа назад, Kami сказал:
Есть у кого мысли по поводу?
Существуют зарезервированные символы, которые имеют зарезервированные значения, это разделители —
:/?#[]@
— и суб-ограничители —!$&'()*+,;=
Существует также набор символов, называемых незарегистрированными символами — буквенно-цифровыми и
-._~
— которые не подлежат кодированию. -
1 минуту назад, Kami сказал:
По сути все сайты на симпле при /* не выдают 404 ошибку.
я как раз пытаюсь понять.
-
3 минуты назад, Kami сказал:
у вас симпла? а можете показать htaccess?
дело не в htaccess, нужно смотреть на /index.php и /view/IndexView.php и /api/Request.php
на счет слешей
#Убираем лишние слеши RewriteCond %{REQUEST_URI} ^(.*?)\/{2,}(.*?)$ RewriteRule . %1/%2 [L,R=301] RewriteCond %{THE_REQUEST} // RewriteRule .* /$0 [R=301,L]
-
1 час назад, volonter сказал:
Спасибо! Но это уже отключено, не помогает, файлы кеша все равно создаются в папке compiled, и проблемы с корзиной не уходят
в папке compiled не кеш, а сборка вьюшки для отдачи на фронт. без файлов этой папки не будет отображаться и сам сайт.
кеш хранится в папке cache в корне сайта, если файлов в ней нет, значит кеш не создавался.в вашем случае скорее проблема именно на стороне хостинга/сервера.
вы можете мне написать и я проверю.
-
10 часов назад, volonter сказал:
А с отключением кеширования в самом движке есть какие то варианты? Я как то писал простой самописный сайт где решил использовать smarty, и там кеширование шаблонов удалось отключить в конфигах, на Simpla это почему то не получается
в SimplaCMS
config/config.php только 2 параметра отвечают за кеширование.
smarty_caching = false;
smarty_cache_lifetime = 0;
Кто из поддержки SimplaCMS еще тут и откуда?
в Общие вопросы по функционалу и дизайну
Опубликовано
Приветствую!
Мой ник на этом форуме взламывался дважды: был sergeevizh и стал alexivchenko.
Меня зовут: Кирилл
Я из города Орёл, проживаю в Москве. Помогаю по любым вопросам. Готов выехать на встречу.
Помогаю по Simpla, Okay, Azot, Mini, Buyers.
Есть так же форум в Telegram: https://t.me/simpla2x