Jump to content

Recommended Posts

Добрый день.

 

Помогите пжлст с с таким вопросом..

Создал в админке модуль html, ввел заголовок и текст. При вводе текста, перешел в режим code view и вставил код:

<?php echo 'Test'; ?>

Сохранил модуль, но на странице он не выводится. Затем заново открыл модуль в том же окне, а там он стал таким:

<!--?php echo 'Test'; ?-->

Нужно чтобы на странице вывелось Test.

 

Opencart Version 2.0.3.1 (trs.2.0.3.0)

post-698289-0-40621600-1436777831_thumb.jpg

Edited by Maga499

Share this post


Link to post
Share on other sites

создай другой модуль

 

Я хочу скопировать модуль html, и назвать его например MyPhpModul.

 

В контроллере html есть код:

...
$data['html'] = html_entity_decode($setting['module_description'][$this->config->get('config_language_id')]['description'], ENT_QUOTES, 'UTF-8');
...

Как я понял, $data - это переменная которая выводит содержимое <textarea>. Нужно чтобы в эту переменную заносился код, без никаких преобразований. Как это сделать?

Share this post


Link to post
Share on other sites


$data['php'] = eval($setting['module_description'][$this->config->get('config_language_id')]['description']);

Share this post


Link to post
Share on other sites

Добрый день, 

/www/lepnini.ru/catalog/controller/module/html.php это контроллер модуля Текстовый блок - HTML > Правая колонка карточки товара?

 

 

 

$data['php'] = eval($setting['module_description'][$this->config->get('config_language_id')]['description']);

 

Данную строчку кода ставлю после строчки $data['html'], но модуль продолжает закомменчивать php код при добавлении в режиме code view. Версия опенкарт Version 2.1.0.1 (trs-2.1.0.0). Спасибо!

<?php
class ControllerModuleHTML extends Controller {
	public function index($setting) {
		if (isset($setting['module_description'][$this->config->get('config_language_id')])) {
			$data['heading_title'] = html_entity_decode($setting['module_description'][$this->config->get('config_language_id')]['title'], ENT_QUOTES, 'UTF-8');
			$data['html'] = html_entity_decode($setting['module_description'][$this->config->get('config_language_id')]['description'], ENT_QUOTES, 'UTF-8');
			


			if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/html.tpl')) {
				return $this->load->view($this->config->get('config_template') . '/template/module/html.tpl', $data);
			} else {
				return $this->load->view('default/template/module/html.tpl', $data);
			}
		}
	}
}
Edited by petyamirniy

Share this post


Link to post
Share on other sites

У меня не закомменчивает, но все равно не выполняет, просто идет код в html, чтобы редактор не закомменчивал, сделал так, перешел на редактор CKEditor, в ocstore это есть и добавил в файл config.js строки в конце

 

	CKEDITOR.config.indentClasses = ["ul-grey", "ul-red", "text-red", "ul-content-red", "circle", "style-none", "decimal", "paragraph-portfolio-top", "ul-portfolio-top", "url-portfolio-top", "text-grey"];
    CKEDITOR.config.protectedSource.push(/<(style)[^>]*>.*<\/style>/ig);// разрешить теги <style>
    CKEDITOR.config.protectedSource.push(/<(script)[^>]*>.*<\/script>/ig);// разрешить теги <script>
    CKEDITOR.config.protectedSource.push(/<\?[\s\S]*?\?>/g);// разрешить php-код
    CKEDITOR.config.protectedSource.push(/<!--dev-->[\s\S]*<!--\/dev-->/g);
    CKEDITOR.config.allowedContent = true; /* все теги */

 

Edited by vman
обшибки

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By Gann
      Приветствую!
       
      Прошу посильной помощи в адаптации модуля с 2.3 на 2.1.
       
      Вот часть кода, которую не могу адаптировать:
       
      <file path="admin/controller/startup/startup.php"> <operation info="Add Shortcodes to admin $registry"> <search><![CDATA[$this->registry->set('encryption']]></search> <add position="after"><![CDATA[ // OpenCart Shortcodes $this->registry->set('shortcodes', new Shortcodes($this->registry)); ]]></add> </operation> </file> <file path="catalog/controller/startup/startup.php"> <operation info="Add Shortcodes to front $registry"> <search><![CDATA[$this->registry->set('encryption']]></search> <add position="after"><![CDATA[ // OpenCart Shortcodes $this->registry->set('shortcodes', new Shortcodes($this->registry)); ]]></add> </operation> </file> <file path="catalog/controller/startup/maintenance.php"> <operation> <search><![CDATA[function index()]]></search> <add position="after"><![CDATA[ //========= OpenCart Shortcodes //=== Default shortcodes $this->load->helper('shortcodes_default'); $class = new ShortcodesDefault($this->registry); $scDefaults = get_class_methods($class); foreach ($scDefaults as $shortcode) { $this->shortcodes->add_shortcode($shortcode, $class); } //=== Extensions shortcodes : for extensions developer $files = glob(DIR_APPLICATION . '/view/shortcodes/*.php'); if ($files) { foreach ($files as $file) { require_once($file); $file = basename($file, ".php"); $extClass = 'Shortcodes' . preg_replace('/[^a-zA-Z0-9]/', '', $file); $class = new $extClass($this->registry); $scExtensions = get_class_methods($class); foreach ($scExtensions as $shortcode) { $this->shortcodes->add_shortcode($shortcode, $class); } } } //--------------- OLD theme OpenCart 2 compatible $theme = $this->config->get('config_theme'); if ($this->config->get('config_theme') == 'theme_default') { $theme = $this->config->get('theme_default_directory'); } //=== Themes shortcodes : for theme developer $file = DIR_TEMPLATE . $theme . '/shortcodes_theme.php'; if (file_exists($file)) { require_once($file); $class = new ShortcodesTheme($this->registry); $scThemes = get_class_methods($class); foreach ($scThemes as $shortcode) { $this->shortcodes->add_shortcode($shortcode, $class); } } $this->event->trigger('shortcodes/themes/after', array(&$data)); //=== Custom shortcodes : user power! $file = DIR_TEMPLATE . $theme . '/shortcodes_custom.php'; if (file_exists($file)) { require_once($file); $class = new ShortcodesCustom($this->registry); $scCustom = get_class_methods($class); foreach ($scCustom as $shortcode) { $this->shortcodes->add_shortcode($shortcode, $class); } } //========= End:: OpenCart Shortcodes ]]></add> </operation> </file> В 2.1 нет startup
    • By Sunser
      300.00 руб
      Скачать/Купить дополнение


      Ease description - модуль упрощенного описания
      Ease description - модуль упрощенного описания для Opencart и ocStore.
       
      Расширение подходит и тестировалось на версиях Opencart 2.0, 2.1, 2.2, 2.3 и 3.0
      Так же подойдет для OpencartPro версии 2.1 и 2.3
      Расширение подходит и тестировалось на версиях ocStore 2.1, 2.3 и 3.0
      Расширение тестировалось на официальных версиях, скачанных из официальных сайтов сборок.
      Модуль тестировался по нескольких раз на всех выше указанных версиях сайта. Так же модуль проверялся на ошибки.
       
      -- Установка расширения:
      Есть два способа установки:
      1) Это просто откройте установщик расширений и выберите данное расширение под версию вашей сборки и установите, после чего обновите "Модификаторы", Потом перейдите в раздел Модулей и активируйте его, после чего настройте как вам необходимо. После настройки и сохранения модуля, перейдите в макеты или схемы и выберите место где вы хотите что бы модуль выводился и сохраните. После чего модуль появится на сайте;
      2) Распакуйте файл с версией вашего Opencart или ocStore и перетащите в корень вашего сайта. После чего обновите "Модификаторы", потом перейдите в раздел Модулей и активируйте его, после чего настройте как вам необходимо.
      Модуль не заменяет никаких файлов.
       
      -- Что может модуль:
      1) Модуль мультиязычный;
      2) Модуль выводит любой текст и заголовок на сайте, который вы можете редактировать как вам будет удобно;
      3) В модуле можно задавать ширину блока;
      4) В блоке есть настройка, при которой блок скрывается, если его нет в поле видимости, типа lazyload;
      5) В модуле можно выводить кнопку "показать еще";
      6) В модуле можно задавать скролл для текста
      7) Так же можно задавать стили для кнопки "показать еще";
      Зачем нужен этот модуль и как он работает?
      Модуль позволяет гибко, быстро и удобно настраивать вывод блоков с текстом на сайте.
      Например вам нужно на главной странице вывести блок с заголовком и текстом. С такой задачей может с легкостью справится модуль "Текстовый блок - HTML".
      Но а если вам нужно что бы на модуле была кнопка "загрузить еще", что бы при нажатии показывался весь текст. Или же вам надо что бы на модуле был скролл определенной высоты или задать ширину блока. То тогда нужно обращаться к программистам что бы дописывал функционал.
      А в данном модуле уже все сделано и займет немного времени в настройке и выводе.
       
      Модуль легкий в настройке.
      Модуль имеет 14 полей:
      1) Название модуля - тут просто пишите название модуля, оно будет отображаться в админке вашего сайта;
      2) Кнопка "Загрузить еще" - Она отвечает будет ли на блоке с текстом кнопка "показать еще";
      3) Высота блока для загрузить еще - отвечает за высоту блока, после которой появится кнопка "показать еще";
      4) Затухнение блока при кнопке "Загрузить еще" - отвечает за затухнение текста перед кнопкой "показать еще";
      5) Расположение кнопка "Загрузить еще" - отвечает за расположение кнопки "показать еще";
      6) Текст кнопки До нажатия - тут можно задать название кнопки "показать еще", по стандарту, если поле пустое, то выводится стандартный текст;
      7) Текст кнопки После нажатия - тут можно задать название кнопки "скрыть", по стандарту, если поле пустое, то выводится стандартный текст;
      8) Блок со скроллом - отвечает за то будет скрол на тексте или нет;
      9) Высота блока для скролла - задается высота для блока со скроллом;
      10) Умное появление - lazyload;
      11) Ширина блока с описанием - тут задается ширина блока с текстом, если поле равно 0, то ширина блока равна 100%;
      12) Статус - оно отвечает, будет работать модуль или нет на сайте.
      13) Заголовок - тут задается заголовок;
      14) Описание - тут задается описание
       
      Если вы заметите какие-то неполадки или у вас будет предложение по улучшению самого модуля, пишите в личное сообщения данного сервиса, после чего я вам обязательно отвечу.
      Добавил Sunser Добавлено 28.10.2019 Категория Модули Системные требования Сайт разработчика Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1
      2.0 ocStore 3.0
      2.3
      2.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1 Обращение к серверу разработчика Нет  
    • By Sunser
      Скачать/Купить дополнение


      Ease code - модуль упрощенного добавления кода
      Ease code - модуль упрощенного добавления кода для Opencart и ocStore.
       
      Расширение подходит и тестировалось на версиях Opencart 2.0, 2.1, 2.2, 2.3 и 3.0
      Так же подойдет для OpencartPro версии 2.1 и 2.3
      Расширение подходит и тестировалось на версиях ocStore 2.1, 2.3 и 3.0
      Расширение тестировалось на официальных версиях, скачанных из официальных сайтов сборок.
      Модуль тестировался по нескольких раз на всех выше указанных версиях сайта. Так же модуль проверялся на ошибки.
       
      -- Установка расширения:
      Есть два способа установки:
      1) Это просто откройте установщик расширений и выберите данное расширение под версию вашей сборки и установите, после чего обновите "Модификаторы", Потом перейдите в раздел Модулей и активируйте его, после чего настройте как вам необходимо.
      Модуль не заменяет никаких файлов.
       
      -- Что может модуль:
      1) Модуль выводит javascript код(<script>*</script>);
      2) Модуль выводит код для стилей(<style>*</style>);
      3) Модуль выводит html код;
      3) Можно по отдельности включать модуль в headere, body или footere
       
      Зачем нужен этот модуль и как он работает?
      Данный модуль упрощает работу с кодом. Например у вас есть скрипт который нужно добавить в head, вам не нужно дергать вашего админа, отвечающего за сайт или программиста, что бы он добавил этот код или убрал. А можете запросто сами сделать за пару минут в этом модуле.
      Или же вам нужно добавить код аналитики на сайт, то тоже самое, открываете этот модуль и добавляете код, сохраняете, после чего код появится в указанном вами месте.
      Если вам надо что бы этот код не отображался на сайте, то вы можете его отключить в модуле.
       
      -- Ошибки:
      Если вы установили модуль, сделали все как указано свыше и модуль не работает или какая та часть кода не выводится, то скорее всего вы меняли свой шаблон и модификатор не находит указанного пути в файле модификатора и не можете сами исправить, в таком случае, обратитесь к автору модуля и он поможет в данном решении.
      Примечание - Модуль не обрабатывает и не выводит php или twig код

      Модуль легкий в настройке.
      Модуль имеет 6 полей:
      3 поля куда вы добавляете код
      3 поля со статусом, включать этот код или нет

      Если вы заметите какие-то неполадки или у вас будет предложение по улучшению самого модуля, пишите в личное сообщения данного сервиса, после чего я вам обязательно отвечу.
      Добавил Sunser Добавлено 29.10.2019 Категория Модули Системные требования Сайт разработчика Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1
      2.0 ocStore 3.0
      2.3
      2.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1 Обращение к серверу разработчика Нет  
    • By Sunser
      Ease code - модуль упрощенного добавления кода для Opencart и ocStore.
       
      Расширение подходит и тестировалось на версиях Opencart 2.0, 2.1, 2.2, 2.3 и 3.0
      Так же подойдет для OpencartPro версии 2.1 и 2.3
      Расширение подходит и тестировалось на версиях ocStore 2.1, 2.3 и 3.0
      Расширение тестировалось на официальных версиях, скачанных из официальных сайтов сборок.
      Модуль тестировался по нескольких раз на всех выше указанных версиях сайта. Так же модуль проверялся на ошибки.
       
      -- Установка расширения:
      Есть два способа установки:
      1) Это просто откройте установщик расширений и выберите данное расширение под версию вашей сборки и установите, после чего обновите "Модификаторы", Потом перейдите в раздел Модулей и активируйте его, после чего настройте как вам необходимо.
      Модуль не заменяет никаких файлов.
       
      -- Что может модуль:
      1) Модуль выводит javascript код(<script>*</script>);
      2) Модуль выводит код для стилей(<style>*</style>);
      3) Модуль выводит html код;
      3) Можно по отдельности включать модуль в headere, body или footere
       
      Зачем нужен этот модуль и как он работает?
      Данный модуль упрощает работу с кодом. Например у вас есть скрипт который нужно добавить в head, вам не нужно дергать вашего админа, отвечающего за сайт или программиста, что бы он добавил этот код или убрал. А можете запросто сами сделать за пару минут в этом модуле.
      Или же вам нужно добавить код аналитики на сайт, то тоже самое, открываете этот модуль и добавляете код, сохраняете, после чего код появится в указанном вами месте.
      Если вам надо что бы этот код не отображался на сайте, то вы можете его отключить в модуле.
       
      -- Ошибки:
      Если вы установили модуль, сделали все как указано свыше и модуль не работает или какая та часть кода не выводится, то скорее всего вы меняли свой шаблон и модификатор не находит указанного пути в файле модификатора и не можете сами исправить, в таком случае, обратитесь к автору модуля и он поможет в данном решении.
      Примечание - Модуль не обрабатывает и не выводит php или twig код

      Модуль легкий в настройке.
      Модуль имеет 6 полей:
      3 поля куда вы добавляете код
      3 поля со статусом, включать этот код или нет

      Если вы заметите какие-то неполадки или у вас будет предложение по улучшению самого модуля, пишите в личное сообщения данного сервиса, после чего я вам обязательно отвечу.
    • By Sunser
      Ease description - модуль упрощенного описания для Opencart и ocStore.
       
      Расширение подходит и тестировалось на версиях Opencart 2.0, 2.1, 2.2, 2.3 и 3.0
      Так же подойдет для OpencartPro версии 2.1 и 2.3
      Расширение подходит и тестировалось на версиях ocStore 2.1, 2.3 и 3.0
      Расширение тестировалось на официальных версиях, скачанных из официальных сайтов сборок.
      Модуль тестировался по нескольких раз на всех выше указанных версиях сайта. Так же модуль проверялся на ошибки.
       
      -- Установка расширения:
      Есть два способа установки:
      1) Это просто откройте установщик расширений и выберите данное расширение под версию вашей сборки и установите, после чего обновите "Модификаторы", Потом перейдите в раздел Модулей и активируйте его, после чего настройте как вам необходимо. После настройки и сохранения модуля, перейдите в макеты или схемы и выберите место где вы хотите что бы модуль выводился и сохраните. После чего модуль появится на сайте;
      2) Распакуйте файл с версией вашего Opencart или ocStore и перетащите в корень вашего сайта. После чего обновите "Модификаторы", потом перейдите в раздел Модулей и активируйте его, после чего настройте как вам необходимо.
      Модуль не заменяет никаких файлов.
       
      -- Что может модуль:
      1) Модуль мультиязычный;
      2) Модуль выводит любой текст и заголовок на сайте, который вы можете редактировать как вам будет удобно;
      3) В модуле можно задавать ширину блока;
      4) В блоке есть настройка, при которой блок скрывается, если его нет в поле видимости, типа lazyload;
      5) В модуле можно выводить кнопку "показать еще";
      6) В модуле можно задавать скролл для текста
      7) Так же можно задавать стили для кнопки "показать еще";
      Зачем нужен этот модуль и как он работает?
      Модуль позволяет гибко, быстро и удобно настраивать вывод блоков с текстом на сайте.
      Например вам нужно на главной странице вывести блок с заголовком и текстом. С такой задачей может с легкостью справится модуль "Текстовый блок - HTML".
      Но а если вам нужно что бы на модуле была кнопка "загрузить еще", что бы при нажатии показывался весь текст. Или же вам надо что бы на модуле был скролл определенной высоты или задать ширину блока. То тогда нужно обращаться к программистам что бы дописывал функционал.
      А в данном модуле уже все сделано и займет немного времени в настройке и выводе.
       
      Модуль легкий в настройке.
      Модуль имеет 14 полей:
      1) Название модуля - тут просто пишите название модуля, оно будет отображаться в админке вашего сайта;
      2) Кнопка "Загрузить еще" - Она отвечает будет ли на блоке с текстом кнопка "показать еще";
      3) Высота блока для загрузить еще - отвечает за высоту блока, после которой появится кнопка "показать еще";
      4) Затухнение блока при кнопке "Загрузить еще" - отвечает за затухнение текста перед кнопкой "показать еще";
      5) Расположение кнопка "Загрузить еще" - отвечает за расположение кнопки "показать еще";
      6) Текст кнопки До нажатия - тут можно задать название кнопки "показать еще", по стандарту, если поле пустое, то выводится стандартный текст;
      7) Текст кнопки После нажатия - тут можно задать название кнопки "скрыть", по стандарту, если поле пустое, то выводится стандартный текст;
      8) Блок со скроллом - отвечает за то будет скрол на тексте или нет;
      9) Высота блока для скролла - задается высота для блока со скроллом;
      10) Умное появление - lazyload;
      11) Ширина блока с описанием - тут задается ширина блока с текстом, если поле равно 0, то ширина блока равна 100%;
      12) Статус - оно отвечает, будет работать модуль или нет на сайте.
      13) Заголовок - тут задается заголовок;
      14) Описание - тут задается описание
       
      Если вы заметите какие-то неполадки или у вас будет предложение по улучшению самого модуля, пишите в личное сообщения данного сервиса, после чего я вам обязательно отвечу.
  • Recently Browsing   0 members

    No registered users viewing this page.

×

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.