Una pagina personalizzata in WordPress

Se si pensa di aprire un blog, la scelta di usare WordPress è evidentemente consigliabile. In teoria, a parte il tempo speso per trovare il template che ci soddisfa maggiormente oppure i plugin necessari per il nostro blog, si può dire che si può andare on-line in un’ora se non meno, pur considerando tutto il setup.
Può capitare però che il nostro blog non sia una mera pubblicazione di articoli, ma che si voglia anche inserire del contenuto dinamico in una pagina php, magari per pubblicare dati organizzati in un database.
Vediamo dunque come inserire una pagina personalizzata in WordPress che mantenga il layout scelto per il blog, ma che possa essere interamente costruita ad hoc.

[ad code=5]

Innanzitutto se la pagina deve elaborare dati di un database, il prerequisito è che siano state create le tabelle del database necessarie.
Accedete quindi con PhpMyAdmin al database WordPress del vostro blog e create la/le tabelle secondo le vostre necessità.
A questo punto il problema che dobbiamo risolvere è quello di assegnare alla nostra pagina il layout scelto per il blog. Per far questo dobbiamo creare un nuovo template che però sia identico a quello scelto per il blog. E’ più semplice di quel che sembra.
Procedete come segue:
Andate alla cartella MioSito/wp-content/themes/MioTema ovviamente, neanche a dirlo, al posto di MioSito ci sarà l’URL del vostro sito e al posto di MioTema ci sarà il nome del tema da voi scelto.
In questa cartella trovate il file page.php. Se il tema fosse Twenty_Twelve, in MioSito/wp-content/themes/twentytwelve, la page.php che trovereste sarebbe questa:

<?php
/**
 * The template for displaying all pages.
 *
 * This is the template that displays all pages by default.
 * Please note that this is the WordPress construct of pages
 * and that other 'pages' on your WordPress site will use a
 * different template.
 *
 * @package WordPress
 * @subpackage Twenty_Twelve
 * @since Twenty Twelve 1.0
 */

get_header(); ?>
<div id="primary" class="site-content">
   <div id="content" role="main">
      <?php while ( have_posts() ) : the_post(); ?>
      <?php get_template_part( 'content', 'page' ); ?>
      <?php comments_template( '', true ); ?>
      <?php endwhile; // end of the loop. ?>
   </div><!-- #content -->
</div><!-- #primary -->

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

Duplicate questo file assegnando alla copia un nome a vostra scelta, verosimilmente un nome che sia rappresentativo del contenuto che volete inserire nella nuova pagina WordPress. Suponiamo che per il nostro esempio il nome scelto sia schede.php (d’ora in poi lo chiameremo così).
Aprite schede.php che ovviamente si presenterà come visto sopra. Ora, sostituite le prime righe di commento con:

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

dove ‘schede’ sarà il nome del vostro nuovo template (non necessariamente il nome deve coincidere con quello del file). Sostituite la parola ‘schede’ col nome da voi scelto.
Adesso sostituite il contenuto della pagina da <div id=”primary”> a </div><!– #primary –> con il codice php che vi necessita. La pagina avrà dunque questo contenuto:

<?php 
/* 
Template Name:  schede
*/ 

get_header(); 
//
// mio codice php
//
get_sidebar();
get_footer(); ?>

Abbiamo eliminato i tag di chiusura e apertura di php inutili.

Entrate ora nel pannello di amministrazione di WordPress e selezionate ‘Pagine’. Dovremo creare una nuova pagina a cui assegneremo il nome che vogliamo appaia nel menu del blog. Noi tanto per cambiare la chiameremeo ‘Schede’. Sulla parte destra ci deve essere un blocco di opzioni chiamato ‘Attributi pagina’. Se non ci fosse cliccate in alto a destra dove vedete scritto Impostazioni Schermo e spuntate la casella ‘Attributi pagina’.
In questo blocco di opzioni c’è un menu a tendina chiamato Modello. Dal menu scegliete il vostro nuovo template (schede nel nostro caso). Se non ci fosse avete sbagliato qualcosa, ma son sicuro che se avete seguito fin qui sarà tutto OK.
Il Genitore va lasciato su Pagina base se la voce di menu dovrà apparire nel menu principale al primo livello.

attributi_pagina

Andate adesso su Aspetto –> Menu. Selezionate la pagina Schede nel blocco ‘Pagine’ e premete su Aggiungi al menu’

pagine_menu

 

 

Nel menu del vostro blog adesso compare la pagina ‘Schede’ col contenuto da voi creato.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.