Pregunta

He estado desconcertando por este durante dos días. Todavía no puedo resolverlo.

Estoy probando un lanzamiento de tema en múltiples versiones de WordPress usando XAMPPLITE en localhost en una PC.

Tengo un problema en WP 2.9.2 que no ocurre en ninguna otra instalación más reciente de WP.

Eche un vistazo a la consulta a continuación. Mientras salga de la línea comentada en su lugar, funciona bien. Sin embargo, cuando descompongo la línea, bloquea mi servidor 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;

Incluso he intentado codificar el atributo CAT a un número estático:

'cat' => 3

¡Todavía se bloquea!

¿Es esto un problema con el código, WordPress 2.9.2 o con mi configuración de Xamplite? Parece extraño que funcione en todas las otras versiones más nuevas de WP que he configurado en esta misma caja.

¿Fue útil?

Solución

Lo único que veo incluso cerca de sintácticamente cuestionable es que showposts podría ser reemplazado con posts_per_page.

Otros consejos

Date cuenta de esto ahora, pero esto puede ayudar a las personas a encontrar esto a través de Google:

Tuve problemas con la muerte de Apache cuando ejecutaba un código similar dentro de una función llamada por el pre_get_posts gancho. El problema fue que me perdí el condicional:

$query->is_main_query()

lo que significa que estaba trabajando para todas las consultas, no solo para la principal. Agregar eso solucionó el problema para mí. El condicional completo que uso es (luego otro código arriba a continuación:

if ( ! is_category() || ! $query->is_main_query() || ! is_a( $query, 'WP_Query' ) )
    return;
Licenciado bajo: CC-BY-SA con atribución
scroll top