FacetWP sorteeropties aanpassen

FacetWP is een geavanceerde filtering-plugin die het sorteren en filteren van producten op een WooCommerce-site vereenvoudigt. Het is mogelijk om de sorteeropties aan te passen om beter aan te sluiten bij de behoeften van de website en de verwachtingen van de gebruikers.

Dit artikel illustreert hoe je aangepaste sorteeropties kunt implementeren in FacetWP voor WooCommerce, met behulp van specifieke codes die toegevoegd kunnen worden aan de functions.php van het child-thema of via een plug-in zoals Code Snippets.

Stap 1: Code toevoegen aan functions.php of een plugin

Voor het aanpassen van de sorteeropties, moet je de volgende code toe te voegen aan het functions.php bestand van het child-thema.

FacetWP sorterenAls alternatief kun je een WordPress plug-in zoals Code Snippets gebruiken, die het mogelijk maakt om stukken code toe te voegen zonder direct de thema-bestanden te bewerken.

// change facetwp sort by options
add_filter( 'facetwp_sort_options', function( $options, $params ) {
unset( $options['date_asc'] );
unset( $options['title_asc'] );
unset( $options['title_desc'] );
unset( $options['date_desc'] );
$options['default']['label'] = 'Populariteit';

$options['price_asc'] = [
'label' => 'Prijs laag - hoog',
'query_args' => [
'orderby' => 'meta_value_num',
'meta_key' => '_price',
'order' => 'ASC',
]
];
$options['price_desc'] = [
'label' => 'Prijs hoog - laag',
'query_args' => [
'orderby' => 'meta_value_num',
'meta_key' => '_price',
'order' => 'DESC',
]
];

$options['popularity_new'] = [
'label' => 'Populariteit',
'query_args' => [
'orderby' => 'post_views',
'order' => 'DESC',
]
];

return$options;
}, 10, 2 );

Stap 2: Wat doet de code?

De bovenstaande code gebruikt een filter, facetwp_sort_options, waarmee je de standaard sorteeropties van FacetWP kunt aanpassen.

  1. Opties verwijderen:
    • De unset functies worden gebruikt om de standaardopties zoals datum en titel te verwijderen.
  2. Standaardoptie instellen:
    • De default optie wordt ingesteld op ‘Populariteit’.
  3. Prijs sorteeropties toevoegen:
    • Twee nieuwe sorteeropties worden toegevoegd voor het sorteren op prijs: ‘Prijs laag – hoog’ en ‘Prijs hoog – laag’.
  4. Populariteit sorteeroptie toevoegen:
    • Een nieuwe sorteeroptie wordt toegevoegd om te sorteren op populariteit.

Deze PHP-code maakt enkele aanpassingen in de beschikbare sorteeropties in FacetWP. Allereerst worden de standaard sorteeropties zoals date_asc, title_asc, title_desc en date_desc verwijderd met behulp van de unset() functie. Vervolgens worden er nieuwe sorteeropties toegevoegd:

  1. Prijs laag – hoog: Deze optie sorteert de resultaten op prijs van laag naar hoog.
  2. Prijs hoog – laag: Deze optie sorteert de resultaten op prijs van hoog naar laag.
  3. Populariteit: Deze optie sorteert de resultaten op basis van populariteit.

Stap 3: Aanpassingen testen

Na het toevoegen van de code, is het belangrijk om de werking ervan te controleren. Test de nieuwe sorteeropties uitvoerig om er zeker van te zijn dat ze correct functioneren en dat ze de resultaten in de gewenste volgorde weergeven.

Het aanpassen van de FacetWP sorteeropties in WooCommerce kan een effectieve manier zijn om de gebruikerservaring op de WordPress webshop te verbeteren en om de gebruikers meer controle te geven over hoe de producten worden weergegeven.

Door het volgen van de bovenstaande stappen, kun je eenvoudig aangepaste sorteeropties implementeren die beter passen bij de behoeften van de online winkel.

Feedback

Heb je na het lezen van dit artikel nog vragen of zijn er onduidelijkheden? Werkt de code niet op jouw website? Laat het ons weten, dan kunnen wij je misschien verder helpen.

Feedback kennisbankartikel

Naam
Dit veld is bedoeld voor validatiedoeleinden en moet niet worden gewijzigd.

Mis geen WordPress tips meer.

Al 500+ webdesigners en marketeers ontvangen deze nieuwsbrief.

Naam
Dit veld is bedoeld voor validatiedoeleinden en moet niet worden gewijzigd.

Mis nooit meer website tips.

Al 500+ webdesigners en marketeers ontvangen onze nieuwsbrief.

Naam
Dit veld is bedoeld voor validatiedoeleinden en moet niet worden gewijzigd.