WooCommerce ‘Toevoegen aan winkelwagen’ tekst wijzigen

Gebruikers van WooCommerce weten dat de knop waarmee bezoekers een product kunnen toevoegen in het Engels standaard de tekst ‘Add to cart‘ bevat. Als we dit vertalen naar het Nederlands wordt dit ‘Toevoegen aan winkelwagen‘. Sommige mensen zijn geneigd om dit vertalen naar een kortere variant, bijvoorbeeld ‘Toevoegen’. Ik vind echter dat je geen informatie moet weglaten binnen een vertaling. Daarom hanteren we in de ‘WooCommerce (nl)‘ plugin de volledige vertaling.

Doordat de Nederlandse volledig vertaling echter vrij lang is in vergelijking met de Engelse tekst komt dit echter niet altijd mooi uit binnen WordPress/WooCommerce thema’s.

Daarom ging ik op zoek naar een methode waarmee we de tekst eenvoudig kunnen aanpassen. Gelukkig past WooCommerce een filter (‘add_to_cart_text’) toe op de betreffende tekst waarmee we de tekst eenvoudig kunnen aanpassen. Met onderstaand voorbeeld is daardoor de tekst te wijzigen naar een korte variant, bijvoorbeeld: ‘Add’.

function prefix_add_to_cart_text( $text ) {
	$text = __( 'Add', 'text_domain' );

	return $text;
}

add_filter( 'add_to_cart_text', 'prefix_add_to_cart_text' );

Update: Gebruik je WooCommerce 2.1 of hoger dan werkt bovenstaande filter niet meer, zie voor een nieuwe oplossing het bericht: “WooCommerce 2.1 ‘Toevoegen aan winkelwagen’ tekst wijzigen“.

Bovenstaande code kan toegevoegd worden aan het WordPress functies thema bestand (functions.php). Vaak kan de code zonder problemen aan het eind van dit bestand toegevoegd worden. Als je niet werkt met een maatwerk thema dan kan het overigens handig zijn om deze toevoeging binnen een child thema of plugin te definiëren. Op die manier kun je zonder problemen je thema blijven bijwerken.

Mocht je zelf ook tegen vergelijkbare problemen aanlopen en op zoek zijn naar een oplossing dan kun je altijd even contact met me opnemen.

31 gedachten over “WooCommerce ‘Toevoegen aan winkelwagen’ tekst wijzigen

  1. Weet je toevallig ook een oplossing voor de buttons van kopen en afrekenen, ivm offerte aanvraag..

    Bij voorbaat dank voor de reactie en bedankt voor de handige tip!…

    Mvg,
    Leroy

    1. Nee, helaas niet, ik ben ook geen voorstander van dergelijke wijzigingen. WooCommerce noemt het niet voor niets ‘Checkout’, je kunt het tekstueel wel wijzigen, maar functioneel zal er niks veranderen. De tekst ‘Checkout’ (in het Nederlands ‘Afrekenen’) komt ook op verschillende plaatsen terug, zie hiervoor ook:

      http://glotpress.pronamic.nl/projects/woocommerce/1.6.5.2-formal/nl/nl_NL?filtersterm=afrekenen&filtersuser_login=&filtersstatus=current_or_waiting_or_fuzzy_or_untranslated&filter=Filter&sortby=priority&sorthow=desc

        1. Dag Leroy,

          Ik heb exact dezelfde vraag, die je een jaar geleden hier hebt gesteld, maar het antwoord helaas nog niet gevonden … Mocht je me kunnen helpen hiermee, hoor het graag.

          met vriendelijke groet,
          Inge

  2. Ik heb een woocommerce.funtions.php bestand, maar niets werkt????

    Ik heb een crash gehad met mijn woocommerce plugin , alles verwijderd en opnieuw geïnstalleerd, maar nu krijg ik hetzelfde als uw voorbeeld. Terwijl ik mij herriner dat ik een kopen button had???

    Maar waar moet ik nu precies bovenstaande code invullen? Aan het begin of eind of ergens tussenin??

  3. Hoi,

    Als eerste bedankt voor de tip.

    Er is me alleen 1 ding niet helemaal duidelijk.

    Moet het in de woocommerce functions.php of de wordpress functions.php aangepast worden?

    1. Ik zou persoonlijk nooit bestanden aanpassen binnen plugins en thema’s die ik niet zelf in beheer heb. Als je een maatwerk thema hebt kun je de code plaatsen in functions.php bestand van je thema. Als je gebruik maakt van een thema van een andere partij dan kun je een maatwerk plugin inzetten of een childtheme inzetten.

      1. Beste Remco,

        Na een recente update heb ik ook over elkaar heenlopende ‘toevoegen aan winkelwagen’ knoppen. ik krijg het echter, ook met je heldere uitleg niet voor elkaar. Als ik je code invoer in het thema, zie ik geen verandering, daarnaast zie ik in het woocommerce meerdere functions.php mappen. kan je mij wellicht vertellen welke ik daarbinnen moet hebben?

  4. via een plugin: codestyling-localization kun je de *.po en *.mo bestanden vertalen. Dit maakt eea een stuk makkelijker en weet je precies wat je binnen woocommerce maar ook andere progamma`s kunt veranderen.

    succes

    1. Dit is inderdaad ook een krachtige plugin waarmee je vertalingen eenvoudig kunt beheren. Het geeft WordPress gebruikers misschien ook wel wat te veel vrijheid om vertalingen allemaal naar eigen smaak aan te passen. Ik kom wel eens WordPress websites tegen waarin allerlei vertalingen compleet naar eigen smaak zijn ingevuld. Gebruikers vergeten dan soms dat ze de tekst moeten vertalen in plaats van een compleet nieuwe tekst in te voeren. Als de zin vervolgens in de verkeerde context getoond wordt kan dat erg slordig zijn.

  5. Is er iemand die veel eraring heeft met woocommerce, ik heb een vraag over hoe ik een bij een product. Diverse keuzes kan plaatsen. Zodat als men een bestelling plaats , men de naam, nummer moet vermelden voordat het in de winkelwagen gaat. Mail mij dan stuur ik een voorbeeld.

  6. “Ik vind echter dat je geen informatie moet weglaten binnen een vertaling. Daarom hanteren we in de ‘WooCommerce (nl)‘ plugin de volledige vertaling.”

    Dit gaat er dus vanuit dat de teksten die Woocommerce aanleverd niet voor discussie vatbaar zouden zijn. Maar die teksten zijn de communicatie voor de site. “Add to cart” is net zo valide als “Put in basket”. De tone-of-voice van de site bepaalt uiteindelijk wat er in de knoppen en andere uitingen moet komen te staan. Niet de ontwikkelaars.
    Dat je letterlijk de vertalingen overneemt. Alas. De grote fout ligt bij woocommerce die een flexibeler taalplatform moet bieden. In het engels is er al geen flexibiliteit, laat staan in de vertalingen.

    .mo en .po files zijn niet open genoeg. ‘ Zou beter zijn om op de back-end de teksten naar believen te kunnen invoeren. Foutje van Woo en dan hebben we het nog niet eens over de CSS’en die mee geleverd worden. Nee, ik wil geen groene streepjes.

    Verder ben ik heel tevreden

  7. Ik ben al heel blij dat ik een oplossing heb gevonden voor het ‘add to chart’ probleem! Dank je daarvoor! Maar ik zou ook zo graag het woord ‘sale’ willen vervangen bij actieproducten omdat dat woord eigenlijk de lading niet dekt voor de producten die er op de site verkocht worden. Ik zie daar in plaats van ‘sale’ liever ‘actie’ ofzoiets….
    Heb je daar een oplossing voor?

  8. Ik heb de code proberen toe te voegen in mijn functions.php (onderaan, bovenaan, tussendoor) en dat heeft niet gewerkt. Ik heb ook geprobeerd het via lokalisatie van me PO. MO. maar hier kan ik add to cart niet vinden. Doe ik iets verkeerd misschien?

  9. Ik heb ook iets raars, ik kan na de laatste update niet meer de tekst van de button “Toevoegen aan winkelwagen” aanpassen. Vind in de lokalisatie plugin ook niet meer de vertaling terug van de buttons.

    Heel apart dat ik dit nu dus niet meer kan vertalen!
    Nog meer mensen die dat hebben?

  10. Hallo weet iemand hoe ik in woocommerce de tekst in de winkelwagen kan verwijderen. de tekst is:

    Opmerking: Verzending en belastingen zijn ingeschat en worden bijgewerkt bij het afrekenen op basis van uw factuur- en verzendgegevens.

  11. @ Petra:

    Als je het bestand cart-totals.php opent vind je die tekst bijna onder aan in de code

    printf( __( ‘hier kan je alles plaatsen wat je wilt, of gewoon leeg laten’, ‘woocommerce’ ), $estimated_text );

    Je vind dat bestand in je map op je server in :
    /wp-content/plugins/woocommerce/templates/cart/totals.php

    Zet dat bestand in de map: jouwtheme/woocommerce/cart/totals.php ander wordt deze weer overschreven met een update.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

De volgende HTML-tags en -attributen zijn toegestaan: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>