Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Aiuto per creare una paginazione e gestire le categorie

    Ciao a tutti, avrei bisogno di supporto per risolvere una serie di questioni tra loro collegate, relative ad un archivio post sul sito che sto realizzando.

    Premessa: ho una pagina nel mio sito wordpress nella quale voglio che vengano visualizzati, dal più recente al più vecchio, tutti i post che ho scritto, in forma di riassunto.

    Sono riuscito a realizzare quanto sopra descritto con questo codice:

    codice:
    <?php
    $the_query = new WP_Query( 'posts_per_page=5' ); ?>
      
    <?php
    while ($the_query -> have_posts()) : $the_query -> the_post();
    ?>
    
    
    	<h2><a href="<?php the_permalink() ?>">
    	<?php the_title(); ?></a></h2>
    	<div class="Time_Category"><?php the_time('j M Y') ?>&nbsp | &nbsp<?php the_category(', '); ?></div>
    	<div class="riassunto_content"><?php the_excerpt(); ?></div>
    	<a href="<?php the_permalink() ?>" class="leggi_articoli">
    	Leggi di più...</a>
    	<hr class="separatore_articoli">
    
    
    <?php
    endwhile;
    wp_reset_postdata();
    ?>
    Ora elenco di seguito le ulteriori domande connesse e le esigenze vorrei soddisfare:

    1) Vorrei una paginazione, posizionata nella parte bassa della pagina, in modo tale che ogni pagina di questo archivio visualizzi massimo 5 post e qualora i post siano di più, crei appunto una paginazione, inserendo i posto successivi alla pagina 2, e così via fino ad esaurimento dei post (es. 22 post = 5 pagine).
    Il mio codice prevede che vengano visualizzati massimo 5 post, ma non so come fare per aggiungere la paginazione desiderata...ho cercato soluzioni in rete, ma senza successo.

    2) Vorrei poter visualizzare i post raggruppati per categoria.
    Facendo un esempio concreto: nel mio codice vedete che esiste un link legato alla categoria che contrassegna il singolo post.
    Vorrei che cliccando su quel link si arrivi in una pagina uguale a quella archivio in cui ci si trovava prima, ma nella quale vengano visualizzati SOLO i posto contrassegnati dalla categoria di cui sopra.

    3) Vorrei creare un elenco puntato (UL) che contenga tutte le categorie.
    Esiste un comando php per richiamare tutte le categorie in forma di elenco?
    Oppure devo fare semplicemente l'elenco manualmente in html ed aggiornarlo ogni qual volta aggiungo una categoria ai post?

    4) Vorrei collegare la pagina sopra descritta al giusto file php su wordpress.
    Dal momento che questa pagina ha un codice diverso dalle altre, al momento l'ho contrassegnata con il file php legato al numero ID assegnato da Wordpress alla pagina (nel mio caso ID 37).
    Quindi ho un file php denominato "page-37.php": cosicché quando si va nella pagina contrassegnata dall'ID 37, wordpress utilizza il codice contenuto nel file "page-37.php".

    Questa è una procedura corretta?
    Sarebbe più giusto denominare il file diversamente (es. "archive.php")?
    Ed in tale ultima ipotesi, come potrei "dire" a wordpress qual'è la pagina archivio a cui collegare il file "archive.php"?

    Ho provato ad andare nelle impostazioni di wordpress, sezione "lettura" e a contrassegnare la pagine in oggetto come "pagina articoli".
    Tuttavia non è successo niente...sicuramente sbaglio qualcosa.

    So di aver messo tanta carne al fuoco, ma trattandosi di argomenti tra loro correlati ho preferito aprire un solo topic.

    Grazie mille per il supporto!

  2. #2
    Scusate il doppio post ma nel frattempo sono riuscito a trovare una soluzione parziale al quesito n. 2).

    Mediante questo codice, riesco a visualizzare i post di una certa categoria, richiamata dal relativo slug (che qui in via esemplificativa chiamo "my-category").

    codice:
    <?php
    $args = array(
        'post_type' => 'post',
        'post_status' => 'publish',
        'category_name' => 'my-category',
        'posts_per_page' => 5,
    );
    $arr_posts = new WP_Query( $args );
    
    if ( $arr_posts->have_posts() ) :
    
        while ( $arr_posts->have_posts() ) :
            $arr_posts->the_post();
            ?>
            <article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
                <?php
                if ( has_post_thumbnail() ) :
                    the_post_thumbnail();
                endif;
                ?>
    
    
                    	<h2><a href="<?php the_permalink() ?>">
    	<?php the_title(); ?></a></h2>
    				<div class="Time_Category"><?php the_time('j M Y') ?>&nbsp | &nbsp<?php the_category(', '); ?></div>
                    <div class="riassunto_content"><?php the_excerpt(); ?></div>
    				<a href="<?php the_permalink() ?>" class="leggi_articoli">
    	Leggi di più...</a>
            </article>
            <?php
        endwhile;
    endif;
    ?>	
    
    Ora vorrei sostituire il valore "my-category" con qualcosa che richiami lo slug della categoria corrente.

    Potete aiutarmi a raggiungere questo risultato?

    Grazie!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.