-
Posts
77 -
Joined
-
Last visited
Svoeobraznaya's Achievements
-
Svoeobraznaya changed their profile photo
-
Я подключила всё успешно, единственное не смогла всё адаптировать для модуля simple, поэтому для страницы cart (она же оформление заказа) оставила подключение всех скриптов сверху. Но везде на других страницах скрипты только внизу, в теле страницы я нигде скрипты не использую, всё вынесла в отдельные файлы, поэтому мне нет потребности jquery сверху подключать. Но, у большинства в магазинах используются модули и большинство магазинов не будет из этих модулей выносить скрипты, прописанные в теле twig, в отдельные файлы, поэтому для большинства магазинов потребуется подключение хотя бы jquery сверху, это я понимаю. Мой случай индивидуален.
-
Добрый вечер, никак не могу понять ситуацию: я хочу подключить определенные js файлы на все страницы сайта, поэтому включаю их через controller header'а: $this->document->addScript('catalog/view/javascript/header.js', 'footer'); Объявляю позицию футера так как все скрипты размешаю внизу сайта. И дурацкая ситуация: в контроллере футера, где получается этот массив скриптов, нет тех скриптов, которые подключаются в контроллере хедера. $data['scripts'] = $this->document->getScripts'footer'); Почему так? Я совсем не понимаю происходящего. Типа на момент вызова getScript из футера они еще не записаны в массив скриптов? Контроллер хедера вроде первым должен исполняться и записывать скрипты в массив? Пожалуйста, кто имеет идеи подскажите.
-
[Поддержка] Shiptor — фулфилмент и агрегатор доставки
Svoeobraznaya replied to Shiptor's topic in Доставка
Разобралась. Потребовалось в Content-Security-Policy дать разрешение для https://yastatic.net. Почему это вдруг? Раньше туда и не требовалось разрешение и все работало. -
[Поддержка] Shiptor — фулфилмент и агрегатор доставки
Svoeobraznaya replied to Shiptor's topic in Доставка
Только у меня с сегодняшнего дня перестали открываться пункты выдачи (Opencart 3)? Клик по способу доставке в ПВЗ больше не открывает карту с пунктами выдачи. Я проверила на клик по этому способу доставки скрипт подвязан тот же, что на вашем демо стенде. В конце прописан вызов метода points Shiptor.points(); У меня всё так же. Но вот по клику POST запрос сюда не отправляется route=shipping/shiptor/points. В вашем файле модуля (catalog/view/javascript/shipping/shiptor.js) в init я положила alert, чтобы проверить попадаю ли сюда, и как выяснилось нет, не попадаю. ymaps.ready(init); function init() { alert('Hello from init'); ...} В консоли висит ошибка Unable to load modules "https://api-maps.yandex.ru/2.1/?lang=ru_RU:1". Причина по которой не загружается мне не ясна. -
igorlend started following Svoeobraznaya
-
[Поддержка] Shiptor — фулфилмент и агрегатор доставки
Svoeobraznaya replied to Shiptor's topic in Доставка
После года пользования, могу сообщить, что ваш модуль плох, чудовищен. Я всё думала, почему как только в корзину добавляется новый товар, то время ожидания time to first byte по 5-6 секунд? То есть все, кто пытались в моем магазине зайти в корзину ждали долго-предолго! Я думала, что это модуль Simple так тупит, потому что когда удаляла товар из корзины, то перезагрузка блоков также подвисала надолго. Но сейчас я отключила ваш модуль и его модификатор и "О, чудо" корзина открывается нормально, как и должна, товары удаляются и перезагрузка блоков модуля Simple происходит быстро. В общем, в топку вашу поделку. -
Здравствуйте. В моем файле твиг есть строка, содержащая preg_replace: <input type='hidden' data-title="{{ product['after_title'] }}" data-hash="{{ preg_replace('/[\s,.+\-]+/','-',product['id']) }}" name='series_product_id' value="{{ product['id'] }}"> Дело в том, что это не работает, фатальная ошибка из-за того, что preg_replace нельзя использовать. Я нагуглила, что нужно создать свое расширение Twig. В общем, в папку system/library/template/Twig/Extension я положила файлик PcreExtension.php, вроде бы с содержимым, которое должно обработать этот preg_replace (содержание файла ниже) и подключила его в файле system/library/template/Twig/Environment.php таким образом: $this->addExtension(new Twig_Extension_PcreExtension()); Но все равно не обрабатывается этот preg_replace. Пожалуйста, подскажите, что не так, код этого файла я в сети нашла. Вижу, что вызов функции обработки preg_replace лежит внутри функции getFilters. Где же ее вызывать следует? <?php class Twig_Extension_PcreExtension extends Twig_Extension { public function getFilters() { return [ new Twig_SimpleFilter('preg_replace', [$this, 'replace']), ]; } public function replace($value, $pattern, $replacement = '', $limit = -1) { $this->assertNoEval($pattern); if (!isset($value)) { return null; } return preg_replace($pattern, $replacement, $value, $limit); } }
-
Twig (наверное) комментирует содержимое php
Svoeobraznaya replied to Svoeobraznaya's topic in Opencart 3.x: General questions
Да, нашла в этом файле скрипты. Спасибо большое за наводку, буду по аналогии повторять. -
Twig (наверное) комментирует содержимое php
Svoeobraznaya replied to Svoeobraznaya's topic in Opencart 3.x: General questions
Одно но, у меня в файле еще и Javascript вставлен. Существуют ли какие-то обходные пути для внедрения в страницу php кода с javascript? -
Twig (наверное) комментирует содержимое php
Svoeobraznaya replied to Svoeobraznaya's topic in Opencart 3.x: General questions
Жуть, хорошо спасибо, буду переписывать. -
Добрый день! Подскажите, пожалуйста, такой момент: я в контроллере получаю строку с php-кодом, такого формата <?php if($products) { ?> <div id="hpmodel" class="form-group"> <?php if($name_as_title){ ?> <div class="hpm-mame"><?php echo $title_name;?> <span class="after_title"></span></div> <?php } ?> Все это дело гружу в переменную и вывожу ее в файле представления twig. А выводится это все закомментированное, таким образом: <!--?php if($products) { ?--> <div id="hpmodel" class="form-group"> <!--?php if($name_as_title){ ?--> <div class="hpm-mame"><!--?php echo $title_name;?--> <span class="after_title"></span></div> <!--?php } ?--> Подскажите, пожалуйста, как можно встроить в шаблон вывода переданный код php без комментирования?
-
Приветствую всех. У меня есть модуль выбора подарка за покупку, который в табличку _event записал обработчик для события: catalog/view/common/cart/before и еще есть модуль Simple (простая регистрация и заказ). Так как в триггере указано before, то я думала, что метод будет вызываться до загрузки страницы корзины, но по факту у меня сначала выполняется весь код Simple и лишь после запускается метод из данного обработчика события. Подскажите, пожалуйста, как так получается? Есть ли способ обработчик события запустить до выполнения кода Simple? Я попробовала в триггере указать: catalog/view/checkout/simplecheckout/before но все же мой метод отрабатывает после кода Simple.