@package & @subpackage: Verwendung mit untergeordneten Themen

8

Mein Problem ist mit @packageund @subpackage.

Ich ging zu dem vorgeschlagenen Link ( Wofür sind die Paket- und Unterpaketkommentare? ). Dort habe ich nichts gefunden, was ich auf mein Problem anwenden könnte, sondern die folgende Antwort: „Dies sind PHPDoc-Tags, mit denen eine aussagekräftige (und automatisierte) Codedokumentation erstellt wird.“ Das habe ich jetzt:

/**

* 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

*/

Dies ist kein Kinderthema von zehnundzwanzig. Im Ordner mit dem Themennamen befindet sich ein Ordner : functions. Mein untergeordnetes Thema befindet sich in einem anderen Ordner. Ich habe die functions.phpDatei in meinem untergeordneten Themenordner gespeichert . Es passiert nichts (Ändern des Inhalts), entweder wenn ich das Unterpaket meines Ordnernamens ändere oder das FunctionsWort dort lasse .

Was soll ich hier einfügen?

/**

* 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 ???

*/
Marie
quelle

Antworten:

4

Faustregel: Ist Ihr Code mit dem von angegebenen Code gebündelt (dh verpackt ) @package? Wenn nein, verwenden Sie einen falschen Wert für @package.

Für die meisten Themen ist dies einfach:

  • Core-Bundle- Themes verwenden @package: WordPressund @subpackage Theme-Name, da sie mit WordPress selbst gepackt und verteilt werden
  • Alle anderen Themen werden verwendet @package: Theme-Name, da sie getrennt von WordPress verpackt und verteilt werden .

Alle Themen sind eine Abstraktionsschicht von WordPress selbst und basieren auf WordPress, um ausgegeben zu werden. Aber diese Abhängigkeit macht sie nicht zu einem @subpackageWordPress.

Ich würde diese Regel auch auf untergeordnete Themen anwenden. Sie sind ein eigenständiges Paket, das getrennt von dem übergeordneten / Vorlagen-Thema, auf das sie sich verlassen , verpackt und verteilt wird .

Chip Bennett
quelle
3

Genau wie in der Originaldokumentation angegeben, handelt es sich um PHPDocumenter-Tags. Sie wirken sich überhaupt nicht auf Ihren Code aus. Wenn Sie sie also ändern, wird dies nichts bewirken.

Sie sind jedoch nützlich für automatisierte Tools, die Ihren Code analysieren und eine für Menschen lesbare Dokumentation erstellen. Diese PHPXref ist ein Beispiel für eine analysierte Version von WordPress.

In WordPress ist das @packagenormalerweise WordPress. Das @subpackageist das Modul, das Sie sich ansehen. So WP_Httpenthält beispielsweise der obere Teil der Klasse:

/**
 * 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
 */

In Ihrem Fall @packagewäre der Name Ihres Themas. @subpackageist optional und nur dann wirklich relevant, wenn Sie andere Module in Ihrem Thema haben - Ihre functions.phpDatei ist nicht wirklich ein Unterpaket des Themas, daher würde ich das Tag in diesem Fall weglassen.

Untergeordnete Themen müssen auch nicht die @package/ @subpackageStruktur ihrer Eltern erben . Verwenden Sie, was für Ihr Projekt sinnvoll ist, da diese Kommentare und Notizen dazu dienen, anderen zu helfen, die Struktur Ihres Projekts zu verstehen.

EAMann
quelle
Hallo, ich danke Ihnen allen für Ihre Antworten. Ich habe gerade den Paketnamen den Namen meiner hinterlassen (hoffentlich habe ich richtig verstanden). Die .php-Datei, die ich habe, befindet sich in einem Funktionsordner in meinem untergeordneten Thema wie im übergeordneten Thema. Ich war nicht in der Lage, es zum Laufen zu bringen, daher dachte ich, das Problem liege in der Art und Weise, wie Paket und Unterpaket auf andere Artikel bezogen wurden. Nicht der Fall von dem, was Sie sagen und wie es immer noch nicht funktioniert. Wie kann ich die .php-Datei zum Laufen bringen? (Oder sollte dies ein neuer Thread sein?)
Marie
Verwenden Sie include()oder require()in Ihrer Hauptdatei functions.php, um die neue PHP-Datei einzuschließen? Wenn nicht, wird es nie geladen. Ich würde sagen, einen neuen Thread zu öffnen, aber das Einfügen von PHP-Dateien ist kein WP-spezifisches Problem. Wenn Sie also einen neuen Thread öffnen, würde ich Sie dazu ermutigen, dies bei Stack Overflow zu tun.
EAMann
0

Das sind Dokumentations-Tags. Sie verwenden sie, um verwandte Codebits für die Codedokumentation zu gruppieren. Wikipedia hat ein gutes Diagramm mit den verschiedenen verfügbaren Tags. Die offizielle Dokumentation finden Sie unter http://www.phpdoc.org/ .

Es passiert nichts (Ändern des Inhalts), entweder wenn ich das Unterpaket meines Ordnernamens ändere oder das Wort "Funktionen" dort belasse.

Recht. Nichts passiert. Dies dient nur zur Codedokumentation. Sie werden nichts bemerken, bis Sie Ihren Code über das PHPDoc-Skript ausführen, das Dokumentation generiert, aber die Funktionsweise Ihres Codes nicht ändert.

Verwenden @packageSie diese Option , um Ihr Thema zu identifizieren. Verwenden Sie @subpackage, wenn Sie möchten, auf Gruppenfunktionen innerhalb der theme-- eine Datei von Widgets oder etwas themenspezifische volle sagen.

Welchen Unterschied macht es, einschließlich der @ package-Annotation oder nicht?

http://codex.wordpress.org/Inline_Documentation

s_ha_dum
quelle