Я на самом деле не тестировал, но одним из возможных решений было бы поставить ваш скрипт в нижний колонтитул.
Если используется виджет
Когда вы создаете виджет, вы можете добавитьнекоторый код для функции widget()
класса вашего виджета (функция фактически выводит виджет на экран).Вы можете позвонить wp_enqueue_script()
отсюда, просто убедитесь, что вы отметили его для использования в нижнем колонтитуле .
Это напечатает ваш скрипт, где вызывается wp_footer()
, а не wp_head()
вызывается, но только если виджет вызывается на странице.
Если строка появляется на боковой панели
По сути, просто отфильтруйте боковую панель для вашей строки.Если строка присутствует, поставьте свой скрипт в нижний колонтитул так же, как и в виджете.
(обновление) Альтернативы
Есть две другие вещи, которые вы можете сделать.Во-первых, вы можете использовать jQuery для пространства имен вашей функциональности.По сути, присвойте своему виджету уникальный идентификатор (скажем, «my-unique-id»), а затем асинхронно загрузите ваш скрипт:
jQuery(document).ready(function() {
if( jQuery('#my-unique-id').length > 0 ) {
jQuery.getScript( [your-script-url] );
}
}
Этот код проверит, находится ли ваш идентификатор виджета на странице.Если это так, он загружает ваш скрипт с сервера, если нет, он ничего не делает.Вы также можете создать этот код на PHP, чтобы включить относительную или абсолютную ссылку на ваш файл скрипта.Это зависит от вас.
В качестве альтернативы, вы можете просто включить свой скрипт в встроенный блок <script>
в коде вашего виджета.Это будет работать так, как вы хотите, но нарушает все виды стандартных методов кодирования.Код обычно должен быть в <header>
или помещен непосредственно перед закрывающим тегом </body>
... но вы можете поместить его в любом месте.