Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

Search the Community

Showing results for tags 'twig'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Основной
    • Новости и анонсы
    • Предложения и пожелания
    • Акции, подарки, конкурсы и награды
  • Opencart 3.x
    • Opencart 3.x: Общие вопросы
    • Opencart 3.x: Установка и обновление
    • Opencart 3.x: Локализация
    • Opencart 3.x: Настройка и оптимизация
    • Opencart 3.x: Песочница
    • Opencart 3.x: Поиск модулей
    • Opencart 3.x: Отчёты об ошибках
  • Opencart 2.x
    • Opencart 2.x: Общие вопросы
    • Opencart 2.x: Установка и обновление
    • Opencart 2.x: Локализация
    • Opencart 2.x: Настройка и оптимизация
    • Opencart 2.x: Песочница
    • Opencart 2.x: Поиск модулей
    • Opencart 2.x / ocStore 2.x: Отчёты об ошибках
  • Реклама и продвижение
    • SEO-вопросы (оптимизация и продвижение магазина)
    • Контекстная реклама
    • Торговые площадки
    • E-commerce tracking и бизнес аналитика
    • Разное
  • Поддержка и ответы на вопросы
    • Общие вопросы
    • Установка, обновление, настройка
    • Шаблоны, дизайн и оформление магазина
    • Модули и дополнения
    • Помощь программистам и разработчикам
    • Мобильная витрина
    • Вопросы безопасности
    • Перевод
    • Отчёты об ошибках
    • Интернет-магазины и электронная коммерция
    • Песочница
  • Услуги
    • Создание магазинов под ключ
    • Дизайн, верстка и шаблоны
    • Программирование, создание модулей, изменение функциональности
    • Настройка и мелкая работа по уже существующему сайту
    • Обновление версии движка магазина
    • Наполнение магазина
    • Системное администрирование (настройка хостинга, серверов, ПО)
    • Другие услуги
  • Разное
    • Пользовательские обзоры дополнений
    • Примеры сайтов на OpenCart (ocStore)
    • Курилка
    • Предложения по улучшению

Categories

  • Шаблоны
    • Бесплатные шаблоны
    • Платные шаблоны
  • Filters
  • Promotions & Pricing
  • Реклама и продвижение
  • Coupons & reward points, affiliate programs
  • Blogs, News & Articles
  • Shopping Cart & Order
  • Product Options
  • Product Attributes
  • Product Combinations
  • Search
  • SEO & Optimization
  • Caching & Server Performance
  • Платежные системы
  • Доставки
  • Editors
  • Design & Navigation
  • Banners, Slideshows & Galleries
  • Email Marketing & SMS Integration
  • Customer Support & Chat
  • Обмен данными
  • Учет в заказе
  • Compare & Wishlist
  • Социальные сети
  • Parsers
  • Модули
  • Tools & Developer Tools
  • Licenses
  • Языковые пакеты
  • Прочее
  • Отчеты
  • Сборки
    • ocStore
  • Услуги
    • Графика и дизайн
    • Маркетинг

Categories

  • Служебные документы
  • Оплата

Categories

  • Gereneral questions
  • Purchasing extensions
  • For developer
  • Account
  • Technical support
  • Financial department

Blogs

  • Konorws (Разработка и модификация Opencart)
  • Блог mr.Kent)
  • Прожектор Бритни Спирс
  • Layk
  • Продвижение интернет-магазина, seo оптимизация
  • Записная книжка
  • Блог RGB
  • Модули которые сделают сайт лучше
  • Блог веб-студии NeoSeo
  • Useful IT
  • del
  • Найденные решения проблем с Opencart
  • ocdroid blog
  • Заметки на полях...
  • Pimur
  • Серж Ткач
  • О жизни, смерти, о бизнесе и Опенкарте
  • Полезное с бесполезным
  • Просто мысли от laim731
  • Маркетинг и продвижение интернет-магазина
  • Мой копирайтинг
  • Разработка под Opencart
  • SEO боксинг специального назначения
  • Get-Web Dev
  • Seok
  • Блоги sitecreator-а
  • Best practice
  • Vlad-Egorov-Blog
  • Блог spectre
  • commanddotcom
  • Внимание мошенники
  • Наблюдения обычного человека
  • Блог Rassol2
  • Блог Exploits
  • блог для натуралов
  • Настюша, тут есть темы
  • Пропитано рекламой
  • Tutorial
  • ОтВинта
  • Tg chnls
  • Блог
  • Блог sv2109
  • КАК ОРГАНИЗОВАТЬ НОВОСТНЫЕ ПОДПИСКИ НА БАЗЕ API OPENCART 3/0/2
  • VDS/VPS, серверы под Linux: установка, настройка, оптимизация
  • IT блог
  • Блог
  • Opencart SEO
  • Путёвые заметки о работе магазина NiceBike на платформе OpenCart
  • Blondi Blog
  • Полезные статьи, новости.
  • Эмоциям нужен выход, особенно на удалённой работе
  • Блог владельца магазина
  • Хостинг для OpenCart
  • разное
  • ПРОДАЖА АКАУНТОВ-binance ВЕРИФИЦИРОВАННЫe ЧИСТЫЕ УСПЕВАЙТЕ КУПИТЬ ПО НИЗКОЙ ЦЕНЕ
  • Диспансеризация
  • wozobat
  • quasarbyte
  • Мой блог
  • Igorych
  • aaaaa

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Сайт


Skype


Город:


Интересы

  1. Скачать/Купить дополнение Debug by Symfony + Dump in Twig Отладка от symfony Думаю, многие из вас сталкивались с трудоемким процессом отладки данных или ошибок... Это расширение упрощает работу и делает вывод данных более читабельным! Чтобы принудительно загрузить библиотеку отладки с помощью Symfony, вы можете использовать $this->load->library('debug') Вы можете включить вывод ошибок и исключений с помощью Symfony в настройках расширения или в вашем собственном коде с помощью $this->debug->enable() Функции можно вызывать либо - dump() либо $this->debug->dump(). Добавлены новые функции: dd() - Dump and Die. td() - Throw Dump. Загрузите файл ocmod через установщик расширения, обновите модификации и очистите кеш! Для ОС версии **3.0.3.5** и выше, что-бы добавить функции - dd, td, dump, var_dump в Twig , необходимо скопировать содержимое папки storage в папку storage вашего сайта. Надеюсь процесс разработки стал для Вас более удобен, буду благодарен за donate! Добавил BergStudio Добавлено 07.03.2022 Категория Модули Системные требования php5.6 или php7.2 Метод активации Без активации Ioncube Loader Нет OpenCart 3.0 ocStore 2.3.0.2.4 OpenCart.Pro, ocShop OcShop 2.0.3.х Обращение к серверу разработчика Нет  
  2. Все привет , столкнулся с проблемой , на главной страници кнопка каталог работает( при переходи в подкатегории или на товар кнопка перестает работать ) множесто ошибок в консоле не могу понять где исправить данные ошибки так как они введут на кэш , я его очишал но не чего не поменялось ( папка min) вот >сайт< буду благодарен за подсказки или помощь!
  3. Version 2.0.2

    3 downloads

    Отладка от symfony Думаю, многие из вас сталкивались с трудоемким процессом отладки данных или ошибок... Это расширение упрощает работу и делает вывод данных более читабельным! Чтобы принудительно загрузить библиотеку отладки с помощью Symfony, вы можете использовать $this->load->library('debug') Вы можете включить вывод ошибок и исключений с помощью Symfony в настройках расширения или в вашем собственном коде с помощью $this->debug->enable() Функции можно вызывать либо - dump() либо $this->debug->dump(). Добавлены новые функции: dd() - Dump and Die. td() - Throw Dump. Загрузите файл ocmod через установщик расширения, обновите модификации и очистите кеш! Для ОС версии **3.0.3.5** и выше, что-бы добавить функции - dd, td, dump, var_dump в Twig , необходимо скопировать содержимое папки storage в папку storage вашего сайта. Надеюсь процесс разработки стал для Вас более удобен, буду благодарен за donate!
    Free
  4. Debug by Symfony + Dump Twig Выслушаю Ваши пожелания и предложения! Так же буду признателен за Вашу помощь - тестировал не на всех версиях, кто ставил на какую и работает ли, отпишитесь пожалуйста!!!
  5. Копирую в контролере по принципу как и у product.php в category.php После: if ($this->config->get('config_tax')) { $tax = $this->currency->format($tax_price, $this->session->data['currency']); } else { $tax = false; } Это: $discounts = $this->model_catalog_product->getProductDiscounts($this->request->get['product_id']); $data['discounts'] = array(); foreach ($discounts as $discount) { $data['discounts'][] = array( 'quantity' => $discount['quantity'], 'price' => $this->currency->format($this->tax->calculate($discount['price'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']) ); } Летят нотисы: Как вывести скидки в opencart 3 на страницу категории? Может кто-то сталкивался с этим?
  6. В дефолтном opencart 3 дополнительные изображения открываются в popup Как можно сделать, чтобы дополнительные изображения открывались в этой области вместо основного изображения? Подскажите, пожалуйста, модификатор, который бы просто решал эту задачу
  7. Цель темы предотвратить темы, где спрашивают: "Какой шаблон выбрать?" и указать на замечания авторам шаблонов, чтобы они ещё больше их улучшили. Для попадания в список лучших шаблонов, на вашем шаблоне должна быть возможность получить оценку 90+ в Google PageSpeed не урезая функционал на демонстративном сайте, также исправление косяков шаблона должны производится не позже одного месяца. Ваш шаблон должен быть адаптирован под OpenCart 2.X+ Перед добавлением в список ваш шаблон будет проходить голосование (люди оценят привлекательность до 50 голосов или в течении до двух месяцев). В данном списке шаблонов не определяется занимаемое место - весь список считается хорошим, и время от времени будет изменяться. Оцениваться шаблон будет исходя из оценок в Google PageSpeed и Google lighthouse (accessibility, best-practices, seo) Ответ сервера учитываться не будет, если при прямом посещении отдача до 400 мс (Время от запроса к сайту до начала скачивания других файлов после загрузки документа). Также, если оценка шаблона не будет в зелёной зоне (90+ баллов) в Google PageSpeed, то в ручную буду стараться её довести (привести на равные условия среди списка). 1. UltraStore для OpenCart 3.X Google PageSpeed (95) Главная страница Mobile 90-95 / Desctop 100 Категория Mobile 91-98 / Desctop 100 Товар Mobile 91-95 / Desctop 100 Google lighthouse (81) Главная страница accessibility 80 best-practices 87 seo 75 Категория accessibility 75 best-practices 87 seo 77 Товар accessibility 82 best-practices 93 seo 77 Ответ сервера Техническая поддержка - быстрая Обновления - выпускаются раньше месяца Ioncube Loader - нет Обращение к серверу разработчика - нет Рекомендации автору @octemplates: - настроить стили баннеров так, чтобы не скакали они, если отключены скрипты - это позволит сделать загрузку баннеров по взаимодействию пользователя с сайтом, что в свою очередь минимизирует работу основного потока (Total Blocking Time - TBT); - устранить ошибку скриптов, если отключены у пользователя куки; - предзагрузить стили (добавить атрибут rel="preload") - это снизит (Largest Contentful Paint - LCP); - применить скрипт сборки критических стилей - это снизит (First Contentful Paint - FCP); - устранить ошибки Google lighthouse; - установить атрибуты ширины и высоты на изображения которые нельзя менять из админ панели; 2. UniShop2 для OpenCart 3.X Голосование прошло Купон на скидку 20% 723925-console Google PageSpeed (94) Главная страница Mobile 85-95 / Desctop 100 Категория Mobile 89-94 / Desctop 100 Товар Mobile 89-95 / Desctop 100 Google lighthouse (85) Главная страница accessibility 90 best-practices 85 seo 89 Категория accessibility 84 best-practices 85 seo 83 Товар accessibility 71 best-practices 85 seo 91 Ответ сервера Техническая поддержка - быстрая Обновления - выпускаются раньше месяца Ioncube Loader - да Обращение к серверу разработчика - да Рекомендации автору @spectrum: - настроить стили баннеров так, чтобы не скакали они, если отключены скрипты - это позволит сделать загрузку баннеров по взаимодействию пользователя с сайтом, что в свою очередь минимизирует работу основного потока (Total Blocking Time - TBT); - применить скрипт сборки критических стилей - это снизит (First Contentful Paint - FCP); - устранить ошибки Google lighthouse; 3. NewStore для OpenCart 2.X В процессе голосования 4. Decor для OpenCart 3.X В процессе голосования 5. ExlusiveTuning для OpenCart 2.X-3.X (NEW) В процессе голосования
  8. Здравствуйте. Возникла такая проблема... Нужно вывести кол-во товаров для каждой опции. Версия Opencart 3.0.3.2 Пробовал в product.php прописывать 'quantity' => $option_value['quantity'], а в шаблоне {{option_value.quantity}}, но ничего не выводилось. Искал решение где только мог, но так и не нашел. Помогите, пожалуйста.
  9. Здравствуйте! делаю свой первый проект, поэтому многое не понимаю и не все могу найти в гугле. На данный момент у меня и после успешного оформления заказа и после успешной отправки фидбэка идет редирект на одну и ту же common/success.twig Подскажите как сделать при успешном оформлении заказа редирект на мой новый success-checkout.twig? Я дошел до контроллера /checkout/success.php и в конце index() if ( ... ) { $this->response->setOutput($this->load->view('common/checkout-success', $data)); } else { $this->response->setOutput($this->load->view('common/success', $data)); } не знаю что вставить в условие
  10. Получил сайт, смотрю в .twig файлах и CSS и JS повставляли... Неужели так можно делать и оно нормально будет работать?!
  11. Здравствуйте, никак не могу разобраться как подключить к новому дизайну макета свой twig шаблон. создавал файлы контроллера и вьюшки <?php class ControllerProductСategoryold extends Controller { public function index() { $this->document->setTitle($this->config->get('config_meta_title')); $this->document->setDescription($this->config->get('config_meta_description')); $this->document->setKeywords($this->config->get('config_meta_keyword')); $data['column_left'] = $this->load->controller('common/column_left'); $data['column_right'] = $this->load->controller('common/column_right'); $data['content_top'] = $this->load->controller('common/content_top'); $data['content_bottom'] = $this->load->controller('common/content_bottom'); $data['footer'] = $this->load->controller('common/footer'); $data['header'] = $this->load->controller('common/header'); $this->response->setOutput($this->load->view('product/categoryold', $data)); } } файл шаблона {{ header }} <div id="product-categoryold" class="container"> <div class="row">{{ column_left }} {% if column_left and column_right %} {% set class = 'col-sm-6' %} {% elseif column_left or column_right %} {% set class = 'col-sm-9' %} {% else %} {% set class = 'col-sm-12' %} {% endif %} <div id="content" class="{{ class }}"><h1 style="font-size: 33px; margin-top: -5px; margin-bottom: 20px; text-align: center">Наконец заработало</h1>{{ content_top }}{{ content_bottom }}</div> {{ column_right }}</div> </div> {{ footer }} в самом макете прописал путь product/categoryold , но ничего не произошло, даже ошибок не выдал, есстественно я дизайн подключил к категории, модификаторы обновлял, кеш чистил, пробовал делать на другом домене. Может кто написать по шагам, что нужно сделать чтобы это заработало.
  12. Друзья, помогите! У моего шаблона выходило обновление, отдавал, что бы обновили стили... После этого при обновлении OCMOD не заходит в карточку товара, не работает поиск.... https://pastebin.com/Rr634Ged В категории вот так
  13. Добрый день,подскажите,существует ли способ узнать в шаблоне .twig код активного языка кроме как через данные с контроллера?
  14. Пытаюсь вывести количество отзывов. Прошу помочь правильно достучаться к переменной. Есть контроллер с отзывами review.php if ($data['field_rating']) { $data['rating'] = (int)$this->model_catalog_p_review->getRating($product_id); $rating_total = (int)$this->model_catalog_p_review->getRatingTotal($product_id); $data['rating_total'] = $rating_total ? sprintf($this->language->get('text_rating_total'), $rating_total) : $this->language->get('text_no_rating'); } else { $data['rating'] = array(0); $data['rating_total'] = $this->language->get('text_no_rating'); } нужно из файла catalog/view/theme/default/template/product/category.twig достучаться к catalog/controller/product/review.php ? <span class="count-reviews">{{ product.rating_total }}</span> Как правильно?
  15. Всем доброго времени суток! Помогите пожалуйста переписать этот код так что бы если в админке на товар поставили цену 0, то в самом товаре на сайте выводился текст вместо цифры. {% if price %} <ul class="list-unstyled product-prices"> {% if not special %} <li> <h2>{{ price }}</h2> </li> {% else %} <li> <h2>{{ special }}</h2> </li> <li>{{ price }}</span></li> {% endif %} {% if tax %} <li>{{ text_tax }} {{ tax }}</li> {% endif %} {% if points %} <li>{{ text_points }} {{ points }}</li> {% endif %} {% if discounts %} <li> <hr> </li> {% for discount in discounts %} <li>{{ discount.quantity }}{{ text_discount }}{{ discount.price }}</li> {% endfor %} {% endif %} </ul> {% endif %}
  16. Здравствуйте! Помогите пожалуйста разобраться с проблемой! Описал все ниже. В базе у меня хранится html некоторых страниц. В этом коде есть шорткоды: {{ chunk.review }}, {{ chunk.slider }} {{ chunk.review }} - это фактически $data['chunk']['review'] = $this->load->controller('chunk/standart/review'); 1. В контроллере я получаю код из базы и хочу вставить его в twig файл, через переменную public function index() { $data['chunk']['review'] = $this->load->controller('chunk/standart/review'); $this->load->model('layout/layout'); // Получаем из базы HTML код $data['page_html'] = html_entity_decode($this->model_layout_layout->getLayoutCode(6, 1)); $this->response->setOutput($this->load->view('chunk/standart/index', $data)); } 2. В переменной $data['page_html'] хранится: <h2>Заголовок</h2> {{ chunk.review }} 3. Код файла index.twig: {{ page_html }} Проблема: Вместо того, чтобы получить: <h2>Заголовок</h2> <div class="review"> <div class="review-item"> ... </div> </div> Я получаю на выходе: <h2>Заголовок</h2> {{ chunk.review }} Если в файл index.twig вставить {{ chunk.review }} все нормально подтягивается.
  17. Здравствуйте уважаемые форумчане. Прошу помощи. Нужно вывести текст в корзину, для товаров которые на складе стоят в количестве = 1. Сделали условие что если товар 1 то показывать под заказ, теперь нужно уведомить покупателя в корзине о том что если товар под заказ, то он не подлежит возрату и обмену. Подскажите как можно реализовать?
  18. Всем привет! Как правильно установить код от Sape на Opencart 3 (допустим в футер)? На форуме не нашёл...
  19. Насколько мне известно для того что бы xdebug работал с twig нужно указать путь к папке с кешом.Я пробывал 2 варианта C: \ OSPanel \ domains \ oc.test \ storage \ cache и C: \ OSPanel \ domains \ oc.test \ upload \ system \ storage \ cache но они оба не работают. Что я делаю не так?
  20. Вроде пишу style="display:none" в guest.twig. А форма все равно высвечивается.
  21. Доброго времени суток. Как вывести вот такое правило <?php if ($banners[0]['status'] == 2) { ?> В opencart 3 в twig файле ? Пробовал такие варианты {% if banner.status == 2 %} {% if banner.status[0] == 2 %} {% if banner[0].status == 2 %}
  22. Всем привет! Если кто знает, подскажите, пожалуйста, как скрыть определенные атрибуты в карточке товара? Есть примеры для oc2, но все они как вывести определенные атрибуты, а хочется скрыть 2-3 из общего количества. Если я правильно понимаю, в twige вот эта часть отвечает за вывод: <tbody> {% for attribute in attribute_group.attribute %} <tr> <td>{{ attribute.name }}</td> <td>{{ attribute.text }}</td> </tr> {% endfor %} </tbody> Буду крайне благодарен за помощь!
  23. Здравствуйте Цель такая, мне надо просканировать папку, найти все файлы в ней - картинки и вывести их. Вопрос в том как это сделать используя twig ? Я искал как это сделать и говорят, что надо вызвать php файл в twig но как это сделать я не знаю. Плюс мне кажется можно попробовать использовать для этого как-то js и потом передать параметры. Вопрос в том, как это сделать и если можно с ссылочкой или примером. С уважением, Стромов Владимир
  24. Здраствуйте! Я только начал учить опенкарт, и у меня возник вопрос: Как в header,twig можно сделать проверку на главную страницу, тоесть {% if isHome %} {% include ... %} {% endif; %} Надо реализовать переменную isHome, но как и в каком файле? Помогите плз
  25. Здраствуйте! У меня есть сайт на opencart 3.0.2, я хотел сделать два хедера (один для главной страницы, другой для всех остальных), и у меня возникла проблема - файлы не изменяются(Сайт на шаблоне Journal 3) допустим у меня есть файлы /catalog/view/theme/journal3/template/journal3/headers/desktop/classic.twig, /catalog/view/theme/journal3/template/common/header.twig и /catalog/controller/common/header.php. И допустим я хочу сделать проверку на главный файл, я вставляю код в header.twig {% if home %} <style>...</style>{% endif %} Изменяю стили, но в файле в меня всё меняется, а на сервере нет, что делать? Переменная home есть в header.php Код /catalog/view/theme/journal3/template/journal3/headers/desktop/classic.twig <div class="header header-classic header-lg"> <div class="top-bar navbar-nav"> {{ j3.settings.get('desktop_top_menu') }} {% if j3.settings.get('langPosition') == 'top' %} <div class="language-currency top-menu"> <div class="desktop-language-wrapper"> {{ language }} </div> <div class="desktop-currency-wrapper"> {{ currency }} </div> </div> {% endif %} <div class="third-menu">{{ j3.settings.get('desktop_top_menu_3') }}</div> {% if j3.settings.get('secondaryMenuPosition') == 'top' %} <div class="top-menu secondary-menu">{{ j3.settings.get('desktop_top_menu_2') }}</div> {% endif %} </div> <div class="mid-bar2"> <div class="desktop-logo-wrapper"> <div id="logo"> {% if j3.settings.get('logo_src') %} <a href="{{ home }}"> <img src="{{ j3.settings.get('logo_src') }}" {% if j3.settings.get('logo2x_src') %}srcset="{{ j3.settings.get('logo_src') }} 1x, {{ j3.settings.get('logo2x_src') }} 2x"{% endif %} width="{{ j3.settings.get('logo_width') }}" height="{{ j3.settings.get('logo_height') }}" alt="{{ name }}" title="{{ name }}"/> </a> {% else %} <h1><a href="{{ home }}">{{ name }}</a></h1> {% endif %} </div> </div> {% if j3.settings.get('headerMainMenu2Position') == 'top' %} {{ j3.settings.get('desktop_main_menu_2') }} {% endif %} <div class="desktop-search-wrapper full-search default-search-wrapper"> {{ search }} </div> {% if j3.settings.get('langPosition') == 'search' %} <div class="language-currency top-menu"> <div class="desktop-language-wrapper"> {{ language }} </div> <div class="desktop-currency-wrapper"> {{ currency }} </div> </div> {% endif %} <div class="classic-cart-wrapper"> {% if j3.settings.get('secondaryMenuPosition') == 'cart' %} <div class="top-menu secondary-menu">{{ j3.settings.get('desktop_top_menu_2') }}</div> {% endif %} {% if j3.settings.get('cartPosition') == 'top' %} <div class="desktop-cart-wrapper default-cart-wrapper"> {{ cart }} </div> {% endif %} </div> </div> <div class="desktop-main-menu-wrapper2 menu-{{ j3.settings.get('headerMenuLayout') }} {% if j3.settings.get('desktop_main_menu_2') %}has-menu-2{% endif %} navbar-nav"> {{ j3.document.hasClass('mobile-header-active') ? '' : j3.settings.get('desktop_main_menu') }} {% if j3.settings.get('headerMainMenu2Position') == 'menu' %} {{ j3.settings.get('desktop_main_menu_2') }} {% endif %} {% if j3.settings.get('cartPosition') == 'menu' %} <div class="desktop-cart-wrapper default-cart-wrapper"> {{ cart }} </div> {% endif %} </div> </div> /catalog/view/theme/journal3/template/common/header.php {% if j3 is not defined %} <style> body { display: none !important; } </style> <script> window.location = 'index.php?route=journal3/startup/error'; </script> {% endif %} <!DOCTYPE html> <html dir="{{ direction }}" lang="{{ lang }}" class="{{ j3.document.getClasses() | join(' ') }}" data-jv="{{ j3 is defined ? constant('JOURNAL3_VERSION') : '' }}" data-ov="{{ constant('VERSION') }}"> <head typeof="og:website"> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>{{ title }}</title> <base href="{{ base }}" /> {% if description %} <meta name="description" content="{{ description }}" /> {% endif %} {% if keywords %} <meta name="keywords" content="{{ keywords }}" /> {% endif %} {% if not j3.document.isPopup() %} {% for key, tag in j3.loadController('journal3/seo/meta_tags') %} <meta {{ tag.type }}="{{ key }}" content="{{ tag.content }}"/> {% endfor %} {% endif %} <script>window['Journal'] = {{ j3.document.getJs() | json_encode }};</script> {% if not j3.document.isPopup() %} <script>{{ j3.loadController('journal3/mql') }}</script> {% endif %} {% if j3.document.hasFonts() %} {% if j3.settings.get('performanceAsyncFontsStatus') %} <script>WebFontConfig = { google: { families: {{ j3.document.getFonts(true) }} } };</script> {% else %} <link href="https://fonts.googleapis.com/css?family={{ j3.document.getFonts(false) }}" type="text/css" rel="stylesheet"/> {% endif %} {% endif %} {% for style in j3.document.getStyles(styles) %} {% if style.content %} <style>{{ style.content }}</style> {% else %} <link href="{{ j3.document.staticUrl(style.href, false) }}" type="text/css" rel="{{ style.rel }}" media="all" /> {% endif %} {% endfor %} {% for link in links %} <link href="{{ link.href }}" rel="{{ link.rel }}" /> {% endfor %} {% for analytic in analytics %} {{ analytic }} {% endfor %} <style> {{ j3.document.getCss() }} </style> {% if j3.settings.get('customCSS') %} <style>{{ j3.settings.get('customCSS') }}</style> {% endif %} {% for script in j3.document.getScripts('header', scripts) %} <script src="{{ j3.document.staticUrl(script, false) }}" {% if j3.settings.get('performanceJSDefer') %} defer {% endif %}></script> {% endfor %} {% if j3.settings.get('customCodeHeader') %} {{ j3.settings.get('customCodeHeader') }} {% endif %} {# {% if isHome %} <style> body { background: none; } </style> {% endif %} #} </head> <body class="{{ class }}" {% if j3.document.isMobile() %}ontouchstart{% endif %}> {% if j3.settings.get('oldBrowserStatus') %} <div class="old-browser"> <div class="ob-content"> <h2 class="ob-title">{{ j3.settings.get('oldBrowserTitle') }}</h2> <span class="ob-text">{{ j3.settings.get('oldBrowserText') }}</span> <div class="ob-links"> <a href="https://www.google.com/chrome/" target="_blank" rel="nofollow"> <img src="{{ j3.settings.get('oldBrowserChrome') }}" alt="Chrome" /> <span class="ob-name">Chrome</span> </a> <a href="https://www.mozilla.org/firefox/new/" target="_blank" rel="nofollow"> <img src="{{ j3.settings.get('oldBrowserFirefox') }}" alt="Firefox" /> <span class="ob-name">Firefox</span> </a> <a href="https://www.microsoft.com/en-us/windows/microsoft-edge" target="_blank" rel="nofollow"> <img src="{{ j3.settings.get('oldBrowserEdge') }}" alt="edge" /> <span class="ob-name">Microsoft Edge</span> </a> <a href="https://www.opera.com/" target="_blank" rel="nofollow"> <img src="{{ j3.settings.get('oldBrowserOpera') }}" alt="opera" /> <span class="ob-name">Opera</span> </a> <a href="https://www.apple.com/lae/safari/" target="_blank" rel="nofollow"> <img src="{{ j3.settings.get('oldBrowserSafari') }}" alt="safari" /> <span class="ob-name">Safari on Mac</span> </a> </div> </div> </div> {% endif %} {% if not j3.document.isPopup() %} <div class="mobile-container mobile-main-menu-container"> <div class="mobile-wrapper-header"> <span>{{ j3.settings.get('headerMobileMenuTitle') }}</span> {% if j3.settings.get('mobileLangPosition') == 'menu' %} <div class="language-currency top-menu"> <div class="mobile-currency-wrapper"> {{ j3.document.hasClass('mobile-header-active') ? currency : '' }} </div> <div class="mobile-language-wrapper"> {{ j3.document.hasClass('mobile-header-active') ? language : '' }} </div> </div> {% endif %} <a class="x"></a> </div> <div class="mobile-main-menu-wrapper"> {{ j3.document.isPhone() or (j3.document.isTablet() and j3.settings.get('mobileHeaderOn') == 'tablet') ? j3.settings.get('mobile_main_menu') : '' }} </div> </div> <div class="mobile-container mobile-filter-container"> <div class="mobile-wrapper-header"></div> <div class="mobile-filter-wrapper"></div> </div> <div class="mobile-container mobile-cart-content-container"> <div class="mobile-wrapper-header"> <span>{{ j3.settings.get('headerMobileCartTitle') }}</span> <a class="x"></a> </div> <div class="mobile-cart-content-wrapper cart-content"></div> </div> {% endif %} {{ j3.loadController('journal3/layout', 'popup') }} <div class="site-wrapper"> {{ j3.loadController('journal3/layout', 'header_notice') }} {% if not j3.document.isPopup() %} <header class="header-{{ j3.settings.get('headerType') }}"> {% if not j3.document.hasClass('mobile-header-active') and j3.settings.get('headerType') %} {% include 'journal3/template/journal3/headers/desktop/' ~ j3.settings.get('headerType') ~ '.twig' %} {% endif %} {% if j3.settings.get('mobileHeaderType') %} {% include 'journal3/template/journal3/headers/mobile/header_mobile_' ~ j3.settings.get('mobileHeaderType') ~ '.twig' %} {% endif %} </header> {% endif %} /catalog/controller/common/header.php <?php // * @source See SOURCE.txt for source and other copyright. // * @license GNU General Public License version 3; see LICENSE.txt class ControllerCommonHeader extends Controller { public function index() { // Analytics $this->load->model('setting/extension'); $data['analytics'] = array(); $analytics = $this->model_setting_extension->getExtensions('analytics'); foreach ($analytics as $analytic) { if ($this->config->get('analytics_' . $analytic['code'] . '_status')) { $data['analytics'][] = $this->load->controller('extension/analytics/' . $analytic['code'], $this->config->get('analytics_' . $analytic['code'] . '_status')); } } if ($this->request->server['HTTPS']) { $server = $this->config->get('config_ssl'); } else { $server = $this->config->get('config_url'); } if (is_file(DIR_IMAGE . $this->config->get('config_icon'))) { $this->document->addLink($server . 'image/' . $this->config->get('config_icon'), 'icon'); } $data['title'] = $this->document->getTitle(); $data['base'] = $server; $data['description'] = $this->document->getDescription(); $data['keywords'] = $this->document->getKeywords(); $data['links'] = $this->document->getLinks(); $data['robots'] = $this->document->getRobots(); $data['styles'] = $this->document->getStyles(); $data['scripts'] = $this->document->getScripts('header'); $data['lang'] = $this->language->get('code'); $data['direction'] = $this->language->get('direction'); $data['name'] = $this->config->get('config_name'); if (is_file(DIR_IMAGE . $this->config->get('config_logo'))) { $data['logo'] = $server . 'image/' . $this->config->get('config_logo'); } else { $data['logo'] = ''; } $this->load->language('common/header'); $host = isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1')) ? HTTPS_SERVER : HTTP_SERVER; if ($this->request->server['REQUEST_URI'] == '/') { $data['og_url'] = $this->url->link('common/home'); } else { $data['og_url'] = $host . substr($this->request->server['REQUEST_URI'], 1, (strlen($this->request->server['REQUEST_URI'])-1)); } $data['og_image'] = $this->document->getOgImage(); // Wishlist if ($this->customer->isLogged()) { $this->load->model('account/wishlist'); $data['text_wishlist'] = sprintf($this->language->get('text_wishlist'), $this->model_account_wishlist->getTotalWishlist()); } else { $data['text_wishlist'] = sprintf($this->language->get('text_wishlist'), (isset($this->session->data['wishlist']) ? count($this->session->data['wishlist']) : 0)); } $data['text_logged'] = sprintf($this->language->get('text_logged'), $this->url->link('account/account', '', true), $this->customer->getFirstName(), $this->url->link('account/logout', '', true)); $data['home'] = $this->url->link('common/home'); $data['wishlist'] = $this->url->link('account/wishlist', '', true); $data['logged'] = $this->customer->isLogged(); $data['account'] = $this->url->link('account/account', '', true); $data['register'] = $this->url->link('account/register', '', true); $data['login'] = $this->url->link('account/login', '', true); $data['order'] = $this->url->link('account/order', '', true); $data['transaction'] = $this->url->link('account/transaction', '', true); $data['download'] = $this->url->link('account/download', '', true); $data['logout'] = $this->url->link('account/logout', '', true); $data['shopping_cart'] = $this->url->link('checkout/cart'); $data['checkout'] = $this->url->link('checkout/checkout', '', true); $data['contact'] = $this->url->link('information/contact'); $data['telephone'] = $this->config->get('config_telephone'); $data['language'] = $this->url->link('common/home'); $data['currency'] = $this->load->controller('common/currency'); $data['currency'] = $this->load->controller('common/currency'); if ($this->config->get('configblog_blog_menu')) { $data['blog_menu'] = $this->load->controller('blog/menu'); } else { $data['blog_menu'] = ''; } $data['search'] = $this->load->controller('common/search'); $data['cart'] = $this->load->controller('common/cart'); $data['menu'] = $this->load->controller('common/menu'); return $this->load->view('common/header', $data); } } {{ j3.loadController('journal3/layout', 'fullscreen_slider') }}
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.