Home › Forum › Problemi Vari con WP › problema di paginazione
-
AutorePost
-
-
5 Giugno 2012 alle 21:02 #21834NordavindPartecipante
Ciao, ho appena iniziato a usare wordpress e ho un piccolo problema
ho impostato la homepage per mettere delle news, ho impostato poi nel pannello di controllo del tema che sto usando che me ne visualizzi solo 3 di news
ne ho scritte 4 per provare e la più vecchia finisce correttamente in una seconda pagina, cosଠnella home vedo solo le 3 più recenti (come volevo), solo che se clicco sulla seconda pagina per andare a leggere la news più vecchia non succede niente, continuo a vedere le prime 3 news e risulta cosଠimpossibile andare a leggere la news più vecchia nonostante nella barra degli indirizzi mi compaia http://www.miosito.com/page/2/
il codice è scritto male? ho cercato con google ma non ho trovato soluzioni
incollo il codice del file template.news.list.php (credo sia quello giusto, come detto sono un neofita) del mio tema, magari c’è un errore e potete aiutarmi
-
5 Giugno 2012 alle 21:47 #95998wollyAmministratore del forum
-
5 Giugno 2012 alle 22:40 #95999NordavindPartecipante
chiedo scusa se ho postato il codice troppo lungo
ho cercato per tutto il forum, è la prima volta che uso wordpress e php (per me è arabo), se ho capito bene è un problema di query_posts, spero di non dire una stupidaggine
le ho provate tutte, molti consigliano di mettere query_posts($query_string . $args); al posto di query_posts($args); ma cosଠfacendo spariscono tutti i miei post
ho provato a scrivere anche ‘posts_per_page’ => $latest invece di ‘posts_per_page’ => $showposts (altra soluzione letta nel forum), ma cosଠfacendo mi visualizza tutti i post invece di alcuni come vorrei io
ho letto anche questo thread http://codex.wordpress.org/Function_Reference/query_posts ma non ho trovato la soluzione
se qualcuno mi può aiutare per favore, se è un problema di query_post, questa è la parte di codice che ho nel file template.news.list.php
<?php
if(is_page()) {
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
'post_type' => 'news-item',
'posts_per_page' => $showposts,
'paged' => $paged
);
query_posts($args);
}
if (have_posts()) :
?>ho provato le stesse modifiche anche nel file index.php ma nada
come detto sono un inesperto totale quindi mi scuso se ho scritto/postato delle inesattezze
-
7 Giugno 2012 alle 16:31 #96025NordavindPartecipante
chiedo scusa se riuppo il topic ma non riesco a risolvere, ho passato 15 ore consecutive al pc per cercare una soluzione, le ho provate tutte con l’unico risultato di non vedere più i miei post, o vederne uno solo, o tornare al punto di partenza, cioè vedere solo i primi 3 e non riuscire ad accedere alla pagina 2 (page/2/)
ho provato come detto a seguire i consigli che ho scritto sopra, ma magari sono sbagliati per il mio caso o magari che ne so, si deve modificare qualcosa nel template index? o altri template ancora??
come detto sono super inesperto, non ho mai usato php nè wordpress in vita mia, magari sbaglio qualcosa, se per favore mi potete aiutare perchè non ne vengo a capo
-
8 Giugno 2012 alle 21:38 #96042NordavindPartecipante
ho trovato una soluzione, dopo centinaia di tentativi, anche nel forum inglese non erano riusciti ad aiutarmi, poi per caso ho trovato questo vecchio topic http://wordpress.org/support/topic/get_query_varpaged-doesnt-seem-to-work-on-page-templates?replies=12
la riporto visto che anche su questo forum avevo trovato vecchi thread senza soluzione
in pratica se ci sono problemi di paginazione nella homepage (come nel mio caso), si deve modificare la parola “paged” (togleiere la “d”) in
get_query_var('paged')
In case anyone else is having this same problem,
get_query_var('page')
seems to work on pages the same way
get_query_var('paged')
works on the index page.
(Notice ‘page’ vs. ‘paged’)
poi ho dovuto fare la stessa cosa (togliere la “d” dalla parola “paged”) anche in una riga del codice del file help.pagination.php, sennò la prima pagina restava non selezionabile
-
-
AutorePost
- Devi essere connesso per rispondere a questo topic.