Поддержка Проблемы и решения Как повысить приоритет вполнения шорткода?

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Вопрос поставлен технически некорректно. Расскажите, что Вы хотите сделать.

    Использую плагин который из заголовков собирает содержание.
    Но если в заголовке содержится шорткод, который, выводит какую то инфу вместо себя, то в тексте заголовка все нормально, а в собранные заголовки попадает текст шордкода,

    Я наверное понял в чем некорректность.
    Каждый механизм работает с исходным содержанием записи.

    Т.е. надо чтобы плагин работал с измененной записью, или шорткод как то распространялся на результат работы плагина.

    еще думаю что может вместо обработки шорткода (это мой самописный шрткод), обрабытывать фильтром? т.е.
    [my_sortcode] заменять через фильтр на результат работы функции которая повешанна на шорткод.
    Так правильно будет?

    Скорее всего, сборщик заголовков не прогоняет собранное через фильтры, виcящие на хуке ‘the_content’. А зачем, собственно? Шорткод в заголовке — экзотика.

    Изменить приоритет выполнения можно только сразу всем обработчикам шорткодов. Поменять порядок обработчиков в списке, вероятно, можно, но я не знаю как, а ковырять недосуг.

    Как вариант могу предложить сделать ручную обработку шорткода вместо штатной. Тогда свой обработчик можно повесть на тот же хук ‘the_content’, но с самым высоким приоритетом. Или даже выполнить раньше, чем будет вызвана функция the_content(). Тут уже всё в Ваших руках. Сам кастомный обработчик — банальный preg_replace_callback — затруднений вызвать не должен.

    А чем плохо изменение приоритета всем обработчикам?

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Тема «Как повысить приоритет вполнения шорткода?» закрыта для новых ответов.