Есть ли что -нибудь в этом запросе, который несовместимо с WordPress 2.9.2?
Вопрос
Я озадачивал это в течение двух дней. Все еще не могу понять это.
Я тестирую релиз темы в нескольких версиях WordPress, используя Xampplite на Localhost на ПК.
У меня проблема на WP 2.9.2, которая не происходит ни в каких других новых установках WP.
Взгляните на запрос ниже. Пока я оставляю закомментированную линию на месте, она работает нормально. Однако, когда я расстроен линию, она сбивает мой сервер Xampplite Apache. Wtf?
$the_query = new WP_Query(array(
'posts_per_page' => 5,
'offset' => 0,
'order' => 'ASC',
'post__not_in' => get_option("sticky_posts"),
// 'cat' => get_cat_ID('top-menu'),
));
print "<p>header.php";exit;
Я даже попытался усердно кодировать атрибут кошки к статическому номеру:
'cat' => 3
Это все еще рухнет!
Это проблема с кодом, WordPress 2.9.2 или с моей настройкой Xamplite? Кажется странным, что он работает во всех новых других версиях WP, которые я настроил на этой же коробке.
Решение
Единственное, что я вижу даже близко к синтаксически сомнительному, это то, что showposts
можно заменить на posts_per_page
.
Другие советы
Осознайте это старое сейчас, но это может помочь людям найти это через Google:
У меня были проблемы с умиранием Apache при запуске аналогичного кода в функции, вызванной pre_get_posts Hook. Анкет Проблема была в том, что я пропустил условную:
$query->is_main_query()
Это означает, что он выполнял работу для всех запросов, а не только для основных. Добавление этой проблемы для меня. Полный условный, который я использую (тогда другой код ниже ниже:
if ( ! is_category() || ! $query->is_main_query() || ! is_a( $query, 'WP_Query' ) )
return;