Добавить php скрипт joomla

Внедрение/вставка PHP-кода в статьи/материалы Joomla

Довольно часто возникает необходимость внедрить PHP-код в Joomla-материал (калькулятор, простая форма и т.п.), сделать это непосредственно из админки не получится (ибо все что мы вставляем в поля при создании материалов считается HTML-кодом).
Краткая инструкция «как это сделать»:
1. Установить мамбот/плагин (в зависимости от версии Joomla) RD AddPHP fur Joomla )), брать тут: http://www.run-digital.com/loesungen/open-source/addphp.html.
2. Сделать/найти/позаимствовать PHP-файл, закинуть его в, например, папку «php» в корне сайта.
3. В нужный материал вставить код вызова вашего файла: .
4. Готово.

А здесь тестовый пример php-файла (единствееное на что способен этот код — это сложение двух int or float чисел))):

 
Первое слагаемое: echo $_REQUEST['p'] ?>">
Второе слагаемое: echo $_REQUEST['v'] ?>">
echo $_REQUEST['p'].'
'
; echo $_REQUEST['v'].'
'
; echo 'Сумма:' .($_REQUEST['p'] + $_REQUEST['v']); ?>

Для интересующихся полный код мамбота:

defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' ); $_MAMBOTS->registerFunction( 'onPrepareContent', 'botAddPhp' ); function botAddPhp( $published, &$row, $mask=0, $page=0 ) { global $mosConfig_absolute_path; // expression to search for $regex = '//i'; if (!$published ) { $row->text = preg_replace( $regex, '', $row->text ); return; } // find all instances of mambot and put in $matches $matches = array(); preg_match_all( $regex, $row->text, $matches, PREG_SET_ORDER ); foreach ($matches as $elm) { parse_str( $elm[2], $args ); $phpfile=@$args['file']; $output = ""; if ( $phpfile ) { $phpfile = $mosConfig_absolute_path . '/' . $phpfile; if (file_exists($phpfile)) { ob_start(); include($phpfile); $output .= ob_get_contents(); ob_end_clean(); } else { $output = "File: $phpfile don't exists"; } } $row->text = preg_replace($regex, $output, $row->text, 1); } return true; }

Вот так вот коротенько, а сколько пользы .

Источник

Как вставить PHP код в Joomla

Рано или поздно мы сталкиваемся с необходимостью оживить, улучшить и оптимизировать наш сайт, снабдив его динамическим содержимым. И здесь на помощь приходят различные методы и языки, наиболее популярные и широкоиспользуемые из них это CSS, JavaScript и PHP.

CSS определяет внешний вид элементов, их цвета, размеры, позиционирование на странице и, в некоторых случаях, анимацию.

Зачем же нужен PHP и в чем разница между JavaScript и PHP?

JavaScript – браузерный язык программирования, т.е. его исполняет сам браузер по ходу отображения страницы или различных действий пользователя (передвижение указателя, щелчки мыши, скроллинг экрана, нажатия клавиш – всё это события языка JavaScript). C помощью него мы можем прятать/отображать различные блоки на странице или же их изменять, и вообще любым образом манипулировать элементами HTML (подробнее см DOM — Document Object Model). JavaScript заключается в тэги и загружается полностью вместе со всем остальным содержимым веб-страницы.

PHP в отличии от JavaScript’a – серверный язык программирования, и результатом его выполнения (компиляции) является HTML-код, готовая веб-страница (которая зачастую может содержать фрагменты JavaScript’a). PHP выполняется один раз в момент загрузки страницы и отвечает собственно за то, какая страница или какое содержимое будет передано браузеру. Как только страница загрузилась, PHP закончил свою работу и включится снова лишь тогда, когда будет совершен переход на другую страницу (или обновление текущей по F5), либо обращение через Ajax.

Стоит также отметить, что ошибки при выполнении JavaScript’a не приведут к неработоспособности сайта (хотя последнее время довольно редко обходится без javascript-компонентов, которые, в результате ошибок в консоли, могут перестать работать), в то время как ошибки в коде PHP скорее всего «положат» сайт — будет просто белый экран. Поэтому разработчики Joomla решили обезопасить пользователей, запретив вставлять php-код непосредственно в материал. В том числе, и в целях безопасности от возможных атак. Вообще, задействовать PHP в Joomla целесообразнее через плагины, модули, компоненты, переопределения шаблонов и макетов (как именно – в следующих постах).

Но если вы точно и окончательно решили вставить код php в Joomla – могу посоветовать плагин, который снимает запреты и позволяет вставлять php-код непосредственно в материал (не забудьте отключить визуальные редакторы – они также будут обрезать вхождения JavaScript или PHP кода).

Плагин называется DirectPHP.

UPD.: Также можете обратить внимание на такое расширение, как Sourcerer.

После его установки и активации вы можете испробовать его в действии, поприветствовав мир всеми любимой фразой:

Однако более правильный путь — научиться писать модули и плагины и встраивать их прямо в материал методом {loadmodule mod_login} (для модуля mod_login)

А также разобраться с переопределениями в компонентах и модулях.

Источник

Как вставить скрипт в Joomla

От автора: приветствую Вас уважаемые читатели. Современные веб-сайты, активно используют JavaScript для реализации дополнительного функционала, непосредственно на стороне клиента. К примеру, слайдеры и галереи изображений, валидация информации и т.д. Поэтому в данном уроке мы поговорим о том, как вставить скрипт в Joomla используя различные способы.

Как Вы знаете за формирование дизайна пользовательской части сайта, отвечает шаблон. Соответственно именно в шаблоне осуществляется подключение основных библиотек, фреймворков, скриптов и стилей. Но шаблон формирует основную структуру сайта, а за отображение информации компонентов или модулей, отвечают их встроенные макеты, которые при необходимости могут переопределяться в шаблоне. Таким образом, необходимые, для конкретных расширений скрипты, могут подключаться непосредственно в макетах.

Из выше сказанного следует, что скрипты для joomla могут быть подключены в определенном файле шаблона, или макета конкретного расширения. И наиболее удобное место – это, конечно же, главный файл шаблона index.php, так как расширения доступны не на всех страницах сайта.

Поэтому, давайте рассмотрим, первый способ подключения скриптов в Joomla, который предусматривает ручное добавление определенного кода. Итак, открываем исходные файлы CMS Joomla и переходим в каталог templates.

Профессия PHP-разработчик с нуля до PRO

Готовим PHP-разработчиков с нуля

Вы с нуля научитесь программировать сайты и веб-приложения на PHP, освоите фреймворк Laravel, напишете облачное хранилище и поработаете над интернет-магазином в команде. Сможете устроиться на позицию Junior-разработчика.

В данной папке мы видим список каталогов с установленными шаблонами. Далее переходим в папку активного шаблона и открываем файл index.php в текстовом редакторе.

Соответственно между тегами head как правило подключаются необходимые элементы (скрипты, стили и т.д). А значит, мы можем вручную прописать подключение или же использовать специальный метод, о котором мы далее поговорим. Поэтому давайте подключим простейший скрипт, который описан в отдельном файле script.js. Вот его код:

Источник

Как вставить в страницу php код? — Joomla 3.x: Общие вопросы

Контент-плагин Joomla, позволяющий вставлять информацию из материалов и пользовательских полей материала в любом месте, где работают контент-плагины с помощью шорт-кода вида .Для плагина возможно (и даже необходимо) создавать свои макеты вывода, которые Вы указываете в шорт-коде.

Joomla 5: плагин обратной совместимости

Как известно, из кода Joomla постепенно исчезают устаревшие классы API. Многие из них «продержались» в ядре со времён Joomla 1.5. Отказ от них — это эволюция. Однако, удаление устаревших классов и методов будет вызывать ошибки в расширениях, которые разработчики вовремя не обновили.

Перенос материалов из компонента K2 в стандартный компонент материалов Joomla

K2 — в целом неплохой компонент (был). Некоторое время он давал гораздо больше возможностей для отображения контента, чем стандартный компонент материалов Joomla. Однако, время не стоит на месте, и сейчас стандартный компонент не уступает в возможностях компоненту K2. Разработчики Joomla потрудились на славу, чего не скажешь о разработчиках компонента K2. Мало того, что долгое время не обновлялся функционал компонента, так они не подготовили обновление для перехода на 4 версию Joomla. На момент написания этой статьи прошло почти два года с выпуска Joomla 4, а обновления компонента K2 для совместимости с новой версией так и нет. Возможно, на тот момент, когда вы будете читать эти строки разработчики K2 что-то выкатят, но сейчас нет.

Источник

Читайте также:  Форматы html xls txt
Оцените статью