bien débuter dans la conception d'un thème wordpress

20
Bien débuter la conception d’un thème WordPress Aurélien Denis - WordCamp Paris 2014 @wpchannel

Upload: aurelien-denis

Post on 22-Jun-2015

1.786 views

Category:

Technology


0 download

DESCRIPTION

10 conseils pour apprendre à concevoir votre thème WordPress de A à Z en partant sur de bonnes bases. Présentation du 18 janvier 2014 lors du WordCamp Paris.

TRANSCRIPT

Page 1: Bien débuter dans la conception d'un thème WordPress

Bien débuter la conception d’un thème WordPressAurélien Denis - WordCamp Paris 2014

@wpchannel

Page 2: Bien débuter dans la conception d'un thème WordPress

Un thème, c’est quoi ?

1 CSS

Des templates PHP

1 PNG (pour le screenshot)

Page 3: Bien débuter dans la conception d'un thème WordPress

#1 - Organisé tu seras !

Réfléchir à l’architecture du site

Structurer les données en répertoires

Connaitre la hiérarchie des templates sous WordPress

Page 4: Bien débuter dans la conception d'un thème WordPress
Page 5: Bien débuter dans la conception d'un thème WordPress

#2 - Un enfant tu feras !

Les enfants héritent des parents pour le meilleur et

pour le pire

Page 6: Bien débuter dans la conception d'un thème WordPress

#3 - Speak English, you will

Créer des chaînes de traductions en anglais du type <?php _e(‘string’, ‘textdomain’); ?>

Proposer un fichier POT

Page 7: Bien débuter dans la conception d'un thème WordPress

add_action('after_setup_theme', ‘cat_translator');function cat_translator() {load_theme_textdomain(‘catwoman', get_template_directory() . '/languages');}

Page 8: Bien débuter dans la conception d'un thème WordPress

#4 - Les CSS et les JavaScript

JAMAIS directement dans header.php ou footer.php

Utiliser les hooks dans functions.php ou /inc/theme-scripts.php

WordPress intègre une liste incroyable de scripts de base !

Page 9: Bien débuter dans la conception d'un thème WordPress

function cat_css_js() {

wp_register_style( 'bootstrap', get_template_directory_uri() . '/inc/css/bootstrap.min.css', array(), '3.0', 'all' );

wp_enqueue_style( 'bootstrap' );

wp_enqueue_style( 'ntp-style', get_stylesheet_uri(), array('bootstrap'), '2.1', 'all' );

!

wp_register_script( 'bootstrap', get_template_directory_uri().'/inc/js/bootstrap.min.js' );

wp_register_script( 'custom', get_template_directory_uri().'/inc/js/custom-js.js', 'jQuery', '1.0', true );

wp_enqueue_script( 'jquery' );

wp_enqueue_script( 'bootstrap', array('jQuery'), '1.0', true );

wp_enqueue_script( 'custom' );

}

add_action('wp_enqueue_scripts', 'cat_css_js');

Page 10: Bien débuter dans la conception d'un thème WordPress

Ressource indispensablehttp://generatewp.com/

Page 11: Bien débuter dans la conception d'un thème WordPress

#5 - Le duplicate coding, tu éviteras !

Évite d’obtenir un fichier à rallonge

Permet la duplication des boucles

Segmente votre code

Exemple : <?php get_template_part( 'content', get_post_format() ); ?>

Page 12: Bien débuter dans la conception d'un thème WordPress

#5 - Le duplicate coding, tu éviteras !

Créer des fonctions personnelles dans functions.php (ou équivalent)

Pratique pour coder plus rapidement

Exemple : les zones de métadonnées (date, auteur, catégorie, etc.)

Page 13: Bien débuter dans la conception d'un thème WordPress

#6 - wp_head / wp_footer

Présence indispensable dans header.php et footer.php

Permet d’injecter les scripts et CSS via les hooks appropriés

Page 14: Bien débuter dans la conception d'un thème WordPress

#7 - Du bon usage des requêtes WP_query pour vos requêtes personnalisées

get_posts pour retourner des contenus uniquement

pre_get_posts pour filtrer avant l’exécution de la boucle

query_posts pour modifier une requête existante (à proscrire dans 90% des cas)

Page 15: Bien débuter dans la conception d'un thème WordPress

#8 - La sécurité, tu renforceras !

<?php

// Blackhat

if ( !defined('ABSPATH') ) die('Attention aux chats ! Meeeaaaw !');

?>

Merci @woothemes et @thierrypigot !

Page 16: Bien débuter dans la conception d'un thème WordPress

#8 - La sécurité, tu renforceras !

Options All -Indexes

!

A coller dans .htaccess pour bloquer l’accès aux répertoires

Page 17: Bien débuter dans la conception d'un thème WordPress

#9 - CIYF

Wtf?

Codex Is Your Friend et GIYF aussi !

Re Wtf ?

Google aussi est ton ami rhoo ! ;)

Page 18: Bien débuter dans la conception d'un thème WordPress

Et puis…

Modèles de pages

<body <?php body_class(); ?>>

Favicon multi-devices

Page 404

Twitter BootStrap

HTML5/CSS3Images retina

Rétrocompatiblité IE8

Page 19: Bien débuter dans la conception d'un thème WordPress

« Ce que nous voyons n'est pas le monde réel en fin de compte mais un modèle du monde créé par

notre propre cerveau" . »

–Déborah Donnier @ddesign_web

Page 20: Bien débuter dans la conception d'un thème WordPress

@wpchannelhttp://wpchannel.com/