171 похожих чатов

Комрады! Встретил тут проблему с очередностью обработки поля [[*content]] -

внутри использован pdoField в виде [[#123.content]] и pdoParser его отрабатывает видимо после того, как срабатывает мой плагин на OnWebPagePrerender - а надо чтобы он сначала инжектил контент из другого ресурса, а потом всё вместе обрабатывал плагином.

Мой плагин с приоритетом 0 установлен, я заметил что плагин pdoTools стоит по-умолчанию с приоритетом -100. Если он запускает парсинг, то порядок должен быть как я ожидаю))

Куда ещё порыть чтобы найти причину?

11 ответов

24 просмотра
Дима-🚀 Сайт Автор вопроса

Понятно что можно сделать фильтр вывода с такой же обработкой как и в плагине, но не хочется вызовы искать внутри ресурсов и контент-менеджеру объяснять, надо глобально как-то решать.

те во время загрузки web страницы ты где-то инклюдишь контент с другой страницы?

Дима-🚀 Сайт Автор вопроса
Алексей Смирнов
те во время загрузки web страницы ты где-то инклюд...

Нет же, у меня просто в контенте вызывается FastField. Ресурс id # 1 - тот что я загружаю (на котором «проблема»). и в поле content у этого ресурса, контент-менеджер написал конструкцию [[#2.content]] (это фича pdoTools вроде FastField называется) Ресурс id # 2 - тот у которого есть контент в поле content )) А моим плагином я грубо говоря target =_blanc ставлю внешним ссылкам. Так вот код из ресурса # 1 обрабатывается моим плагином, но за исключением кода из ресурса # 2, который благодаря FastField должен был уже быть включён внутрь поля *content ресурса # 1. Никакой алхимии вроде! Я так тыщу раз делал. Вполне нормально же ставить ссылки вида [[~2]], а я вот решил не url страницы 2 вывести, а её контент)) Но я раньше не замечал что плагины при выводе не обрабатывают такое. Я подумал может это попсовая тема. Так где бы копнуть?)

Дима 🚀 Сайт
Нет же, у меня просто в контенте вызывается FastFi...

ох... ну я ни разу не использовал в контенте fastField и ярый противник такого подхода с текстом.. как вариант написать свой сниппет -прокладку (те ее вставлять а не fastField) или работать из плагина уже со сформированной страницей. И еще пробовал своему плагину приоритет 500 давать вместо 0?

Дима-🚀 Сайт Автор вопроса
Алексей Смирнов
ох... ну я ни разу не использовал в контенте fastF...

• полный вызов [[pdoField? &id=481 &field=content]] тоже срабатывает, но тоже не обрабатывается плагином, как и короткий [[#481.content]] так что боюсь обёртка не поможет • приоритет 500 попробовал — не помогло • ещё заметил что у меня pdoTools на несколько минорных версий отстал, обновил (и повторил все тесты), не помогло Да что происходит!? Может ещё есть идеи?

Дима 🚀 Сайт
• полный вызов [[pdoField? &id=481 &field=content]...

ну попробуй чанком вставлять типа: [[$test]] а в чанке тест: [[pdoField? &id=481 &field=content]]

Дима-🚀 Сайт Автор вопроса
Алексей Смирнов
ох... ну я ни разу не использовал в контенте fastF...

Ну вот ты говоришь "противник такого подхода", а как например мне написать статью и сослаться на данные из другого ресурса. Например даже цена. Ведь круто написать «Текущая цена на НАШЕНЕЧТО составляет [[#id.price]] что выгодно отличается от иностранных аналогов». Бегать обновлять все статьи при обновлении прайса было бы пустой тратой времени, а как это сделать по-другому? Шаблоны чтоли плодить для новостей? Или TV-шки заводить какие-то одноразовые? Да ну, норм фича этот FastField.

Дима-🚀 Сайт Автор вопроса
Алексей Смирнов
ну попробуй чанком вставлять типа: [[$test]] а в ч...

[[$test]] попробовал. Выводится контент тоже, но тоже не обрабатывается.

Дима 🚀 Сайт
[[$test]] попробовал. Выводится контент тоже, но т...

те в контенте у тебя присутствует по факту [[$test]] не обработанный прям в таком виде?

Дима-🚀 Сайт Автор вопроса
Алексей Смирнов
те в контенте у тебя присутствует по факту [[$test...

У меня там уже целый набор, я только добавляю)) пока тестирую

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта