web-dev-qa-db-fra.com

Aide sur "text domain", comments_form dans le thème WordPress

Je me suis débrouillé pour créer mon propre thème et je suis à peu près là, mais j'ai lancé le plugin Theme Check et j'ai eu quelques préoccupations/questions:

  1. Tout au long du thème, partout où il y a du texte, j'ai utilisé _e( 'Import / Export' ); par exemple pour aider à la traduction. Je reçois cependant ce message: RECOMMANDÉ: Problèmes de domaine de texte dans admin/options-backup.php. Vous n'avez pas inclus de domaine de texte! J'ai essayé de faire des recherches sur les domaines de texte, mais je ne parviens pas à assembler les choses correctement.
  2. J'ai reçu des avertissements pour que add_custom_image_header et add_custom_background ne soient pas inclus, mais je n'ai pas nécessairement ces éléments disponibles de toute façon - existe-t-il un moyen d'enregistrer ces fonctions, puis de les supprimer (pour se débarrasser de cet avertissement)?
  3. Un autre élément est * REQUIRED: impossible de trouver comment_form. * Mais dans mon thème, j'utilise plutôt comments_template (). Devrais-je simplement ignorer celui-ci? En tant que référentiel, j'ai construit ceci à partir de rootstheme.com

Merci pour toute aide sur celui-ci - j'espère que ce type de questions sera utile pour les autres personnes cherchant à créer un modèle WordPress épuré.

2
Zach
  1. Eh bien, cela signifie que vous n'incluez pas de domaine de texte ... Eh bien, car vous n'incluez pas de domaine de texte. Évidemment, pour résoudre ce problème, vous devez inclure le domaine de texte. Voir I18n pour les développeurs de thèmes et de plugins dans le Codex.

  2. Il est inutile d'ajouter du code supplémentaire pour simuler les résultats des tests. Si vous n'avez pas besoin de cette fonctionnalité, ignorez simplement l'avertissement.

  3. Si vous utilisez comments_template() mais ne fournissez pas réellement de modèle de commentaire dans votre thème, cela signifie qu'il retourne au code dans le code principal, il est uniquement conservé pour des raisons de compatibilité et doit être supprimé ultérieurement. Ce n'est pas la bonne façon de l'utiliser. Vous devez implémenter un modèle de commentaire approprié dans votre thème.

Pour l’avenir, publiez ces éléments non liés sous forme de questions séparées. Ils n'ont pas de sens en tant que question simple.

2
Rarst

Pour les personnes qui viennent ici à la recherche d'une explication plus détaillée sur le problème de domaine de texte au lieu de simplement "utiliser un domaine de texte". Voici comment ça fonctionne.

Tout d’abord, vous devez indiquer à WordPress où les fichiers de langue doivent être placés dans votre thème et comment se présente le ' theme slug ' (un identificateur unique pour votre thème):

add_action('after_setup_theme', 'crucial_setup');

function crucial_setup(){
    load_theme_textdomain('theme-slug', get_template_directory() . '/languages');
}

Ensuite, où que vous traduisiez du texte, mettez le theme-slug sur la traduction. Comme ça:

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

Naturellement, "thème-slug" devrait être remplacé par le nom de votre thème, sans espaces et par tout caractère étrange.

Il m'a fallu beaucoup de temps pour aller au fond des choses, les documents WordPress l'expliquent assez mal.

8
Andy

Si vous avez quelque chose comme _e(''), changez-le en _e('','a4jp')

Dans cet exemple, a4jp est le nom du thème (theme-slug).

1
a4jp.com