Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Свой php-код в модуле html


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

Змінено користувачем Maga499
Надіслати
Поділитися на інших сайтах


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

 

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

 

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

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

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

Надіслати
Поділитися на інших сайтах


  • 2 years later...

Добрый день, 

/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);
			}
		}
	}
}
Змінено користувачем petyamirniy
Надіслати
Поділитися на інших сайтах


  • 3 weeks later...

У меня не закомменчивает, но все равно не выполняет, просто идет код в 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; /* все теги */

 

Змінено користувачем vman
обшибки
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.