WooCommerce hookide kaart – mis hook paneb mida kuhu

Täielik hookide kaart single product ja shop lehtede jaoks. Lisa, eemalda ja muuda WooCommerce elemente ilma core faile puutumata.

WooCommerce on ehitatud hookide süsteemile. Iga element – toote pealkiri, hind, nupp, pilt, kirjeldus – ilmub lehel tänu konkreetsele hookile. Kui tead, mis hook mis asja kuvab, saad kõike lisada, eemaldada ja ümber tõsta ilma core faile puutumata.

Ilma hookide kaardita on WooCommerce muutmine arvamustemäng – proovid, vaatad mis juhtub, tühistad. Hookide kaardiga tead täpselt kuhu minna.


Hookide loogika – action vs filter

Action hook (do_action) – koht koodis, kuhu saad oma funktsiooni lisada. Kuvab sisu, käivitab koodi, lisab elemente.

Filter hook (apply_filters) – muudab olemasolevat väärtust. Muudab teksti, numbrit, massiivi.

// Action – lisa element hookile
add_action( 'woocommerce_before_single_product', 'minu_funktsioon' );

// Filter – muuda olemasolevat väärtust
add_filter( 'woocommerce_product_title', 'minu_pealkiri_filter', 10, 2 );

// Eemalda olemasolev element
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_rating', 10 );

Prioriteet (kolmas parameeter) määrab järjestuse – madalam number käivitub varem. Vaikimisi on 10.


Single Product leht – hookide kaart

Single product leht on WooCommerce’i kõige hookiderikkam leht. Siin on täielik kaart koos vaikimisi prioriteetidega:

Praktilised näited single product lehel

Eemalda tähthinnang:

remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_rating', 10 );

Eemalda jagamisnupud:

remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_sharing', 50 );

Lisa custom tekst hinna alla (prioriteet 15 – hinna ja excerpti vahele):

add_action( 'woocommerce_single_product_summary', 'minu_tekst_hinna_alla', 15 );
function minu_tekst_hinna_alla() {
    echo '<p class="delivery-info">🚚 Tasuta tarne üle 50€ tellimustel</p>';
}

Lisa custom bänner toote pildi alla:

add_action( 'woocommerce_after_single_product_summary', 'minu_garantii_banner', 5 );
function minu_garantii_banner() {
    echo '<div class="guarantee-banner">✅ 30-päeva tagastusõigus</div>';
}

Muuda “Lisa ostukorvi” nupu teksti:

add_filter( 'woocommerce_product_single_add_to_cart_text', function() {
    return 'Telli kohe';
});

Shop / Archive leht – hookide kaart

Shop leht (ja kategoorialehed) kasutavad archive-product malli.

Praktilised näited shop lehel

Eemalda “Lisa ostukorvi” nupp shop lehelt (ainult pilt + pealkiri + hind):

remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );

Eemalda toote hind shop lehelt:

remove_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_price', 10 );

Lisa toote lühikirjeldus shop lehel (pilt alla, pealkirja alla):

add_action( 'woocommerce_after_shop_loop_item_title', 'minu_loop_excerpt', 15 );
function minu_loop_excerpt() {
    global $product;
    $excerpt = $product->get_short_description();
    if ( $excerpt ) {
        echo '<p class="loop-excerpt">' . wp_trim_words( $excerpt, 15 ) . '</p>';
    }
}

Lisa “Uus!” märgis uutele toodetele:

add_action( 'woocommerce_before_shop_loop_item_title', 'minu_new_badge', 15 );
function minu_new_badge() {
    global $product;
    $created = strtotime( $product->get_date_created() );
    $days_old = ( time() - $created ) / DAY_IN_SECONDS;
    if ( $days_old < 30 ) {
        echo '<span class="new-badge">Uus!</span>';
    }
}

Kust kood käib

Kõik eelnevad näited käivad child theme’i functions.php faili. Mitte põhiteema functions.php – teema uuendus kirjutab selle üle.

Kui child teemat ei ole, on alternatiiv:

  • Code Snippets plugin – haldad snippette admin paneelis, turvaliselt
  • mu-plugins kaustwp-content/mu-plugins/woocommerce-custom.php – laadib alati, sõltumata aktiivsest teemast

Kuidas leida õige hook

WooCommerce hookide täielik nimekiri on pikk. Kui otsin konkreetset hookki:

1. Vaata WooCommerce allikkoodi – hooks on kommenteeritud otse template failides (woocommerce/templates/ kaustas).

2. Kasuta Query Monitor pluginat – näitab reaalajas, millised hookid igal lehel käivituvad ja mis järjekorras.

3. WooCommerce Visual Hook Guide – oleme teinud eraldi maandumislehe just nende jaoks: https://hundikuu.ee/info/woocommerce-hooks-visual-guide/

Hookide süsteem on WooCommerce’i tugevus – õigesti kasutades ei pea kunagi core faile muutma ja uuendused ei riku kunagi kohandusi.

Seotud postitused

0+
Lõpetatud projekti
0+
Aktiivset partnerit
0%
Rahulolevaid kliente

Miks valida Hundikuu?

Paindlik arendus

Loome nii kiireid standardlahendusi kui täielikke erilahendusi. Soovid kiirelt valmisdisainile veebilehte või hoopis API integratsioone ja erifunktsioone – me kirjutame koodi, mis töötab.

Kiirus ja SEO

Iga projekt aluseks optimeeritud struktuur ja kiire laadimisaeg. Tehniline SEO pole lisateenus vaid standard – Google ja kasutajad hindavad mõlemat.

Pikaajaline partner

Projekt ei lõpe käivitamisega. Pakume hooldust, jätkuvat tuge ja edasiarendust. Teie veebileht kasvab koos äriga – lisame funktsionaalsust ja optimeerime pidevalt.

Soovid ettevõtet nähtavamaks teha?

Hundikuu muudab teie jalajälje nähtavaks ning aitab sõnumil kaugele kanduda.