Проверка плагина NextGen не проходит, почему?

24 мар. 2011 г., 08:26:59
Просмотры: 1.47K
Голосов: 1

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

Проверка совместимости темы Отсутствует вызов в вашей теме

Я поискал в интернете и нашел эту тему:

http://wordpress.org/support/topic/plugin-nextgen-gallery-missing-the-call-to-in-your-theme-after-switching-to-new-theme

И добавил:

  1. Добавить <?php wp_head(); ?> в ваш "header.php" прямо перед </head>

  2. Добавить <?php wp_footer(); ?> в ваш "footer.php" прямо перед </body>

как указано в обсуждении. Однако проверка плагина все равно выдает ошибку выше (и, как следствие, не работает - плагин не работает нигде на сайте).

У кого-нибудь есть предложения, что попробовать дальше? Сайт, который я поддерживаю - http://cdnsba.org/, и вы можете увидеть большое белое пространство слева спереди, где раньше прекрасно работала слайд-шоу.

У меня есть подозрение, что что-то конфликтует с jQuery, так как похоже, что раздел "Featured" справа тоже больше не прокручивается...

Спасибо!

-Адам

0
Все ответы на вопрос 1
5

Последний выпуск обновляет jQuery, и у некоторых плагинов возникли проблемы с этим. Вы всегда можете загрузить более старую версию в директорию wp-includes.

Я бегло взглянул на код, и следующий фрагмент, вероятно, является причиной проблемы.

function ngg_ajax_test_head_footer() {

// Создаем URL для вызова, ПРИМЕЧАНИЕ: использует home_url, поэтому требует WordPress 3.0
$url = add_query_arg( array( 'test-head' => '', 'test-footer' => '' ), home_url() );
// Выполняем HTTP GET, игнорируя ошибки SSL
$response = wp_remote_get( $url, array( 'sslverify' => false ) );
// Получаем код ответа и убеждаемся, что запрос был успешным
$code = (int) wp_remote_retrieve_response_code( $response );
if ( $code == 200 ) {
    global $head_footer_errors;
    $head_footer_errors = array();

    // Удаляем все табуляции, переводы строк, возвраты каретки и пробелы
    $html = preg_replace( '/[\t\r\n\s]/', '', wp_remote_retrieve_body( $response ) );

    // Проверяем, найдено ли наличие wp_head
    if ( ! strstr( $html, '<!--wp_head-->' ) )
        die('Отсутствует вызов <?php wp_head(); ?> в вашей теме');
    // Проверяем, найдено ли наличие wp_footer
    if ( ! strstr( $html, '<!--wp_footer-->' ) )
        die('Отсутствует вызов <?php wp_footer(); ?> в вашей теме');
}
die('успех');

Этот фрагмент загружает тело вашей главной страницы и проверяет, присутствуют ли wp_head и wp_footer. Как вы сказали, вы их добавили, так что это не должно быть проблемой. Что меня удивляет, так это то, что часть сообщения die отсутствует — части про wp_footer или wp_header.

Насколько я могу судить, код ищет <!--wp_head--> (комментарий), а не сам код. В вашем коде комментарии, похоже, не отображаются — вы их добавляли?

24 мар. 2011 г. 12:54:36
Комментарии

Я использую плагин "use google libraries" для загрузки библиотек из Google. Я даже отключил этот плагин, но это ничего не изменило...

adamf adamf
24 мар. 2011 г. 13:07:38

Есть ли простой способ узнать, сколько скриптов jquery загружается и какие у них версии?

adamf adamf
24 мар. 2011 г. 20:31:46

Я пробовал "понизить версию" jquery, но это не помогло. Интересно, может быть проблема в изменениях, внесенных в тему?

adamf adamf
25 мар. 2011 г. 02:57:49

Не уверен, какой именно вызов вы пропускаете, пробовали ли включить режим отладки в wp-config, чтобы получить больше информации?

Patriek Patriek
25 мар. 2011 г. 20:04:04

Мне наконец удалось заставить его распознать wp_head (w3 total cache удалял комментарий). Однако, хотя плагин проходит валидацию, он всё равно не работает. У меня есть ощущение, что это какая-то проблема с jquery в теме или что-то в этом роде.

adamf adamf
30 мар. 2011 г. 15:15:13