@package & @subpackage: comment utiliser avec les thèmes enfants


8

Mon problème est avec @packageet @subpackage.

Je suis allé sur le lien suggéré (à quoi servent le commentaire sur le package et le sous-package? ). Là, je n'ai rien trouvé que je pouvais appliquer à mon problème, mais plutôt cette réponse: "Ce sont des balises PHPDoc - utilisées pour générer une documentation de code significative (et automatisée)". Voici ce que j'ai maintenant:

/**

* Contains a list of all custom action hooks and corresponding functions defined for abc.

* This file is included in functions.php:

*

* @package theme-name

* @subpackage Functions

*/

Ce n'est pas un thème enfant de vingt dix. Il y a un dossier dans le dossier thématique nom: functions. Mon thème enfant se trouve dans un autre dossier. J'ai enregistré le functions.phpfichier dans mon dossier de thème enfant. Rien ne se passe (changer le contenu) que ce soit lorsque je change le sous-package du nom de mon dossier ou que je laisse le Functionsmot là.

Que dois-je mettre ici?

/**

* Contains a list of all custom action hooks and corresponding functions defined for abc.

* This file is included in functions.php:

*

* @package theme-name

* @subpackage ???

*/

Réponses:


4

Tout comme la documentation d'origine que vous avez trouvée, ce sont des balises PHPDocumenter. Ils n'ont aucun impact sur votre code, donc les changer ne fera rien.

Cependant, ils sont utiles pour les outils automatisés qui analysent votre code et créent une documentation lisible par l'homme. Cette PHPXref est un exemple d'une version analysée de WordPress.

Dans WordPress, @packagec'est typiquement WordPress. C'est le @subpackagemodule que vous regardez. Ainsi, par exemple, la partie supérieure de la WP_Httpclasse contient:

/**
 * Simple and uniform HTTP request API.
 *
 * Standardizes the HTTP requests for WordPress. Handles cookies, gzip encoding and decoding, chunk
 * decoding, if HTTP 1.1 and various other difficult HTTP protocol implementations.
 *
 * @link http://trac.wordpress.org/ticket/4779 HTTP API Proposal
 *
 * @package WordPress
 * @subpackage HTTP
 * @since 2.7.0
 */

Dans votre cas, ce @packageserait le nom de votre thème. @subpackageest facultatif et n'est vraiment pertinent que si vous avez d'autres modules à l'intérieur de votre thème - votre functions.phpfichier n'est pas vraiment un sous-package du thème, donc j'omettrais la balise dans ce cas.

Les thèmes enfants n'ont pas non plus à hériter de la @package/ @subpackagestructure de leurs parents. Utilisez ce qui a du sens pour votre projet car, vraiment, ces commentaires et notes sont spécifiques pour aider les autres à comprendre la structure de votre projet.


Salut, Merci à tous pour vos réponses. Je viens de laisser le nom du package le nom de mon eux (j'espère avoir bien compris). Le fichier .php que j'ai est dans un dossier de fonctions dans mon thème enfant comme il l'est dans le thème parent. Je n'ai pas réussi à le faire fonctionner, j'ai donc pensé que le problème était lié à la façon dont le paquet et le sous-paquet faisaient référence à d'autres articles. Ce n'est pas le cas de ce que vous dites et de la façon dont cela ne fonctionne toujours pas. Comment faire fonctionner le fichier .php, s'il vous plaît? (Ou devrait-il s'agir d'un nouveau fil de discussion?)
Marie

Utilisez-vous include()ou require()dans votre functions.phpfichier principal pour inclure le nouveau fichier PHP? Sinon, il ne sera jamais chargé. Je dirais d'ouvrir un nouveau thread, mais inclure des fichiers PHP n'est pas un problème spécifique à WP; donc si vous faites ouvrir un nouveau thread , je vous encourage à le faire sur le débordement de pile.
EAMann

4

Règle générale: votre code est-il groupé (c'est-à-dire emballé ) avec le code indiqué par @package? Si non, vous utilisez une valeur incorrecte pour @package.

Pour la plupart des thèmes, c'est simple:

  • Les thèmes intégrés au noyau utilisent @package: WordPresset @subpackage Theme-Name, car ils sont emballés et distribués avec WordPress lui-même
  • Tous les autres thèmes utilisent @package: Theme-Name, car ils sont emballés et distribués séparément de WordPress.

Tous les thèmes sont une couche d'abstraction de WordPress lui-même et s'appuient sur WordPress pour être générés. Mais cette dépendance n'en fait pas un @subpackagede WordPress.

J'appliquerais également cette règle aux thèmes enfants. Il s'agit d'un package autonome, conditionné et distribué séparément du thème Parent / Template sur lequel ils s'appuient.


1

Ce sont des balises de documentation. Vous les utilisez pour regrouper des bits de code associés à des fins de documentation de code. Wikipedia a un bon tableau avec les différentes balises disponibles. La documentation officielle est sur http://www.phpdoc.org/ .

Rien ne se passe (changer le contenu) que ce soit lorsque je change le sous-paquetage de mon nom de dossier ou que je laisse le mot «Fonctions» à cet endroit.

Droite. Rien ne se passe. Ceci est uniquement pour la documentation du code. Vous ne remarquerez rien tant que vous n'aurez pas exécuté votre code via le script PHPDoc, qui générera de la documentation mais ne changera pas le fonctionnement de votre code.

Utilisez @packagepour identifier votre thème. Utilisez @subpackage, si vous le souhaitez, pour regrouper des fonctions dans le thème - par exemple un fichier plein de widgets spécifiques au thème ou quelque chose.

Quelle différence cela fait-il d'inclure l'annotation @package ou non?

http://codex.wordpress.org/Inline_Documentation


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.