De zichtbaarheid van artikelen binnen een variant wijzigen
Bij gebruik van de functie Grouped Products in onze WooCommerce-integratie worden onderliggende artikelen (de afzonderlijke variaties) doorgaans uitgesloten van de hoofdcatalogus om rommel te voorkomen. Het kan echter zijn dat je dit gedrag wilt aanpassen.
Standaardgedrag
Standaard zet StoreLinkr de zichtbaarheid van onderliggende artikelen op search. Dit betekent dat ze:
- Niet verschijnen op categoriepagina's.
- Wel verschijnen in zoekresultaten.
- Wel verschijnen als gekoppelde items binnen het Grouped Product.
Zichtbaarheid aanpassen via filters
Ontwikkelaars kunnen het filter storelinkr_single_visibility gebruiken om deze status programmatisch te wijzigen. Dit is handig als je bepaalde items volledig verborgen of juist volledig zichtbaar wilt houden in de catalogus, op basis van specifieke voorwaarden (bijvoorbeeld voorraadniveau of categorie).
Voorbeeldcode
Voeg dit toe aan je functions.php:
add_filter('storelinkr_single_visibility', 'custom_storelinkr_visibility', 10, 2);
/**
* Adjust product visibility based on conditions.
*
* @param string $visibility Current visibility ('visible', 'catalog', 'search', or 'hidden').
* @param int $product_id The WordPress Product ID.
* @return string The modified visibility.
*/
function custom_storelinkr_visibility($visibility, $product_id) {
// Example: Hide a specific product completely
if ($product_id == 123) {
return 'hidden';
}
// Example: Make everything fully visible in the catalog
// return 'visible';
return $visibility;
}
Ondersteunde zichtbaarheidswaarden
Deze komen overeen met de standaard WooCommerce-zichtbaarheidsstatussen:
visible: Overal zichtbaar (catalogus en zoekresultaten).catalog: Alleen zichtbaar in de catalogus-/categoriepagina's.search: Alleen zichtbaar in zoekresultaten (StoreLinkr-standaard voor onderliggende producten).hidden: Volledig verborgen op de frontend.
Wijzigingen testen
Zichtbaarheidswijzigingen worden toegepast tijdens het synchronisatieproces. Als je je code bijwerkt:
- Wacht op de volgende geplande synchronisatie.
- OF start een handmatige synchronisatie voor de specifieke variant vanuit het StoreLinkr Portal om de wijzigingen direct te zien.