• User Attivo

    Pagina archivio

    Salve a tutti , avrei una semplice domanda da porvi , vorrei creare una pagina nel sito che sto facendo in wordpress che mi permetta di elencare tutti gli articoli che un utente scrive ed a fine pagina far uscire una piccola bottoniera che si generi in base agli articoli che ci sono , mi spiego meglio ho 100 articoli e vorrei che in questa pagina me ne escano 50 per visualizzare altri 50 devo andare alla pagina due , mi consigliate l'uso di un modulo , oppure potreste indirizzarmi a qualche tutorial per capire meglio come mettere le mani sul codice per fare quello che ho chiesto ?.

    Vi ringrazio per il tempo che mi dedicherete e vi auguro buona giornata.


  • User Attivo

  • User Attivo

    Grazie per l'esempio che mi hai mandato , pero' volevo chiederti qualcosa senza le option list che ti indico i mesi e le categorie , a me servirebbe qualcosa che tu entri nella pagina e ti trovi tutti i post in ordine di inserimento di tutte le categorie , secondo te e' possibile ?

    Grazie


  • User Attivo

    [PHP]<?php
    // List Pages by Month/Day
    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    $args = array(
    'paged' => $paged,
    'post_type' => 'post',
    'posts_per_page' => 10,
    );
    query_posts($args);
    if (have_posts()) : while (have_posts()) : the_post();
    { ?>

    <h4><?php echo $this_dt; ?></h4>

    <?php } ?>

    <ul>
    <li><a href="<?php the_permalink(); ?>"><span><?php echo get_the_time('d');?> - <?php echo get_the_time('M');?> | <?php echo get_the_time('Y'); ?> |</span><?php the_title();?></a></li><?php echo "</ul>";
    $curr_dt = $this_dt; endwhile; ?>
    <div class="navigation">
    <div class="alignleft"><?php next_posts_link('« Older Entries') ?></div>
    <div class="alignright"><?php previous_posts_link('Newer Entries »') ?></div>
    </div>
    <?php else :
    // Code here for no pages found
    endif;
    ?>[/PHP]


  • User Attivo

    Dopo averlo pulito da altre cose che non c'entravano con le tue esigenze mi sono dimenticato di togliere questa riga
    [php]<h4><?php echo $this_dt; ?></h4>[/php]Ovviamente il codice che ti ho postato va dentro un template di pagina creata ad hoc, così come puoi aggiungere una classe per personalizzare <ul> o cambiare il numero di post che vuoi visualizzare per pagina che ora sono 10.


  • User Attivo

    Ciao ma non dovevi scrivermi tutto il codice ti ringrazio spero di ricambiarti se hai bisogno di qualche aiuto grafico , inoltre volevo chiederti posso inserire questo codice in una nuova pagina del mio template? giusto si fa cosi ? tipo prendo il file archive.php e lo rinomino e gli inserisco il tuo codice giusto ?

    Grazie


  • User Attivo

    Se lo rinomini e lo chiami pippo.php lo devi rinominare anche dentro all'inizio in questo modo ovviamente
    [PHP]<?php
    /*
    Template Name: Pippo
    */
    ?>[/PHP]


  • User Attivo

    Pero mi da questo errore forse devo aggiungere la funzione nel file function.php ?

    Inoltre vorrei chiederti io ho gia' un template pronto mi crea qualche problema questo fatto ?

    Cordiali saluti


  • User Attivo

    Scusami non ti ho segnalato l'errore Fatal error: Call to undefined function get_query_var() in indirizzodelsito/archivionotizie.php on line 3


  • User Attivo

    Posta il codice di un file di template che funzioni


  • User Attivo

    Scusami sto incappando in questo errore :
    Fatal error: Call to undefined function get_header() come e' possibile ?

    Grazie


  • User Attivo

    se riesci torna indietro con il browesr ed entra nel pannello di amministrazione e cancella la pagina che hai creato, immagino che avrai fatto una copia di un file che avevi e lo hai rinominato non lo hai sostituito vero?


  • User Attivo

    Io mi chiamo Vincenzo piacere mio di conoscerti , mi dispiace se ti sto facendo perdere del tempo pero' io non ho mai creato script con wordpress , cmq e' vero che ho preso una pagina e gli messo dentro il tuo codice , ora provo a cancellare la pagina e poi dopo che faccio ?

    Cordiali saluti


  • User Attivo

    Ciao , scusami per il che faccio sto provando ad adattare il codice ma mi da il solito errore , ho cancellato anche la pagina ma niente da fare ma la domanda e' questa il codice lo debbo inserire in un file che poi andro' ad inserire nella cartella del template ? poi inoltre ho inserito il codice ma tu mi parlavi che se il file lo chiamo prova.php all'inizio del file dovro' inserire questa dicitura ?

    <?php
    /*
    Template Name: Prova
    */
    ?>

    Forse per questo non funziona ?.

    Cordiali saluti


  • User Attivo

    Non so il livello di conoscenza che hai di wordpress ma diamo per scontato che sia a livello zero e cerchiamo di chiamare le cose con il loro nome.
    Quando si fanno delle modifiche a qualunque file di wordpress è sempre consigliato lavorare sui files nel proprio computer aggiornati al tema che hai sul server.
    Quindi prima cosa fai un backup dal tuo server al tuo computer di tutti i files del tuo tema.
    Se puoi è sempre meglio fare prima le prove in locale con un software come xampp o altri che installano un database mysql per far girare wordpress o altri cms.
    Quasi tutti i temi di wordpress (eccetto alcuni temi premium) hanno dei files template facilmente personalizzabili.
    Quando parlo di files template intendo quelli che puoi selezionare, nel momento di aggiungere una nuova pagina dal tuo pannello di controllo, che vedi sulla destra sotto la voce attributi pagina.
    Qui in funzione del tema che hai si possono avere diversi tipi di template, template standard, archives, full width, one sidebar, ecc. ecc.
    Se qui vogliamo che appaia un template per esempio dal nome archivio notizie, dobbiamo crearlo.
    All'interno di ogni file template ci sono sempre le chiamate al file header al file footer ed eventualmente al file sidebar. Queste chiamate vanno mantenute nel tuo nuovo file template. Non so quello che hai fatto ma temo che hai cancelato qualcosa di troppo.
    Una volta che hai deciso di come vuoi che appaia se senza o con una o due sidebar duplica il file template che hai scelto e rinominalo con il nome che vuoi per esempio archivionotizie.php (non è mai consigliato lasciare degli spazi vuoti nel nome del file).
    Apri il nuovo file e all'inizio sostituisci quello che c'è con questo
    [php]<?php
    /*
    Template Name: archivio notizie
    */
    ?> [/php]Quindi devi individuare cosa mantenere (le chiamate header footer sidebar) e cosa sostituire inserendo quel loop che ti ho postato prima.
    Carica quindi il nuovo file sul server e assegnagli una nuova pagina.
    Se hai un tema premium le cose si complicano un bel pò e non credo di esserti di aiuto perchè mi servirebbe tutto il tema.
    Se invece hai un tema free (generalmente meno complesso) puoi postare qui il file che vuoi modificare.


  • User Attivo

    Ciao , mettiamo che dal punto 1 al 3 e' una cosa che so di fare il backup e di fare le prove in locale, passiamo ai punti piu' difficili ecco il codice

    <?php
    /*
    Template Name: prova
    */
    ?>
    <?php get_header(); ?>

    <h2><?php $numposts = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->posts WHERE post_status = 'publish'");
    

    if (0 < $numposts) $numposts = number_format($numposts); ?>
    <h2><?php echo $numposts.' articoli pubblicati da giugno 2010'; ?></h2>

    <ul id="archive-list">
        <?php
        $myposts = get_posts('numberposts=-1&');
        foreach($myposts as $post) : ?>
            <li><?php the_time('m/d/Y') ?>: <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
        <?php endforeach; ?>
    </ul>
    

    <?php get_sidebar(); ?>
    <?php get_footer(); ?>

    come ben vedi non ho cancellato ne le chiamate get header , ne sidebar, footer.

    Pero' la cosa strana e' quella che ho notato che nemmeno il file nativo archive.php che era contenuto nel pacchetto del template funziona se richiamo il file cioe' inserisco nel browser l'indirizzo dove trovo il file mi dice ogni volta la stessa cosa , e cosa strana io dico adesso il file archive.php nessuno l'ha toccato, questa e' la cosa strana spero che mi capisci grazie per il tuo aiuto


  • User Attivo

    Se crei una pagina chiamandola antonio e dandogli l'attributo archivio (quella del file archive.php) non uscirà nessuna pagina se digiti miosito/archive.php ma la vedrai se clicchi dal menu del tuo sito la pagina antonio e sul browser ci sarà un indirizzo tipo questo miosito/antonio o questo miosito/?page_id=NUMEROIDDELLAPAGINA in dipendenza del tipo di permalink che utilizzi.
    Comunque prova ad inserire questo codice in un nuovo file e fai una prova.

    [php]<?php
    /*
    Template Name: archivio notizie
    */
    ?>
    <?php get_header(); ?>

    <?php
    // List Pages by Month/Day
    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    $args = array(
    'paged' => $paged,
    'post_type' => 'post',
    'posts_per_page' => 50,
    );
    query_posts($args);
    if (have_posts()) : while (have_posts()) : the_post();
    { ?>

    <?php } ?>

    <ul>
    <li><a href="<?php the_permalink(); ?>"><span><?php echo get_the_time('d');?> - <?php echo get_the_time('M');?> | <?php echo get_the_time('Y'); ?> |</span><?php the_title();?></a></li><?php echo "</ul>";
    $curr_dt = $this_dt; endwhile; ?>
    <div class="navigation">
    <div class="alignleft"><?php next_posts_link('« Older Entries') ?></div>
    <div class="alignright"><?php previous_posts_link('Newer Entries »') ?></div>
    </div>
    <?php else :
    // Code here for no pages found
    endif;
    ?>

    <?php get_sidebar(); ?>
    <?php get_footer(); ?>[/php]


  • User Attivo

    Adesso che ho letto meglio il tuo articolo ho capito che il codice che mi hai postato non è quello autentico (nativo) del tuo tema ma uno che hai creato e che ho anche trovato su altri siti che divulgavano quel codice come tutorial su come costruire un file archivio. Spero solo che sia compatibile con il tuo tema. Era meglio se mi postavi quello nativo.


  • User Attivo

    image


  • User Attivo

    Ciao grazie per il codice sono poi riuscito a sistemarlo integrando il page navi invece dei tasti torna indietro soltanto l'unica cosa che non riesco e il fatto che non riesco a sistemare il get_sidebar e get_footer che mi escono in basso come uscissero fuori dal tema infatti mi vanno sotto nel background percaso e' il fatto che il codice non e' quello originale ?

    Grazie di tutto