Derzeit bin ich in der Alpha-Phase, in der ich ein untergeordnetes Thema für ein Wordpress-Thema bearbeite. Ich habe Programmiererfahrung und einige Erfahrung im Umgang mit WordPress, aber keine direkte Erfahrung beim Bearbeiten von WordPress-Code. Derzeit werden die ersten drei Kategorien in alphabetischer Reihenfolge 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 daran hindern, fortzufahren.
Die eigentliche Frage hier ist: Wie finde ich "TheirCode", der für diese Auswahl mit Tools wie Firefox Dev Bar und der tatsächlichen Quelle verantwortlich ist?
Diese Frage bezieht sich nicht auf WooCommerce (das Plugin). Ich suche nach einer Möglichkeit, eine Funktion in einem Thema zu finden, das WooCommerce (das Unternehmen) entworfen hat, oder in einem beliebigen Thema.
Open Source-Thema: WooCommerce-Schaufenster
Die eigentliche Frage hier ist: Wie finde ich "TheirCode", der für diese Auswahl mit Tools wie Firefox Dev Bar und der tatsächlichen Quelle verantwortlich ist?
Wenn Sie sich auf die HTML-Ausgabe Quelle beziehen, dann zum Beispiel auf das offizielle Storefront-Thema/- Demo-Site , klicken Sie einfach mit der rechten Maustaste auf die Überschrift oder den Abschnitt "Produktkategorien", und dann können Sie es ganz einfach inspiziere das section
. Weitere Optionen wie das Symbol "Element auswählen" finden Sie im MDN-Dokument .
Nun zum " die eigentliche Quelle " (dh dem PHP Code oder der Funktion, die den Abschnitt "Produktkategorien" auf Seiten mit der Vorlage "Homepage" generiert), finden Sie ihn in inc/storefront-template-functions.php
.
if ( ! function_exists( 'storefront_product_categories' ) ) {
/**
* Display Product Categories
* Hooked into the `homepage` action in the homepage template
*
* @since 1.0.0
* @param array $args the product section args.
* @return void
*/
function storefront_product_categories( $args ) {
if ( storefront_is_woocommerce_activated() ) {
$args = apply_filters( 'storefront_product_categories_args', array(
'limit' => 3,
'columns' => 3,
'child_categories' => 0,
'orderby' => 'name',
'title' => __( 'Shop by Category', 'storefront' ),
) );
...
}
}
}
storefront_product_categories()
ist also die PHP Funktion, die Sie suchen und die Sie vollständig überschreiben können, wenn Sie möchten (siehe https://docs.woocommerce.com/document/ set-up-and-use-a-child-theme/# section-5 ). Wenn Sie jedoch nur die Produktkategorien in zufälliger Sortierung anzeigen möchten, können Sie einfach den storefront_product_categories_args
verwenden, um die Abfrageargumente zu filtern (in Ihrem Fall wäre dies orderby
):
add_filter( 'storefront_product_categories_args', function( $args ){
$args['orderby'] = 'Rand';
return $args;
} );
Dieser Filter wird in der Funktion storefront_product_categories()
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.
Durchsuchen Sie die Storefront-Themendokumentation :
Überprüfen Sie Beispiel für Storefront-Filter: Ändern Sie die Anzahl der pro Seite angezeigten Produkte .
Ich suche nach einer Möglichkeit, eine Funktion in einem Thema zu finden, das WooCommerce (das Unternehmen) entworfen hat, oder in einem beliebigen Thema.
Überprüfen Sie zunächst die Dokumentation des Themas (und lesen Sie sie durch).
Wenn keine der benötigten Informationen vorhanden ist oder Sie diese nicht finden konnten, versuchen Sie Folgendes: @motivast Vorgeschlagene - Überprüfen Sie die Elemente auf der Seite, suchen Sie den entsprechenden HTML-Code und/oder CSS class
/id
Durchsuchen Sie die Designdateien nach HTML oder CSS class
/id
, bis Sie die richtige Datei oder PHP Code/function
gefunden haben.
Auf der Storefront-Themendemo-Site lautet der HTML-Code des Abschnitts mit den Produktkategorien beispielsweise:
<section class="storefront-product-section storefront-product-categories" aria-label="Product Categories">
...
</section>
So können Sie die Themendateien mit durchsuchen einer von Diese Keywords: (Ich beginne mit der genauesten oder genauesten Übereinstimmung mit dem generierten HTML.)
<section class="storefront-product-section storefront-product-categories"
class="storefront-product-section storefront-product-categories"
storefront-product-categories
storefront-product-section
Vorausgesetzt, Sie wussten nichts über die Storefront-/Themendokumentation, würden Sie durch Ausführen der obigen Suchvorgänge schließlich zur richtigen Datei oder zum PHP Code/function
gelangen.
Wenn Sie weitere Unterstützung benötigen, lassen Sie es mich wissen und ich werde diese Antwort entsprechend aktualisieren.