Tovább a tartalomhoz

Globális csoportok finomhangolása

Globális csoportok más taxonómiával, gyermekkategóriákkal, közvetlen termékhozzárendeléssel és kizárt termékekkel.

A globális csoportok alapbeállításait a Globális csoportok fejezet írja le. Itt a haladó esetek következnek. A kódrészleteket a sablon functions.php fájljába vagy egy kódrészlet-kezelő bővítménybe másold.

Globális csoport hozzárendelése közvetlenül egy termékhez

Szekció neve “Globális csoport hozzárendelése közvetlenül egy termékhez”

A szabályok mellett (Termék szerint) a globális csoportot a termék szerkesztőjéből is hozzárendelheted:

  1. Nyisd meg a termék szerkesztőjét, és válaszd a Product Add-Ons fület.
  2. A Termékbeállítások részben a Globális csoportok hozzárendelése mezőben válaszd ki a kívánt globális csoportokat.
  3. Mentsd a terméket. A kiválasztott csoportok minden mezője érvényes lesz a termékre.
https://minta-bolt.hu/wp-admin/post.php?post=22&action=edit
A Globális csoportok hozzárendelése mező a terméknél

Címke vagy attribútum a kategória helyett

Szekció neve “Címke vagy attribútum a kategória helyett”

A globális csoportok szabálya alapból a termékkategóriákra épül. Egy kódrészlettel egy adott csoportnál más taxonómiát, például termékattribútumot is használhatsz. A pewc_filter_global_categories_taxonomy szűrő négy paramétert kap (a taxonómia, a csoport azonosítója, a csoport és a szabály). Ha a csoport azonosítója egyezik, add vissza a kívánt taxonómia slugját, különben az eredeti értéket:

function pelda_globalis_taxonomia( $tax, $group_id, $group, $rule ) {
// Az 1234 helyére a csoport azonosítója, a pa_szin helyére a taxonómia slugja kerül.
if ( 1234 == $group_id ) {
return 'pa_szin';
}
return $tax;
}
add_filter( 'pewc_filter_global_categories_taxonomy', 'pelda_globalis_taxonomia', 10, 4 );

A gyermekkategóriák termékei is kapják a csoportot

Szekció neve “A gyermekkategóriák termékei is kapják a csoportot”

Ha egy globális csoport Kategória szerint szabályánál a szülőkategóriát választod, a gyermekkategóriák termékei alapból nem kapják meg a csoportot. A pewc_filter_permitted_cats szűrővel a kiválasztott kategóriák gyermekkategóriái is bekerülhetnek az engedélyezettek közé:

add_filter( 'pewc_filter_permitted_cats', function ( $kategoriak ) {
if ( empty( $kategoriak ) ) {
return $kategoriak;
}
foreach ( $kategoriak as $kategoria_id ) {
$gyerekek = get_term_children( $kategoria_id, 'product_cat' );
if ( ! empty( $gyerekek ) && ! is_wp_error( $gyerekek ) ) {
$kategoriak = array_merge( $kategoriak, $gyerekek );
}
}
return array_unique( $kategoriak );
}, 10, 4 );

Utána a globális csoport szabályánál elég a szülőkategóriát kiválasztani.

Termékek kizárása a globális csoportokból

Szekció neve “Termékek kizárása a globális csoportokból”

Ha bizonyos termékek ne kapjanak globális csoportot (például azért, mert a csoport minden termékre vonatkozik), két szűrőt használj: a pewc_after_verify_all_products a Minden termék esetén szabályt, a pewc_after_pewc_verify_categories_rule a kategóriaszabályt vizsgálja. Mindkettő négy paramétert kap: az eredményt, a termék azonosítóját, a globális csoportot és a szabályt. A kizárt termékeknél false értéket adj vissza:

function pelda_kizart_termekek( $ellenorzott, $termek_id, $csoport, $szabaly ) {
// A kizárt termékek azonosítói.
$kizartak = array( 123, 456 );
if ( in_array( (int) $termek_id, $kizartak, true ) ) {
return false;
}
return $ellenorzott;
}
add_filter( 'pewc_after_verify_all_products', 'pelda_kizart_termekek', 10, 4 );
add_filter( 'pewc_after_pewc_verify_categories_rule', 'pelda_kizart_termekek', 10, 4 );

Cseréld a mintában szereplő azonosítókat a sajátjaidra.

Készült:

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások