¿Cómo puedo mostrar estas entradas en orden ascendente?

1 ene 2013, 02:50:17
Vistas: 19.8K
Votos: -1

Estoy tratando de mostrar algunas entradas en orden ascendente comenzando con la primera creada y terminando con la entrada creada más recientemente. Cualquier ayuda es apreciada. Aquí está mi código:

<?php
$numofmebers = '-1';
if ( empty($_GET['page_id_all']) ) $_GET['page_id_all'] = 1;
    $count_post = 0;
        query_posts( array( 'posts_per_page' => '-1', 'post_type' => 'coach-instructor' ,'post_status' => 'publish') );
        while ( have_posts()) : the_post();
            $count_post++;
        endwhile;
            if ( $node->instructor_pagination == "Página Única" ) {$node->instructor_page_num = -1;}
            query_posts( array('posts_per_page' => "$node->instructor_page_num", 'paged' => $_GET['page_id_all'], 'post_type' => 'coach-instructor' ,'post_status' => 'publish') ); 
        $counter_news = 0;
        while ( have_posts()) : the_post();
        $counter_news++;
        $image_id = get_post_thumbnail_id ( $post->ID );
        $coach_istructor_meta = get_post_meta($post->ID, "cs_coach_istructor_meta", true);
            if ( $coach_istructor_meta <> "" ) {
                $xmlObject_author = new SimpleXMLElement($coach_istructor_meta);
                    $about = $xmlObject_author->about;
                    $specialism = $xmlObject_author->specialism;
                    $qualifications = $xmlObject_author->qualifications;
                    $philosophy = $xmlObject_author->philosophy;
                    $contact = $xmlObject_author->contact;
            }
            else {
                $about = '';
                $specialism = '';
                $qualifications = '';
                $philosophy = '';
                $contact = '';
            }
?>
1
Comentarios

¿Ascendente o descendente?

fuxia fuxia
1 ene 2013 02:52:41
Todas las respuestas a la pregunta 2
1

Ten en cuenta que es mejor evitar el uso de query_posts ya que tiene efectos negativos en el loop principal. Un enfoque más adecuado sería crear una nueva instancia de WP_Query o modificar los argumentos de la consulta principal.

Para obtener el orden deseado, intenta agregar lo siguiente a tus argumentos:

array( 'posts_per_page' => '-1', 'post_type' => 'coach-instructor' ,'post_status' => 'publish', 'orderby' => 'date', 'order' => 'ASC')
1 ene 2013 02:58:06
Comentarios

Gracias por la ayuda. Funcionó. Todavía estoy aprendiendo PHP y trabajando dentro del framework de Wordpress. Esto también me ayudará en el futuro.

Tom Geoco Tom Geoco
1 ene 2013 03:58:25
1
-2
$orde = ('orderby','date'); // Ordenar por fecha
$ordr = ('order','DESC'); // Orden descendente
$query = array(
    'post_type' => array('posts_per_page'), // Tipo de post
    'orderby'   => $orde, // Criterio de ordenación
    'order'     => $ordr  // Dirección del orden
);
14 ene 2023 01:00:34
Comentarios

¡Bienvenido a WPSE! Los parámetros que estás pasando a la consulta son inválidos. orderby puede ser un array, pero en ese caso la "columna de ordenación" (precisamente el valor que denota la columna) debe ser una clave en el array, no un valor. Usar un array en orderby debería verse así: $args = array( "orderby" => array("date"=>"DESC") ).

nmr nmr
14 ene 2023 13:08:23