par

Fondamentaux

Le développement d’un site sous WordPress implique la maitrise de deux choses qui seront les piliers de nos formations WordPress.

La création d’un thème :

https://developer.wordpress.org/themes

L’ajout de fonctionnalités via des plugins.

https://developer.wordpress.org/plugins :

Le thème est le dossier qui accueille les templates (les vues « php » ), les assets statiques (CSS, sprites) et le fichier « functions.php » dédié principalement à l’activation / désactivation de fonctionnalités native du CMS qu’il faudra essayé d’appréhender comme un framework.

Pour un aperçu des possibilités offertes par ce fichier, il est important de consulter chaque année le fichier « functions.php » du thème par défaut de WordPress. C’est généralement un très bon support pour attaquer une formation à WordPress sans préalable.

Pour connaitre la liste des différents templates à intégrer à votre thème, rendez-vous sur la template hiérarchie à l’adresse ci-dessous :

https://developer.wordpress.org/themes/basics/template-hierarchy

Il existe deux grandes « familles » de templates. Les « archives » et les « singles »

Les archives affichent une liste de « posts » ou d’item. Les singles affichent un seul post ou item. C’est la base de fonctionnement de WordPress qui propose ainsi principalement deux type d’environnement aux visiteurs : des listes (archives) ou des résultats (single comme un article ou une page).

Communément, en-tête et pied de page sont gérés dans des fichiers à part. (header.php et footer.php) et directement intégrés aux templates via les fonctions get_header() et get_footer().

header.php contiendra toujours la fonction wp_head() dans la balise html « head »
footer.php contiendra toujours la fonction wp_footer() avant la fermeture de la balise html. Ainsi, un thème minimaliste pourrait fonctionner seulement avec les fichiers suivants :

index.php
singular.php
header.php
footer.php
style.css
functions.php

Le fichier index.php s’occupera de gérer les pages « d’archives » (ie. catégorie, recherche, page d’accueil etc…) grâce à un recours à la « loop » WordPress.
https://codex.wordpress.org/The_Loop

<?php
get_header();

if ( have_posts() ) :

while ( have_posts() ) : the_post(); ?>

<article><?php the_title(); the_content(); ?></article>

<?php endwhile;

endif;

get_footer();

Le fichier singular.php s’occupera de gérer les pages « single » (article et page) :

<?php

get_header();

the_post(); ?>

<article><?php the_title(); the_content(); ?></article>

get_footer();

De base, les fonctionnalités « Widgets & Sidebar » ne sont pas disponibles dans votre thème. Cela fait partie des choses à activer à la demande via le fichier functions.php
https://codex.wordpress.org/Function_Reference/register_sidebar

Créer une sidebar :

// functions.php

add_action( 'widgets_init', 'theme_slug_widgets_init' );

function theme_slug_widgets_init() {

register_sidebar( array(

'name' => __( 'Main Sidebar', 'theme-slug' ),

'id' => 'sidebar-1',

'description' => __( 'Widgets in this area will be shown on all posts and pages.', 'theme-slug' ),

'before_widget' => '<li id="%1$s" class="widget %2$s">',

'after_widget'  => '</li>',

'before_title'  => '<h2 class="widgettitle">',

'after_title'   => '</h2>',

) );

}

La gestion des widgets est désormais accessibles en back-office. Et la sidebar peut-être appelée via la function get_sidebar() qui chargera le fichier sidebar.php de votre thème. (sur le même principe que header et footer).

Les Marqueurs conditionnels

Ils permettent de contextualiser son code et/ou ses fonctions au sein de son thème ou des plugins. Par exemple is_page() renverra true dans un contexte de page et false dans tous les autres contextes.

L’ensemble des marqueurs disponibles est à retrouver ici : https://codex.wordpress.org/fr:Marqueurs_conditionnels

L’ensemble de ces fonctions sont disponibles à partir du l’action « wp »

Ecrire un Commentaire

Commenter