Deprecated: str_replace(): Passing null to parameter #1 ($search) of type array|string is deprecated in /var/www/jsd/data/www/jsd.ru/plugins/system/admintools/src/Feature/CustomAdminFolder.php on line 83
Получение тела статьи
Skip to main content

Получение тела статьи

Теперь задача сводится к тому, чтобы получить всё тело статьи, вычленить из него нужные фрагменты с помощью регулярных выражений и распределить их по переменным PHP, чтобы позже можно было выводить значения переменных с помощью специализированных элементов конструктора YooTheme Builder. В данном шаге получаем всё тело статьи и помещаем его в переменную `$page_content` с помощью конструкции приведенной ниже: ***Внимание! Здесь и далее (во всех шагах инструкции) для корректной работы кода в слове `source`, заключенным в фигурные скобки, нужно заменить символ `$` на букву `s` в тех местах, где этот символ присутствует.*** ``` {$ource} {/source} ``` Странный тег-контейнер `{$ource}{/source}` является частью синтаксиса плагина Sourcerer от Regular Labs, установка которого позволяет (в том числе) использовать произвольный пользовательский PHP-код внутри полей Joomla. Для получения тела статьи нужно использовать стандартный элемент конструктора **Code**, который изначально предназначен для отображения любого кода и является единственным элементом, который не очищает получаемые данные от HTML кода, который мы используем для разметки статьи. Элемент **Code**, ответственный за передачу тела статьи переменной, нужно разместить в любом месте, предшествующем выводу статьи. Теоретически можно получить контент статьи с помощью родных переменных Joomla, но я фиговый программист и не умею так делать, поэтому получаю тело статьи с помощью элемента, работающего с динамическими данными. **Работа с элементом:** - Код (элемент) -> Ещё (вкладка) -> Имя (поле) -> Задаю элементу имя «Помещаем HTML код материала в переменную $page_content». Делается это исключительно для наглядности и чтобы не запутаться. - Код (элемент) -> Ещё (вкладка) -> Динамический контент (поле) -> Выбираем из списка «Материал». - Код (элемент) -> Контент (вкладка) -> Контент (поле) -> Выбирать динамически (ссылка) -> Материал (группа) -> Контент (тип данных) - Код (элемент) -> Контент (вкладка) -> Контент (поле) -> Редактировать (кнопка с изображением карандаша внутри поля) -> Фильтры (группа полей) -> После (поле) -> `'; ?> {/source}` (Любой «разорванный» PHP-код нужно вставлять начиная с завершающей части, чтобы избежать фатальных ошибок PHP) - Код (элемент) -> Контент (вкладка) -> Контент (поле) -> Редактировать (кнопка с изображением карандаша внутри поля) -> Фильтры (группа полей) -> До (поле) -> `{$ource}
  • Просмотров: 9