[tagElementPlugin] Добавляем новые возможности
Сегодня утром неожиданно в голову постучалась мысль, что можно работать не только с тегами чанков и сниппетов. А так как в прошлом своем эксперименте я близко познакомился с парсером pdoParser, то решил привлечь его для работы. Теперь tagElementPlugin умеет обрабатывать и другие теги:
Выделяя любой из этих тегов, в ответ можно получить значение этого тега (при условии, что парсер смог его получить). Выделять можно и со скобками и без скобок. Т.е. и так [[++site_name]] и так ++site_name.
Важно понимать, что такой тег [[~[[+id]] или такой [[#[[*id]].introtext]] парсер обработать правильно не сможет, так как ему нужно точное значение id. А вот такой [[#[[++site_start]].pagetitle]] сможет.
Кроме того, вы можете получить значение из суперглобальных массивов
Хочу обратить внимание, что тег [[%lexicon_entry]] распарсится только в том случае, если загружен соответствующий лексикон. В большинстве случаев используется лексикон из сторонних дополнений. Чтобы парсер смог получить значение этого тега, нужно добавить в тег параметр namespace:
Теперь tagElementPlugin может получать правильное название тега из выделения. Т.е. можно выделить вот такой тег
Продолжение.
Предыдущий пост.
Полная документация.
- [[~1]]
- [[%lexicon_entry]]
- [[++system_setting]]
- [[#1.pagetitle]]
Теперь подробнее
Выделяя любой из этих тегов, в ответ можно получить значение этого тега (при условии, что парсер смог его получить). Выделять можно и со скобками и без скобок. Т.е. и так [[++site_name]] и так ++site_name.
Важно понимать, что такой тег [[~[[+id]] или такой [[#[[*id]].introtext]] парсер обработать правильно не сможет, так как ему нужно точное значение id. А вот такой [[#[[++site_start]].pagetitle]] сможет.
Кроме того, вы можете получить значение из суперглобальных массивов
[[#POST.key]]
[[#SESSION.another_key]]
[[#GET.key3]]
[[#REQUEST.key]]
[[#SERVER.key]]
[[#FILES.key]]
[[#COOKIE.some_key]]Подробнее про pdoParser можно прочитать тут.Хочу обратить внимание, что тег [[%lexicon_entry]] распарсится только в том случае, если загружен соответствующий лексикон. В большинстве случаев используется лексикон из сторонних дополнений. Чтобы парсер смог получить значение этого тега, нужно добавить в тег параметр namespace:
[[%lexicon_entry? &namespace=`namespace компонента`]] Ну и напоследок
Теперь tagElementPlugin может получать правильное название тега из выделения. Т.е. можно выделить вот такой тег
[[!mySnippet@propertySet? ¶m=`1`]] и tagElementPlugin откроет диалог для сниппета mySnippet.Продолжение.
Предыдущий пост.
Полная документация.
Комментарии: 21
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Это так и задумано, или можно это сделать?
А то постоянно забываю т.к. работаю с раскрытым редактором на всю страницу и пытаюсь сохранить через Ctrl+S, т.к. забываю что это в окошке…
P.S. Админка обновление не видит, возможно дойдёт ещё…
По SimpleAceCodeEditor без понятия. Смотри как он подключается в плагине. Может это поможет.
Версия плагина 1.2.2-pl
Использую редактор Ace.
OS windows10
Подскажите плз, в чем может быть причина.