Ich bin derzeit in der Alpha-Phase der Bearbeitung eines untergeordneten Themas für ein Wordpress-Thema. Ich habe Programmiererfahrung und einige Erfahrung in der Verwaltung von WordPress, aber keine direkte Erfahrung in der Bearbeitung von WordPress-Code. Derzeit werden die ersten drei Kategorien alphabetisch angezeigt.
Was ich versuche zu tun: Anstatt die ersten drei Kategorien alphabetisch anzuzeigen, möchte ich 3 zufällige Kategorien mit mehr als x Anzahl von Produkten anzeigen.
Ich bin auf die folgenden Straßensperren / Fragen gestoßen, die mich davon abhalten, fortzufahren.
- Welcher Mechanismus / welche Funktion steuert die Auswahl dieser Kategorien? (Ihr Code)
- Ist es themenbasiert oder etwas im zugrunde liegenden WordPress-System?
- Welche anderen Informationen wären für diese Änderung relevant?
- Welche Informationen wären in der Firefox Dev Bar hilfreich?
- Wie finde ich "TheirCode", damit ich es durch "MyCode" ersetzen kann?
Die eigentliche Frage hier ist: Wie finde ich "TheirCode", der für diese Auswahl verantwortlich ist, indem ich Tools wie die Firefox Dev Bar und die eigentliche Quelle verwende?
Diese Frage bezieht sich nicht auf WooCommerce (das Plugin). Ich suche nach einer Möglichkeit, eine Funktion in einem von WooCommerce (dem Unternehmen) entworfenen Thema oder in einem anderen Thema zu finden.
OpenSource-Thema: WooCommerce Storefront
Antworten:
Wenn Sie sich auf die HTML-Ausgabe / -Quelle beziehen, klicken Sie beispielsweise auf der offiziellen Storefront- Demo-Site mit der rechten Maustaste auf die Überschrift oder den Abschnitt "Produktkategorien", und Sie können dies leicht überprüfen
section
. Weitere Optionen wie das Symbol "Element auswählen" finden Sie im MDN-Dokument .Die " eigentliche Quelle " (dh der PHP-Code oder die PHP-Funktion, mit der der Abschnitt "Produktkategorien" auf Seiten mithilfe der Vorlage "Homepage" generiert wird) finden Sie in
inc/storefront-template-functions.php
.Dies
storefront_product_categories()
gilt auch für die PHP-Funktion, nach der Sie suchen und die Sie bei Bedarf vollständig überschreiben können (siehe https://docs.woocommerce.com/document/set-up-and-use-a-child-theme/#) Abschnitt 5 ). Wenn Sie die Produktkategorien jedoch nur in zufälliger Sortierung anzeigen möchten, können Sie einfach die verwendenstorefront_product_categories_args
, um die Abfrageargumente zu filtern (was in Ihrem Fall der Fall wäreorderby
):Dieser Filter wird innerhalb der
storefront_product_categories()
Funktion aufgerufen. Dies sind die anderen Filter / Aktionen, die Sie verwenden können:Filter:
storefront_product_categories_shortcode_args
Aktion:
storefront_homepage_before_product_categories
Aktion:
storefront_homepage_after_product_categories_title
Aktion:
storefront_homepage_after_product_categories
Sehen Sie dies, wenn Sie sich der Unterschiede zwischen einer "Aktion" und einem "Filter" nicht sicher sind.
UPDATE: Wie können Sie den Code finden?
Durchsuchen Sie die Storefront-Themendokumentation :
Homepage "Aktionen"
Storefront-Vorlagenfunktionen
Prüfen Sie Storefront Filter Beispiel: Ändern Sie die Anzahl der angezeigten Produkte pro Seite .
Überprüfen (und lesen) Sie zuerst die Dokumentation des Themas.
Wenn keine oder Sie die benötigten Informationen nicht / nicht gefunden haben, versuchen Sie, was @motivast vorgeschlagen hat - Überprüfen Sie die Elemente auf der Seite, suchen Sie den entsprechenden HTML-Code und / oder CSS
class
/id
und durchsuchen Sie die Themendateien danach HTML oder CSSclass
/id
bis Sie die richtige Datei oder den richtigen PHP-Code / gefunden habenfunction
.Auf der Storefront-Demo-Website lautet der HTML-Code des Abschnitts "Produktkategorien" beispielsweise:
Sie können die Themendateien also mit
einem der folgendenSchlüsselwörter durchsuchen : (Ich würde von der spezifischsten oder engsten Übereinstimmung mit dem generierten HTML-Code ausgehen.)<section class="storefront-product-section storefront-product-categories"
class="storefront-product-section storefront-product-categories"
storefront-product-categories
storefront-product-section
Angenommen, Sie wüssten nichts über die Storefront- / Themendokumentation. Wenn Sie die oben genannten Suchvorgänge durchführen, gelangen Sie schließlich zur richtigen Datei oder zum richtigen PHP-Code
function
.Wenn Sie weitere Hilfe benötigen, lassen Sie es mich wissen und ich werde diese Antwort entsprechend aktualisieren.
quelle