MODX — зачем получать {$modx-›getOption('‹identifiers›')} во внешнем интерфейсе?

Я не эксперт в MODX. Но я работаю с PHP / Wordpress.

Мне нужно исправить один веб-сайт MODX, и я получаю несколько фрагментов текста, например: {$modx->getOption('<identifiers>')} на интерфейсе.

Не могли бы вы подсказать, как начать решать эту проблему?

Я думаю, что по какой-то причине этот фрагмент кода не отображается во внешнем интерфейсе, когда он должен это делать.


person Angel    schedule 18.08.2017    source источник


Ответы (2)


В MODX только сниппеты могут содержать PHP. Фрагменты, шаблоны и контент могут содержать только HTML-разметку (или другие типы неанализируемого контента). Это нужно для того, чтобы отделить логику от разметки.

Похоже, у вас где-то есть PHP-код, который его не поддерживает.

В качестве альтернативы, если у вас нет такого кода на вашем сайте, это также может быть какая-то проблема с сервером, когда один или несколько файлов PHP, которые использует MODX, обрабатываются как статический файл, а не файл PHP, который необходимо выполнить, но вы, вероятно, увидите гораздо больше, чем просто вызов $modx->getOption.

person Mark Hamstra    schedule 13.09.2017

Сначала вам нужно определить, откуда исходит этот вывод. Если это внутри сниппета, то проблема в php-коде. Я предполагаю, что это, скорее всего, будет либо в ресурсе, либо в шаблоне, либо в фрагменте. Ответы Марка Хамстры дают хорошее объяснение этих элементов.

Метод $modx->getOption() обычно ссылается на системные настройки в вашей установке modx.

Чтобы отобразить эти значения, вам нужно использовать синтаксис шаблона modx [[++identifier]]

Все системные настройки доступны в ваших шаблонах с использованием нотации [[++placeholder]].

https://docs.modx.com/revolution/2.x/administering-your-site/settings/system-settings/

person Ian Brindley    schedule 13.09.2017