Получение тела статьи
Теперь задача сводится к тому, чтобы получить всё тело статьи, вычленить из него нужные фрагменты с помощью регулярных выражений и распределить их по переменным 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