repost : http://webcache.googleusercontent.com/search?q=cache:I2lrxp20X6IJ:www.webforgr.org/2013/themeforest-traduction-guidelines-a-venir-septembre-2013/

Themeforest, la place de marché de thèmes WordPress la plus connu, géré par Envato, va mettre à jour des nouvelles lignes directrices pour les développeurs de thème. Les changements sont assez importants.

Note de l’auteur : traduction personnelle et explication du texte écrit en anglais des Guidelines à venir en septembre 2013 et en aucun cas lié à Themeforest et Envato.

Exigences de la présentation des thèmes WordPress

Ces exigences de soumission sont conçues pour maintenir un niveau minimum de qualité dans le code de WordPress Thèmes téléchargés sur Themeforest. Ils devraient couvrir la plupart des scénarios, toutefois, certaines exceptions peuvent être autorisées à la discrétion de l’examinateur.

Normes en vigueur effectives pour les nouvelles soumissions à Themeforest le : 9 Septembre 2013

WordPress Core API

Aucun ‘template tags’ obsolète ne sont autorisés.
Les Thèmes sont tenus d’éliminer les Warning, Required, Recommended et Info produit par le plugin Theme-Check autant que possible.

Quelques exceptions autorisées sont les suivantes :
Warning: Found base64_encode()
Warning: Found base64_decode()
Warning: Found fwrite()
Warning: Found fopen()
Warning: Found fclose()
Recommended: Found add_theme_support(‘custom-header’, $args)
Recommended: Found add_theme_support(‘custom-background’, $args)
Info: Found include_once()
Info: Found include()
Info: Found require_once()
Info: Found require()
Y compris ce qui précède, sauf rares exceptions peuvent être faites à la discrétion de l’examinateur.

Les fonctions suivantes sont obligatoires :

Si le thème possède des fichiers custom template, ils sont tenus d’être appelées à l’aide de get_template_part() ou locate_template()

Le nommage et la structure des fichiers doivent respecter les meilleures pratiques de WordPress. Par exemple, n’utilisez pas de category-header.php, custom-header.php

Caractéristiques de base de WordPress devront être intégrées :

Modification des filtres wptexturize() n’est pas autorisée.
Modification des filtres wpautop n’est pas autorisée.

Les Classes CSS WordPress par défaut doivent être couverts dans la feuille de style, car il s’agit de comportement natif attendu.
Utiliser un préfixe unique pour tous les noms de fonction, classes, crochets, variables globales/public et entrées de la base de données pour éviter des conflits avec d’autres thèmes et plugins.

Les chaînes traduisibles ne peuvent contenir que des variables.

Fonctionnalités de WordPress

Le thème doit être widget-ready dans tous les emplacements annoncés.
L’utilisation du script Timthumb n’est pas autorisée.
Les thèmes sont tenus de fournir un thème-enfant.
wp_nav_menu() doit figurer dans l’emplacement d’au moins un thème pour la gestion de menu facile.

Tous les widgets par défaut de WordPress devraient être styliser / s’afficher correctement dans toutes les zones widget-isées.

index.php devrait être réservée pour l’affichage des « derniers articles » pour les blogs standards.
Les Thèmes ne sont pas autorisés à ajouter des options qui définissent le nombre de messages à diffuser sur les pages d’archives ou de la catégorie via un paramètre global.
Le nombre de messages à diffuser est régit par l’administration de WordPress.

Test unitaire de WordPress

Articles s’affichent correctement, sans problèmes visuels apparents et sans erreurs.
Articles s’affichent dans l’ordre.
Navigation de la page s’affiche et fonctionne correctement.
La page de résultats de recherche s’affiche correctement, avec les résultats affichée de la requête de recherche.

Sticky posts étant une fonction principale, le thème devrait styliser et les afficher correctement.

Lien « Lire la suite » fonctionne correctement (liens vers un article avec la balise )
Si thème prend en charge post format type, article s’affiche comme prévu dans la vue index.

L’absence de corps du texte ne doit pas nuire à la mise en page.
Le thème doit intégrer aussi bien les taxonomies « Tag » et « Catégorie » d’une certaine manière.
Flotteurs sont nettoyés correctement pour les éléments flottants (image miniature) à la fin de la teneur du message.
Recherchez les éventuels problèmes de débordement si le thème a une superficie de petit titre mis en correspondance avec une chaîne longue sans rupture.

Les ‘float’ sont ‘clear’ correctement pour les éléments flottant (image miniature) à la fin du contenu de l’article.

Recherchez les problèmes de débordement de texte potentiels si le thème a une petite zone de titre assorti d’une longue chaîne insécable.

WordPress Assets

wp_enqueue_style() doit être utilisé pour la file d’attente toutes les feuilles de style.

wp_enqueue_script() doit être utilisé pour ajouter n’importe quels codes JavaScript d’une page.

Les Thèmes devront utiliser quelle que soit la version de jQuery livré avec la dernière version de WordPress.

Les Auteurs ne sont pas autorisés à radier (deregister) la version par défaut de jQuery et charger une autre.
Si une version provenant d’un CDN d’une bibliothèque (library) est inclus, une copie locale doit être fourni en recours.

Les assets doivent être chargés d’une manière efficace pour le SSL lorsque c’est possible. Cela peut être fait soit en vérifiant is_ssl() et définir le préfixe de protocole, soit en utilisant des URI sans protocole, par l’intermédiaire de //example.com/file.js au lieu de http://example.com/file.js

Sécurité

Le thème WordPress devrait utiliser les fonctions suivantes pour valider ou assainir le contenu en entrée ou d’échapper tout contenu douteux en sortie :

input:

output:

Plugins

Les Plugins accompagnants doivent être inclus via la classe d’activation du plugin TGM Plugin Activation class, qui gère la dépendance du plugin et plugins peuvent être installés à partir de WordPress.org ou un fichier ZIP fourni (plus d’options à venir bientôt).

PHP

Thèmes ne doivent avoir aucun notifications PHP, tel que les avertissements ou erreurs.
S’il vous plaît développer avec erreurs activés, et WP_DEBUG à la valeur true.
Les balises courtes PHP ne sont pas autorisés.
La base de données ne doit pas être accédé ou modifié directement. Si une fonction définie doit obtenir les données dont vous avez besoin, il doit être utilisé à la place. Utilisez $wpdb and its methods
et ses méthodes d’interface avec la base de données.
Tabulations doivent être utilisés pour l’indentation – Tabs devraient être utilisés au début de la ligne et les espaces doivent être utilisées à mi-ligne (voir PHP sur les normes de codage de WordPress).

Lors du référencement d’autres fichiers dans le même thème, éviter les URI codé en dur et les chemins d’accès. Plutôt référencer les chemins URI et fichier par l’intermédiaire de leurs balises de modèle respectif. Par exemple :
Pour faire référence à une image dans votre thème :

<img src="<?php echo get_template_directory_uri(); ?>/images/filename.png" />

Les Auteurs devraient être fortement encouragés à toujours utiliser des accolades même dans des situations où elles sont techniquement facultatives. Cela augmente la lisibilité et diminue la probabilité d’erreurs de logique introduite lors de l’ajout de nouvelles lignes.

Utilisation de la fonction eval() n’est pas autorisée. (Exécute une chaîne comme un script PHP)

HTML/CSS

Tout le HTML généré par l’auteur doit être validé par le validateur du W3C. Toutefois, les préfixes de navigateur et tout autre code de pointe seront exemptés.
Si un thème utilise le doctype HTML5, il doit faire un usage correct des éléments sémantiques de HTML5.
Aucun des styles intralignes codé en dur ne sont autorisés partout. Styles intralignes dynamiques sont autorisées tant que de besoin, et wp_add_inline_style() doit être utilisé si possible.
ID et classes doivent être bien nommés et suivent une convention de nommage.
Utiliser des sélecteurs lisibles qui décrivent quels éléments ils stylent.
S’abstenir d’utiliser des sélecteurs surqualifiés, div.container peuvent être notées simplement .container.
Garder les media queries, regroupés par médias au bas de la feuille de style.

JavaScript

Le code JavaScript doit être placé dans des fichiers externes lorsque cela est possible.
Les fichiers JavaScript doivent être placés dans le pied de page, si possible, sauf exceptions notables, par exemple : Modernizr, jQuery UI, etc..
Le code ne devrait pas déclencher des erreurs ou des notifications.

Tous les JavaScript doit être écrits avec le mode « usage strict » sur. Par exemple, vous pouvez le faire avec jQuery comme suit :
(function($) {
"use strict";
// Author code here
})(jQuery);

Utilisation de marqueurs CDATA :
Inline JavaScript devrait être enveloppé avec marqueurs CDATA si le thème utilise un doctype XHTML.
Inline JavaScript ne doivent pas être encapsulé avec marqueurs CDATA, si le thème utilise un doctype HTML.
Wrappers CDATA, si utilisé, doit être placé en commentaire si le thème utilise mixte doctypes XHTML et HTML.
Les wrappers CDATA, si utilisé, doivent être échappés en utilisant une syntaxe spéciale, si le thème utilise mixte doctypes XHTML et HTML, et si le thème supporte IE6 et les navigateurs plus anciens afin d’éviter les erreurs.

Normes pour les nouvelles soumissions Themeforest le :
Provisoirement Novembre 2013, sous réserve des retours.

Plugins

Fonctionnalité non liée à la personnalisation de l’aspect visuel d’un thème doit être ajoutée par l’intermédiaire de plugins autant que possible. Par exemple :
Autorisés dans le thème :
Theme options frameworks
Page builders

doit être Plugin:
Types de message personnalisés
Shortcodes

Les thèmes ne peuvent pas créer des tables de base de données personnalisée. Si une table de base de données personnalisée est absolument nécessaire pour certains certaines fonctionnalités, il devrait être mis en œuvre dans le plugin qui fournit la fonctionnalité. Idéalement, à l’aide de la structure de données intégrées de WordPress serait préférable.

Les thèmes ne peuvent pas créer des tables de base de données personnalisés. Si une table de base de données personnalisée est absolument nécessaire pour une certaine fonctionnalité, il devrait être mis en œuvre dans le plugin qui fournit la fonctionnalité. Idéalement, en utilisant la structure de données intégré dans WordPress serait préférable.

Note de l’auteur : texte sous réserve de changement et ou de mise à jour provenant de WordPress Theme Submission Requirements.


Traduction personnelle et explication du texte écrit en anglais des Guidelines à venir en septembre 2013 à titre personnel et en aucun cas lié à Themeforest et Envato.

Source image de couverture : page Facebook Themeforest
Source :
WordPress Codex
Themeforest
Envato

2 thoughts on “Themeforest : les nouvelle guidelines à venir pour septembre 2013

  1. Bonjour,

    Je viens de m’apercevoir que du jour au lendemain les images n’apparaissaient plus sur mon site. Le code de la page n’ayant absolument pas changé: [img src= »association » size= »full » lightbox= »false » href= »?page_id=634″ title= »Démo Administrateur » caption_type= »inner » caption= »Une administration aisée »][/img]

    Remarque: Il en est de même sur mon site local avec la version de base du theme Inceptio.

    Que se passe-t’il?
    Merci d’avance



  2. ELJ says:


    Bonjour,
    vérifiez bien vos adresses de vos images : dossier uploads ? ou dossier theme/images ?

    si besoin d’audit de votre site, veuillez contacter mon studio de création de sites.
    http://www.pixeljaguar.com/
    Vous pouvez demander un mini-audit gratuit, page contact

    ou demandez conseil sur le forum WordPress fr
    http://www.wordpress-fr.net/support/forum-26-support-wordpress