Eviter les erreurs lors de la création d’un thème

Eviter les erreurs lors de la création d’un thème

 

Suite à l’envoi de thèmes sur le repository de wordpress, certains me reviennent avec des erreurs  type que je partage ici, si jamais ca peut éviter à certains d’attendre trop longtemps avant que leur thème soit validé

1- Screenshot should represent what the theme looks like on default. You screenshot shows Admin bar please remove the admin bar.

Lorsqu’on importe un screenshot du thème, bien penser à livrer une image conforme sans admin bar, sans logo(s’il n’y en a pas dans le thème)sans images qui ne seraient pas livrées avec le thème, bref, l’utilisateur doit pouvoir retrouver exactement le même rendu

2- Description tag in style.css contains The 2012 theme for WordPress is a fully responsive should be your theme name.

Faute d’inattention, lorsqu’on crée un thème à partir d’un template wordpress type twenty twelve ou autre, bien penser à retirer tout commentaire rappelant le thème d’origine

3- While changing layout from customizer i got this error Warning: call_user_func_array() expects parameter 1 to be a valid callback, function 'utopia_sanitize_sidebar_placement' not found or invalid function name in E:\xampp\htdocs\theme_review\wp-includes\plugin.php on line 213

Ceci est particulier , mais quand on fait plusieurs thèmes à la fois, bien penser à vérifier le nom de chaque fonction

4-rtl-language-support is working properly.

Penser à mettre un fichier rtl.css

5-admin_url should be sanitized in index.php line no.50

Faute d’inattention encore, bien penser à sanitize les fonctions type « admin-url’ avec un esc_url().Pareil pour le lien de l’image header, bien penser à entourer le lien header_image d’un esc_url().

<a href="<?php echo esc_url(home_url('/')); ?>"><img src="<?php header_image(); ?>" class="header-image" width="<?php echo get_custom_header()->width; ?>" height="<?php echo get_custom_header()->height; ?>" alt="" /></a>
                    <p><?php printf(__('Ready to publish your first post? <a href="%s">Get started here</a>.', 'personnal'), esc_url(admin_url('post-new.php'))); ?></p>

6-Remove <title><?php wp_title('|', true, 'right'); ?></title> as you have title-tag support in functions.php add_theme_support( 'title-tag' ); https://codex.wordpress.org/Title_Tag

Doublon qui arrive fréquemment à mon avis, l’appel au titre dans le header, et dans les fonctions

7-wp_enqueue_script( 'infinite-scroll' ); This is no available in WordPress Default_Scripts_Included

Bien penser avant d’enqueue les scripts, à les regsiter s’ils ne sont pas intégrés d’office par wp

8-Your language file is twentytwelve.pot should be your own .pot file and named as personal.pot

Pareil que la haut, faute d’inattention, bien penser à retirer tout lien vers le thème starter de base.

9-Provide License Details of Scripts and Styles used in readme.txt file.

== Copyright and License ==

Roman WordPress Theme, Copyright 2015 Votre Nom.
Roman WordPress theme is distributed under the terms of the GNU GPL.

10- Most of Your options are not allowed in theme options. No pay wall restricting any WordPress feature. Only put those options that can be used in the theme. You cann’t change the WordPress Features.

Pour la création d’options du thème, penser à ne jamais inclure de fonction qui modifie le Core de wp, sous forme de plugin oui, mais pas en thème : exemple  la suppression des menus du dashboard, la suppression des widget le changement des pages de connexion etc..

11-There is no need to load jQuery alone when you are adding it as a dependancy for bootstrap.

 wp_enqueue_script('bootstrap-js', get_template_directory_uri() .'/js/bootstrap.min.js', array('jquery'), true);

Ici Jquery est appelé en dépendance de bootstrap, il n’y a donc pas besoin d’enqueue jquery en plus, puisqu’en plus wordpress charge deja jquery

12- You can combine all the functions that are added with add_action(‘wp_enqueue_scripts’,’name’) into one.

Bien penser, pour une plus grande lisibilité du code et meilleure maintenabilité, à regroupe tous les appels aux scripts dans la meme fonction

Pour le signe Copyright, il faut utiliser le caractère spécial ‘&copy;’

13-get_the_title should always be sanitized all over the theme

Dans ce cas faire un esc_attr(strip_tags(get_the_title()))

14- Please provide unminified version of css and js used by the themes.

Eviter de mettre des .min.css ou .min.js mais prendre le fchier .css et .js normal à la place

15- {{{<?php bloginfo(‘description’); ?> }}} on header.php Not escaped

Remplacer par <?php esc_attr(bloginfo(‘description’)); ?>

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.