[РЕШЕНО] Тикеты [tickets] добавляют в header лишний код
Подскажите, как сделать так, чтобы tickets не добавляли свой код на страницы.
Не понимаю — к шаблону или чанку вроде как не привязан компонент. Как итог на всех страницах, где запрашиваю страницы с комментариями (даже если через PdoResources) тянет свои CSS и JS.
Пример. Вывод «отзывов» (раздел с тикетами). Нужно то Картинка, «тэг» и интротекст
Добавляет в header вот что:
Не могу понять на что срабатывает вставка этого кода.
Не понимаю — к шаблону или чанку вроде как не привязан компонент. Как итог на всех страницах, где запрашиваю страницы с комментариями (даже если через PdoResources) тянет свои CSS и JS.
Пример. Вывод «отзывов» (раздел с тикетами). Нужно то Картинка, «тэг» и интротекст
[[pdoResources?
&parents=`1883`
&hideContainers=`0`
&showUnpublished=`1`
&includeTVs=`Otzivi.BigPic,Otziv.Teg`
&tpl=`tpl.Otzivi`
&tvFilters=`Otziv.Teg==%[[+tag]]%`
&limit=`6`
]]
Добавляет в header вот что:
<script type="text/javascript">if (typeof TicketsConfig == "undefined") {TicketsConfig={"ctx":"web","jsUrl":"\/assets\/components\/tickets\/js\/web\/","cssUrl":"\/assets\/components\/tickets\/css\/web\/","actionUrl":"\/assets\/components\/tickets\/action.php","close_all_message":"\u0437\u0430\u043a\u0440\u044b\u0442\u044c \u0432\u0441\u0435","tpanel":0,"enable_editor":1};} else {MergeConfig={"ctx":"web","jsUrl":"\/assets\/components\/tickets\/js\/web\/","cssUrl":"\/assets\/components\/tickets\/css\/web\/","actionUrl":"\/assets\/components\/tickets\/action.php","close_all_message":"\u0437\u0430\u043a\u0440\u044b\u0442\u044c \u0432\u0441\u0435","tpanel":0,"enable_editor":1}; for (var attrname in MergeConfig) { TicketsConfig[attrname] = MergeConfig[attrname]; }}</script>
<script type="text/javascript">TicketsConfig.editor={ticket: {onTab: {keepDefault:false, replaceWith:" "},
markupSet: [
{name:"Bold", className: "btn-bold", key:"B", openWith:"<b>", closeWith:"</b>" },
{name:"Italic", className: "btn-italic", key:"I", openWith:"<i>", closeWith:"</i>" },
{name:"Underline", className: "btn-underline", key:"U", openWith:"<u>", closeWith:"</u>" },
{name:"Stroke through", className: "btn-stroke", key:"S", openWith:"<s>", closeWith:"</s>" },
{separator:"---------------" },
{name:"Bulleted List", className: "btn-bulleted", openWith:" <li>", closeWith:"</li>", multiline:true, openBlockWith:"<ul>\n", closeBlockWith:"\n</ul>"},
{name:"Numeric List", className: "btn-numeric", openWith:" <li>", closeWith:"</li>", multiline:true, openBlockWith:"<ol>\n", closeBlockWith:"\n</ol>"},
{separator:"---------------" },
{name:"Quote", className: "btn-quote", openWith:"<blockquote>", closeWith:"</blockquote>"},
{name:"Code", className: "btn-code", openWith:"<code>", closeWith:"</code>"},
{name:"Link", className: "btn-link", openWith:"<a href=\"[![Link:!:http://]!]\">", closeWith:"</a>" },
{name:"Picture", className: "btn-picture", replaceWith:"<img src=\"[![Source:!:http://]!]\" />" },
{separator:"---------------" },
{name:"Cut", className: "btn-cut", openWith:"" }
]},comment: {onTab: {keepDefault:false, replaceWith:" "},
markupSet: [
{name:"Bold", className: "btn-bold", key:"B", openWith:"<b>", closeWith:"</b>" },
{name:"Italic", className: "btn-italic", key:"I", openWith:"<i>", closeWith:"</i>" },
{name:"Underline", className: "btn-underline", key:"U", openWith:"<u>", closeWith:"</u>" },
{name:"Stroke through", className: "btn-stroke", key:"S", openWith:"<s>", closeWith:"</s>" },
{separator:"---------------" },
{name:"Quote", className: "btn-quote", openWith:"<blockquote>", closeWith:"</blockquote>"},
{name:"Code", className: "btn-code", openWith:"<code>", closeWith:"</code>"},
{name:"Link", className: "btn-link", openWith:"<a href=\"[![Link:!:http://]!]\">", closeWith:"</a>" },
{name:"Picture", className: "btn-picture", replaceWith:"<img src=\"[![Source:!:http://]!]\" />" }
]}};</script>
<link rel="stylesheet" href="/assets/components/tickets/js/web/editor/editor.css" type="text/css" />
<script type="text/javascript">TicketsConfig.formBefore = 0;TicketsConfig.thread_depth = 0;</script>
Боремся с PageSpeed от Гугла и вот на эти CSS и JS ругается, что они выдают задержку. И готов смириться, если они нужны. Но тут то просто вывод «отзывов (тикетов)».Не могу понять на что срабатывает вставка этого кода.
Комментарии: 8
Здесь
Часть кода можно убрать отключив редактор (настройка tickets.enable_editor).
Подключение основного скрипта без правки исходников не сделать.
Часть кода можно убрать отключив редактор (настройка tickets.enable_editor).
Подключение основного скрипта без правки исходников не сделать.
Спасибо. Это знаю. Но менеджеры (девушки) — будут против )
Скорее не понимаю как вывести через чанк документы к которым «привязаны» tickeks но без добавления указанного куска в header
Скорее не понимаю как вывести через чанк документы к которым «привязаны» tickeks но без добавления указанного куска в header
Сниппет pdoResources никаким образом не добавляет указанные скрипты и стили от Tickets.
Да. pdoResources не добавляет.
Как выяснилось. Добавляет вот что в шаблоне:
Т.е. выход только один — выносить отзывы и блоги (где разрешено комментирование) в отдельный шаблон?
Как выяснилось. Добавляет вот что в шаблоне:
[[If? &subject=`[[*parent]]` &operator=`in_array` &operand=`236` &then=`
<!-- БЛОГ статьи -->
[[TicketComments? &allowGuest=`1` &autoPublish=`0` &autoPublishGuest=`0` &allowGuestEdit=`0` ]]
`]]
Т.е. MODX обрабатывая все свои тэги вставляет этот код несмотря на то, что этот код использоваться не будет.Т.е. выход только один — выносить отзывы и блоги (где разрешено комментирование) в отдельный шаблон?
Здесь нужно понимать, как работает парсер MODX. Это именно ПАРСЕР, а не шаблонизатор.
Он сначала ВСЕ парсит, а потом выполняет условия. Т.е. TicketComments вызывается всегда, каким бы ни был parent в вашем If.
Либо в отдельный шаблон убирайте, либо переводите сайт на шаблонизатор Fenom, который уже условия обрабатывать более привычно для человеческого восприятия.
Он сначала ВСЕ парсит, а потом выполняет условия. Т.е. TicketComments вызывается всегда, каким бы ни был parent в вашем If.
Либо в отдельный шаблон убирайте, либо переводите сайт на шаблонизатор Fenom, который уже условия обрабатывать более привычно для человеческого восприятия.
Да уже понял — что сам себе буратино подложил бяку.
Но сайт на fenom уже не переведешь (в чанках он включен) — около 2тыс страниц. Сайт «ложится» сразу, поди разбери почему — при большом количестве страниц/чанков/сниппетов.
Попробую вынести в чанк и там уже сделать проверку на {$_modx->resource.parent}
Но сайт на fenom уже не переведешь (в чанках он включен) — около 2тыс страниц. Сайт «ложится» сразу, поди разбери почему — при большом количестве страниц/чанков/сниппетов.
Попробую вынести в чанк и там уже сделать проверку на {$_modx->resource.parent}
Хватит простого сниппета-обёртки
[[!ShowComments? &allowGuest=`1` &autoPublish=`0` &autoPublishGuest=`0` &allowGuestEdit=`0`]]
А сам сниппет в 1 строчкуreturn $modx->resource->parent == 236 ? $modx->runSnippet('TicketComments', $scriptProperties) : '';
Огромное спасибо. Работает.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.