WordPress per principianti: differenze tra PHP e HTML

WordPress per principianti: differenze tra PHP e HTML

In questo articolo vorrei venire incontro alle esigenze di chi usa WordPress ma non ha molta dimestichezza con PHP e HTML. La domanda più frequente che mi viene rivolta è: dove va il codice che mi hai dato? Vediamo di rispondere a questa e ad altre domande.

PHP e HTML nei file dei temi

Nei file dei temi di WordPress, come index.php, single.php eccetera, il codice HTML si presenta così:


<div class="post">

</div>

Il codice PHP, invece, è sempre contenuto tra i tag <?php e ?>:


<?php

?>

Combinati insieme appaiono così:

[php htmlscript="true"] <div class="post" id="post-<?php echo $post->ID;?>"> </div>

La struttura generata apparirà così:


<div class="post" id="post-12"></div>

Dovete sempre fare attenzione che il codice PHP abbia sempre un tag di apertura e di chiusura per evitare errori.

PHP e HTML nel file functions.php

Il file functions.php è parte integrante di un tema di WordPress, ma a differenza degli altri file è composto quasi esclusivamente da codice PHP.

Quando dovete inserire del codice, dovete sempre inserirlo all'interno dei tag di apertura e di chiusura PHP:


<?php

add_theme_support('post_thumbnails');

?>

Una caratteristica interessante dei file PHP e che tutto quello che voi inserite al di fuori dei tag PHP viene considerato come contenuto HTML. Nel file functions.php potreste ad esempio trovare:

[php htmlscript="true"] <?php function add_style() {?> <style type="text/css"> p { color: green; } </style> <?php } add_action('wp_head', 'add_style'); ?>

L'elemento HTML style verrà interpretato normalmente perchè è al di fuori dei tag PHP.

Infine, il codice HTML può essere sotto forma di stringa PHP. Esempio:


$post_tag = '<div class="post"></div>';

In questo caso l'HTML è contenuto nella variabile $post_tag. In PHP le virgolette vanno annidate a coppie simmetriche. Non si possono infatti avere due coppie di virgolette doppie, ma una combinazione di virgolette singole (apici) e doppie.

Una stringa PHP viene in genere trasformata in marcatura finale tramite l'istruzione echo (o print) che visualizza la stringa:


echo $post_tag;

Che restituirà:


<div class="post"></div>
Torna su