• Se que usando estos parametros en la Query debería ser suficiente pero en mi web no funciona:

    orderby=meta_value_num&meta_key=ratings_average&order=DESC

    Ejemplo:

    http://www.susurrame.es/vibradores/

    He añadido lo de «Ordenar por: Precio | Valoracion | Opiniones» pero solo me funciona por opiniones (número de comentarios).

    El parámetro meta_value_num no me está funcionando.

    Lei que usuarlos en la URL era igual de válido que en el código php.

    ¿Cual puede ser el problema?

    Uso un loop normal y corriente, el de toda la vida:
    <?php if(have_posts()) : ?>
    <?php while(have_posts()) : the_post(); ?>

    Gracias.

Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)
  • Iniciador del debate mmediax

    (@mmediax)

    ¿Ninguna idea?

    Venga que sino voy a tener que hacer coincidir el orden de los precios con el de las fechas xD

    Moderador Rafa Poveda

    (@bi0xid)

    Hola.

    ¿Podrías poner la query completa que utilizas?

    De todas formas, recuerda que debes pasar la $query_string si quieres que funcione correctamente.

    global $query_string;
    query_posts( $query_string . '& orderby=meta_value_num&meta_key=ratings_average&order=DESC' );

    Por cierto, nunca he utilizado ese orderby. ¿Funciona?

    Te propondría que utilizaras una WP_Query directamente donde recogieras los datos ordenados a tu gusto.

    Sí que funciona.

    Yo lo he puesto así y me ha salido perfecto.

    // Create a new instance
    $second_query = new WP_Query(‘category_name=cursos&orderby=meta_value_num&meta_key=fecha&order=DESC’);
    // The Loop
    while( $second_query->have_posts() ) : $second_query->the_post();

Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)
  • El debate ‘Como ordenar posts por campos personalizados con valor numérico’ está cerrado a nuevas respuestas.