Guide du débutant pour PHP dans WordPress
Publié: 2013-03-24WordPress utilise différents types de code pour exécuter le logiciel.
PHP, CSS, HTML et Javascript sont 4 langages de code différents que vous trouverez dans les fichiers principaux de WordPress.
PhP est le code le plus puissant qui exécute les fichiers de base de WordPress, tous les plugins que vous installez et votre thème actif.
PHP ne se limite pas aux fonctions personnalisées, mais les fonctions personnalisées sont largement utilisées lors de la personnalisation et de la conception de sites WordPress.
Où insérer le code PHP
Vous pouvez placer votre code php directement dans vos fichiers de modèles de thèmes enfants ou dans votre fichier de thèmes functions.php.
Une autre solution consiste à installer un plugin hook comme Genesis Simple Hooks qui s'avère pratique si vous ne souhaitez ajouter que quelques petites lignes de code HTML, texte ou PHP à un emplacement spécifique où votre thème utilise des crochets.
Lorsque vous ajoutez du code PHP à un emplacement de hook à l'aide d'un plugin, assurez-vous d'envelopper le PHP dans les balises PHP d'ouverture et de fermeture. Exemple:
<?php echo "Output Text Using PHP in a Themes Hook Locations"; ?>
Pour éviter de gonfler vos fichiers de modèle avec du code et pour conserver tout votre code au même endroit, il est préférable de créer un thème enfant et d'ajouter un fichier de fonctions pour tout votre code personnalisé.
De cette façon, tout votre codage personnalisé ne sera pas perdu lorsque vous mettrez à jour votre cadre de thème parent ou les fichiers principaux de WordPress.
Ouvrir et fermer des balises PHP
Le code PHP commence toujours par <?php et se termine par ?>
Si vous placez du code PHP dans vos fichiers de modèle, vous devrez toujours ajouter ces balises PHP d'ouverture et de fermeture.
Étant donné que l'ajout de PHP directement à vos fichiers n'est pas la meilleure pratique, vous n'avez pas besoin d'ajouter ces balises à chaque bloc de code que vous écrivez dans votre fichier de fonctions. La raison en est que votre fichier de fonctions inclura déjà une balise PHP d'ouverture au début et aussi parfois à la fin du fichier selon la façon dont votre thème est codé.
Vous ajoutez simplement le code PHP après la balise PHP d'ouverture.
Où ajouter votre code PHP
Exemple de fichier de fonctions de thème parent :
La capture d'écran ci-dessus vous montre une section du fichier de fonctions de thème Woo que vous pouvez utiliser pour ajouter du code php personnalisé pour les fonctions personnalisées. Les thèmes Woo incluent le framework Woo dans chaque thème, tandis que les thèmes enfants de StudioPress sont construits sur la base d'un framework distinct nommé Genesis.
Les thèmes enfants comme ce que propose StudioPress incluent un fichier functions.php pour un codage personnalisé. De cette façon, vous n'avez pas besoin d'ajouter ou de modifier le code PHP dans le thème parent ou le framework de thème qui, dans ce cas, est Genesis.
Vous pouvez également utiliser l'éditeur de fichiers intégré situé sous l'onglet Apparence de votre tableau de bord, mais ce n'est pas la meilleure pratique.
Modification du code PHP
Choisissez votre éditeur de texte/code préféré et sauvegardez toujours les fichiers que vous modifiez au cas où vous feriez une erreur.
Afficher du texte avec PHP
Si vous voulez simplement sortir du texte en utilisant du code php, vous écrivez un code comme celui-ci :
<?php echo "Howdy Folks!"; ?>
echo est utilisé lorsque vous souhaitez afficher du texte et ce code affichera le texte Howdy Folks!
Mais où le code affichera-t-il le texte ?
Si vous placez ce code dans vos thèmes functions.php, il affichera le texte en haut de chaque page de votre site.
Si vous placez le code à un emplacement spécifique dans un fichier de modèle spécifique comme votre footer.php, il affichera le texte dans votre pied de page. De plus, il affichera toujours ce texte à chaque chargement de la page.
Une meilleure façon de déterminer quand le code doit être exécuté pour générer le texte consiste à utiliser une fonction.
Et une meilleure façon de déterminer l'emplacement de votre texte est d'utiliser les crochets WordPress et, mieux encore, les crochets de vos thèmes.
Étant donné que l'ajout de code PHP à vos fichiers de modèle n'est pas un moyen efficace d'utiliser le code PHP pour la personnalisation, vous devrez ajouter ce code à une fonction et inclure un crochet pour déterminer l'emplacement exact que votre contenu affiche dans votre thème.
Examinons d'abord l'utilisation des fonctions personnalisées de base, puis examinons les crochets à utiliser pour déterminer l'emplacement d'affichage de votre texte.
Les fonctions
Nous allons écrire une fonction personnalisée très basique pour exécuter le code qui génère le texte lorsque la page se charge dans le navigateur, uniquement lorsqu'elle est appelée à l'aide de la fonction.
La première étape consiste à créer votre fonction personnalisée et à lui donner un nom décrivant ce qu'elle fera.
function your_custom_function_name() { echo "Howdy Folks!"; }
Nom de la fonction
function display_welcome_text() { echo "Howdy Folks!"; }
Maintenant que nous avons nommé la fonction personnalisée, nous voulons choisir un emplacement pour afficher (afficher) le texte de bienvenue dans notre thème.
Vous pouvez exécuter le code PHP n'importe où dans votre thème à l'aide de crochets.
Tout d'abord, nous ajouterons un crochet WordPress qui fonctionne dans n'importe quel thème pour afficher notre texte de bienvenue dans le pied de page.
Le crochet que WordPress utilise pour le pied de page est wp_hook donc tout ce que nous devons faire maintenant est de l'ajouter au code.
Pour ajouter le crochet au code, nous utilisons add_action.
add_action( 'wp_footer', 'display_welcome_text' ); function display_welcome_text() { echo "Howdy Folks!"; }
Ce code fonctionnera dans n'importe quel thème car il utilise un crochet WordPress. Mais que se passe-t-il si votre thème utilise ses propres crochets comme Genesis ou Woo ?
Que faire si vous ne voulez pas que le texte s'affiche dans le pied de page ?
Et si vous voulez qu'il affiche le texte avant ou après le contenu de vos messages ?
Ensuite, vous devez utiliser les crochets appropriés proposés par votre thème.
Ce code affiche le texte de bienvenue avant le contenu des messages lors de l'utilisation d'un thème Woo
add_action( 'woo_post_before', 'display_welcome_text' ); function display_welcome_text() { echo "Howdy Folks!"; }
Ce code affiche le texte de bienvenue après le contenu lors de l'utilisation d'un thème enfant Genesis de StudioPress.
function display_welcome_text() { echo "Howdy Folks!"; } add_action( 'genesis_after_content', 'display_welcome_text' );
D'accord, mais le texte s'affiche également sur les pages d'archives comme la page d'accueil ou la page de blog, alors comment pouvons-nous filtrer cela ?
Nous ajoutons une balise conditionnelle.
Vous pouvez afficher des exemples de code à l'aide de balises conditionnelles pour les utilisateurs du thème Woo et les utilisateurs du thème enfant Genesis.
Voici un exemple :
add_action( 'genesis_after_content', 'display_welcome_text' ); function display_welcome_text() { if (is_single() && is_active_sidebar( 'after-post' ) ) { echo "Howdy Folks!"; }}
Ce code affichera votre message en texte brut sur tous les articles uniques après le contenu de l'article.
Pourquoi utilise-t-on 2 accolades fermantes ?
Parce que nous devons terminer à la fois la fonction personnalisée et l'instruction conditionnelle.
Développement du code local
Installez WordPress localement en utilisant instantwp pour Windows ou MAMP pour les utilisateurs Mac.
De cette façon, vous pouvez faire autant d'erreurs qu'il en faut pour apprendre à écrire du code PHP jusqu'à ce qu'il fonctionne.
Affichage du code PHP dans WordPress
D'après mon expérience, la meilleure façon d'afficher et de stocker des extraits de code PHP est d'utiliser un service en ligne gratuit comme Github Gists.
En savoir plus sur l'affichage du code PHP dans WordPress.