§ 30. Un blog con WordPress: come farlo non sulla prima pagina del sito

Esistono tanti siti realizzati con WordPress che hanno il blog su una pagina diversa dalla principale (uno dei siti del genere è quello che state leggendo ora). Vi state chiedendo come si possa realizzare una cosa del genere? Io posso suggerirvi tre soluzioni. Voi scegliete pure quella più adatta alle vostre esigenze.
La soluzione № 1 (quella molto fantasiosa e un po’ perversa)
La soluzione № 2 (quella tradizionalmente avanzata che lascia tanto spazio alla personalizzazione)
La soluzione № 3 (quella molto semplice per le persone che hanno paura di toccare il codice PHP delle pagine del sito)
La soluzione № 1 (quella molto fantasiosa e un po’ perversa): installare una seconda copia di WordPress in una directory del sito e destinarla esclusivamente al blog. Di conseguenza, se la directory dovesse chiamarsi «blog», l’indirizzo del blog sarà sito.it/blog. Mentre il resto del sito – quindi la copia del WordPress installata nella root – lo dedicate solo alle pagine statiche.
L’installazione di una copia n+1 di WordPress in una directory è già stata illustrata nel paragrafo 3 di Inerario, quindi mi resta da aggiungere solo una cosa ovvia: dopo avere realizzato il vostro blog in una directory, siete liberi di fare quello che vi pare della prima pagina del vostro sito, quindi anche impostare una pagina statica. In sostanza, con questo metodo create due siti indipendenti in uno, ognuno dei quali può essere personalizzato come si vuole.
La soluzione № 2 (quella tradizionalmente avanzata che lascia tanto spazio alla personalizzazione): utilizzare un template proprio del blog. Tale metodo, molto più tradizionale del precedente, va ugualmente bene qualora si volesse personalizzare i parametri della visualizzazione dei contenuti del blog: vi permette di creare una infinità di pagine con tutte le combinazioni possibili dei parametri.
In primo luogo, va creato un file di nome qualsiasi, per esempio blog-template.php. Il contenuto del file è per ora questo:

<?php
/*
 * Template name: Blog
 */

Se si sta lavorando direttamente sul server, non bisogna dimenticare di caricare questo file appena creato nella cartella del tema.
In secondo luogo, sul sito va creata la pagina del blog. Quindi nella nostra admin di WordPress andiamo su Pagine → Aggiungi nuova, inventiamo un nome (per esempio, «Blog di Mario»), inventiamo l’URL della pagina (per esempio, sito.it/blog) e – la cosa molto importante – non ci dimentichiamo di scegliere il nostro template tra gli attributi della pagina.

Ora clicchiamo su «Pubblica» e passiamo al prossimo step.
In terzo luogo, bisogna ricordare che sul blog ci servirà sicuramente la navigazione tra le pagine. Quindi controllate di avere una funzione apposita nel file functions.php oppure un plugin installato.
In quarto luogo, bisogna perfezionare la pagina principale del blog. Il suo codice minimo essenziale (da inserire nel file creato al primo step) è il seguente:

<?php
/*
 * Template name: Blog
 */
$current_page = (get_query_var('paged')) ? get_query_var('paged') : 1; // determinare la pagina corrente del blog
$args = array(
	'posts_per_page' => get_option('posts_per_page'), // il valore di default viene preso dalle impostazioni, ma puoi mettere anche un valore di tua preferenza
	'paged'          => $current_page // la pagina corrente
);
query_posts( $args );
 
$wp_query->is_archive = true;
$wp_query->is_home = false;
 
while(have_posts()): the_post();
	?>
	<h2><?php the_title() /* titolo del post */ ?></h2>
	<p><?php the_content() /* contenuto del post */ ?></p>
	<?php
endwhile;
 
if( function_exists('wp_pagenavi') ) wp_pagenavi(); // la funzione della navigazione tra le pagine

L’eventuale presenza di altri elementi del codice (come, per esempio, get_header(), get_footer() etc.) dipende dalle caratteristiche del vostro progetto.
Una volta finito il perfezionamento del codice, non dimenticatevi di caricare il file sul server dove pensate di testarlo e/o utilizzarlo.
In quinto luogo – l’ultimo ma sempre importante –, bisogna rendere bello, logico e comprensibile l’URL dei singoli articoli del vostro blog. Questo significa almeno due cose: 1) già dall’indirizzo dell’articolo deve essere chiaro che si tratti di un articolo del blog; 2) il visitatore deve avere la possibilità di cancellare la parte destra dell’indirizzo fino a lasciare sito.it/blog/ ed essere indirizzato alla pagina principale del blog. Per realizzare una cosa del genere andiamo su Impostazioni → Permalink della nostra admin di WordPress e scegliamo l’opzione «Struttura personalizzata». Nel campo a destra scriviamo /blog/%post_id%/ (per gli indirizzi numerici) oppure /blog/%postname%/ (per gli indirizzi in lettere).

Salviamo i cambiamenti. Il blog è pronto all’uso. Ora potete fare quello che volete della pagina principale del sito.
La soluzione № 3 (quella molto semplice per le persone che hanno paura di toccare il codice PHP delle pagine del sito): utilizzare gli strumenti disponibili nella admin di WordPress. Ricordando che il codice PHP del file index.php può cambiare radicalmente da un tema all’altro, eseguiamo i passaggi elencati di seguito.
In primo luogo, nella admin di WordPress andiamo su Pagine → Aggiungi nuova, inventiamo un nome (per esempio, «Blog di Mario»), inventiamo l’URL della pagina (per esempio, sito.it/blog) e clicchiamo su «Pubblica».

In secondo luogo, andiamo su Impostazioni → Lettura, selezioniamo la voce «Una pagina statica», scegliamo la pagina che vogliamo nel menu «Pagina iniziale» e la pagina creata nel passaggio precedente nel menu «Pagina articoli».

Salviamo le modifiche e andiamo avanti.
In terzo luogo, bisogna fare gli eventuali perfezionamenti della prima pagina del sito (scelta al passaggio precedente) e alla pagina principale del blog (che già si apre comunque all’indirizzo sito.it/blog).
In quarto luogo – l’ultimo ma sempre importante –, bisogna rendere bello, logico e comprensibile l’URL dei singoli articoli del vostro blog. Questo significa almeno due cose: 1) già dall’indirizzo dell’articolo deve essere chiaro che si tratti di un articolo del blog; 2) il visitatore deve avere la possibilità di cancellare la parte destra dell’indirizzo fino a lasciare sito.it/blog/ ed essere indirizzato alla pagina principale del blog. Per realizzare una cosa del genere andiamo su Impostazioni → Permalink della nostra admin di WordPress e scegliamo l’opzione «Struttura personalizzata». Nel campo a destra scriviamo /blog/%post_id%/ (per gli indirizzi numerici) oppure /blog/%postname%/ (per gli indirizzi in lettere).

Bene, queste erano le tre soluzioni possibili per lo spostamento del blog (o, comunque, della pagina degli articoli) verso la pagina non iniziale del sito. Come avete visto, si tratta di una operazione accessibile a tutti, anche alle persone che non sanno alcunché della programmazione. La scelta della soluzione ottimale dipende dalle vostre capacità e necessità concrete.

I commenti sono chiusi.