WordPress — не работает плагин WP-PostRatings
Если вы используете плагин WP-PostRatings для своего сайта на WordPress, и он вдруг перестал работать или не заработал сразу после установки (такое иногда случается при смене шаблона), то проверьте, есть ли в файле footer.php вашего шаблона этот кусок кода:
<?php wp_footer(); ?>
В некоторых, особенно старых шаблонах этот код отсутствует.
Однако далеко не всегда этот способ срабатывает . Сам недавно столкнулся с такой проблемой. Рейтинг, вроде бы, показывается, но звездочки неактивны. Стал искать причину и нашел ее совсем не там, где предполагал.
С некоторых пор WordPress стал автоматически добавлять на сайт библиотеку jQuery и еще один файл под названием jquery-migrate. Не всем это нужно, особенно jquery-migrate. Я тоже решил убрать эти излишества со своего блога и добавил в файл function.php следующий код:
function deregister_jquery() {
if ( !is_admin() ) {
wp_deregister_script('jquery');
}
}
add_action('wp_enqueue_scripts', 'deregister_jquery');
При этом у меня был подключен свой собственный файл библиотеки jQuery. Но как оказалось, приведенный выше код каким-то образом влиял на работу плагина WP-PostRatings. Причем другие плюшки на сайте, использующие jQuery, работали вполне исправно (табы в сайдбаре и кнопка «вверх»).
Поэтому, если вы тоже использовали этот deregister_qjuery(), то возможно причина поломки «звездочек» на сайте именно в этом. Проверьте.
И напоследок, если вы все-таки хотите избавиться от jquery-migrate, то добавьте в код файла function.php следующий код:
function remove_jquery_migrate( &$scripts){
if(!is_admin()){
$scripts->remove( 'jquery');
$scripts->add( 'jquery', false, array( 'jquery-core' ), '1.12.4' );
}
}
add_filter( 'wp_default_scripts', 'remove_jquery_migrate' );
Ссылка на jquery-migrate удалится, и останется только ссыль на саму библиотеку jQuery.
Удачи!
Спасибо за статью! А не подскажете, как вообще убрать вордпрессовский jquery и поставить свой?
Пожалуйста, Николай! Да, про это напишу отдельный пост. Оставайтесь на связи.
Николай, вот ответ на ваш вопрос — WordPress — как удалить jQuery и jQuery-migrate
Неработает плагин WP-PostRatings , wp_footer() есть такое в шабе — что еще может быть?
Здравствуйте, Игорь!
Попробуйте для начала активировать шаблон, поставляемый с WP (сейчас вроде он называется twentytwentyone) и проверить, работает ли плагин в нем. Если да, то нужно проверять настройки вашего шаблона, файл function.php и пр.