Categorie:AlleDesignCodeWordpressWoocommerceHTML/CSS

WordPress beveiliging: zo voorkom je dat je website gehackt wordt

WordPress beveiliging: zo voorkom je dat je website gehackt wordt

Omdat WordPress het populairste CMS ter wereld is, is het ook een geliefd doelwit voor hackers. Goede WordPress beveiliging is daarom essentieel. In dit artikel lees je hoe je je website beschermt.

Houd alles up-to-date

De meeste hacks misbruiken verouderde software. Werk WordPress, je thema en je plugins daarom altijd tijdig bij. Met ons WordPress onderhoud nemen we dit volledig uit handen.

Sterke inloggegevens en back-ups

Gebruik sterke, unieke wachtwoorden en beperk het aantal inlogpogingen. Maak daarnaast regelmatig back-ups, zodat je bij problemen snel kunt herstellen.

Toch gehackt? Wij helpen

Is je website ondanks alles gehackt? Dan verwijderen wij de malware, herstellen we je site en dichten we het beveiligingslek. Lees meer over onze dienst WordPress gehackt of neem direct contact op.

Hoe websites gehackt worden

De meeste hacks zijn niet gericht, maar geautomatiseerd. Bots scannen het internet continu op websites met verouderde software of zwakke wachtwoorden en slaan toe zodra ze een kwetsbaarheid vinden.

Daarom is achterstallig onderhoud de belangrijkste oorzaak van gehackte websites. Een verouderde plugin of een niet bijgewerkte WordPress-versie is vaak al genoeg om binnen te komen.

Gelaagde beveiliging

Goede beveiliging bestaat uit meerdere lagen: tijdige updates, sterke en unieke wachtwoorden, beperkte inlogpogingen, regelmatige back-ups en een betrouwbare hostingomgeving.

Geen enkele maatregel is op zichzelf waterdicht, maar samen verkleinen ze het risico aanzienlijk. En mocht het toch misgaan, dan zorgt een recente back-up ervoor dat je snel weer online bent.

Wil je je website laten beveiligen of herstellen na een hack? Wij helpen je snel en vakkundig weer veilig op weg.

Automatisch een gratis cadeau toevoegen aan je winkelwagen in WooCommerce

Automatisch een gratis cadeau toevoegen aan je winkelwagen in WooCommerce

Wil je klanten belonen met een gratis product zodra ze boven een bepaald bedrag bestellen? Dat kan eenvoudig met een klein stukje code in WooCommerce. In deze blog laten we zien hoe je automatisch een gratis cadeau toevoegt bij een minimale bestelwaarde — zonder extra plugins, én met een duidelijke melding voor de klant.

waarom een gratis cadeau?

Een gratis product is een slimme manier om:

  • het gemiddelde bestelbedrag te verhogen

  • klanten te verrassen en aan je merk te binden

  • je voorraad van kleine producten slim in te zetten

Veel webshops gebruiken dit bijvoorbeeld rond de feestdagen: “Bestel boven de €39 en ontvang gratis kerstsokken!”

hoe werkt het technisch?

Met een korte PHP-snippet in je thema (of een mini-plugin) controleert WooCommerce telkens de inhoud van de winkelwagen. Zodra het subtotaal boven de ingestelde grens komt, voegt het systeem automatisch een bepaald product toe.

Daalt het bedrag weer onder de drempel? Dan wordt het cadeau weer verwijderd.

Daarnaast zorgt de code ervoor dat:

  • de prijs van het cadeau altijd €0 blijft

  • wholesale-klanten of B2B-rollen uitgesloten kunnen worden

  • er geen dubbele exemplaren in het mandje komen

  • het cadeau zichtbaar is met een mooie banner boven de winkelwagen

de code

Plaats onderstaande code in functions.php van je (child)theme of in een eigen plugin:

// gratis cadeau boven €39 – inclusief banner
// volledige code zie: https://hakhak.nl/blog/gratis-product-woocommerce
add_action(‘wp’, ‘czo_handle_free_gift’);
add_action(‘woocommerce_before_calculate_totals’, ‘czo_handle_free_gift’, 1);

function czo_handle_free_gift() {
if ( is_admin() && ! wp_doing_ajax() ) return;
if ( ! ( is_cart() || is_checkout() || wp_doing_ajax() ) ) return;

$user = wp_get_current_user();
$excluded_roles = [ ‘wholesale_customer’, ‘b2b_user’, ‘wholesale_buyer’, ’trade_customer’ ];
if ( array_intersect( $excluded_roles, (array) $user->roles ) ) return;

$product_id = 306139; // ID van het cadeauproduct
$threshold = 39;
$cart = WC()->cart;
if ( ! $cart ) return;

$gift_key = false;
$gift_qty = 0;
$subtotal = 0.0;

foreach ( $cart->get_cart() as $key => $item ) {
if ( (int) $item[‘product_id’] === (int) $product_id ) {
$gift_key = $key;
$gift_qty += (int) $item[‘quantity’];
continue;
}
$subtotal += (float) $item[‘line_subtotal’];
}

if ( $subtotal >= $threshold && ! $gift_key ) {
$product = wc_get_product( $product_id );
$variation_id = 0;
$variation_data = [];
if ( $product && $product->is_type(‘variable’) ) {
$children = $product->get_children();
if ( ! empty( $children ) ) {
$variation_id = reset( $children );
$variation = new WC_Product_Variation( $variation_id );
foreach ( $variation->get_attributes() as $name => $value ) {
$variation_data[ ‘attribute_’ . $name ] = $value;
}
}
}
$cart->add_to_cart( $product_id, 1, $variation_id, $variation_data );
} elseif ( $subtotal < $threshold && $gift_key ) {
$cart->remove_cart_item( $gift_key );
}
}

// prijs altijd €0 houden
add_action(‘woocommerce_before_calculate_totals’, function( $cart ){
if ( ! $cart ) return;
$product_id = 306139;
foreach ( $cart->get_cart() as $item ) {
if ( (int) $item[‘product_id’] === (int) $product_id ) {
$item[‘data’]->set_price( 0 );
}
}
}, 999);

// banner boven winkelwagen/afrekenen
add_action( ‘woocommerce_before_cart’, ‘czo_show_free_gift_banner’ );
add_action( ‘woocommerce_before_checkout_form’, ‘czo_show_free_gift_banner’ );

function czo_show_free_gift_banner() {
$cart = WC()->cart;
if ( ! $cart ) return;

$product_id = 306139;
$threshold = 39;
$subtotal = $cart->get_subtotal();
$has_gift = false;

foreach ( $cart->get_cart() as $item ) {
if ( (int) $item[‘product_id’] === (int) $product_id ) {
$has_gift = true;
break;
}
}

if ( $has_gift ) {
echo ‘<div style=”background:#f6fff4;border:1px solid #c8e6c9;padding:12px 16px;margin-bottom:16px;border-radius:6px;color:#2e7d32;text-align:center;”>
Gratis cadeau toegevoegd aan je winkelwagen!</div>’;
} else {
$remaining = max( 0, $threshold – $subtotal );
echo ‘<div style=”background:#fff8e1;border:1px solid #ffe082;padding:12px 16px;margin-bottom:16px;border-radius:6px;color:#ff6f00;text-align:center;”>
⚠️ Nog €’ . wc_price( $remaining ) . ‘ bestellen voor een gratis cadeau!</div>’;
}
}

Let op: vervang 306139 door het product-ID van jouw cadeauartikel.
Zet dat product op “zichtbaar”, op voorraad en met een prijs van €0.

resultaat

  • Onder €39: een gele melding met het resterende bedrag

  • Boven €39: een groene banner met “Gratis cadeau toegevoegd aan je winkelwagen!”

  • Het cadeau verdwijnt automatisch zodra het totaal weer onder de drempel komt

  • Wholesale-klanten worden netjes uitgesloten

conclusie

Met een paar regels code kun je WooCommerce veel persoonlijker maken. Geen dure plugin, geen ingewikkelde instellingen — gewoon een klein cadeautje dat automatisch meebeweegt met de winkelwagen.

Een subtiele, maar effectieve manier om conversie én klanttevredenheid te verhogen


meer slimme WooCommerce-tips?

Bij HakHak delen we regelmatig korte, praktische oplossingen voor WordPress- en WooCommerce-sites.
Volg onze blog of schrijf je in voor de nieuwsbrief — dan mis je geen enkel scriptje, optimalisatie-tip of performance-hack.

Datalayers in WordPress en WooCommerce: eenvoudiger dan je denkt

Steeds meer marketingbureaus vragen website-eigenaren om een datalayer goed in te richten. Dat klinkt simpel, maar zodra je ermee aan de slag gaat, merk je dat het vaak ingewikkelder is dan gedacht. Veel plugins bieden maar beperkte mogelijkheden en richten zich alleen op de standaard e-commerce gebeurtenissen, zoals het bekijken van een product of het afrekenen.

Wil je méér inzicht in wat bezoekers op je website doen? Dan loop je al snel tegen beperkingen aan. Denk bijvoorbeeld aan het meten van klikken op knoppen, downloads van bestanden of het openen van een menu. Precies die acties die jouw marketingbureau vaak wél wil zien.

Lees verder.. “Datalayers in WordPress en WooCommerce: eenvoudiger dan je denkt”

Bouw je website in minuten met de nieuwe AI Website Builder van WordPress.com

AI doet het werk voor jou

WordPress.com komt met iets nieuws: een AI Website Builder waarmee je in een paar minuten een complete website kunt laten maken. De tool bedenkt zelf de lay-out, schrijft teksten en voegt afbeeldingen toe. Handig voor iedereen die snel online wil, zonder zelf te hoeven puzzelen met thema’s en instellingen.

Vertel de chatbot wat je wilt

Het werkt eigenlijk heel simpel. Je vertelt een chatbot wat voor soort website je nodig hebt – bijvoorbeeld een portfolio, blog of zakelijke site – en hoe je wilt dat deze eruitziet. Denk aan kleuren, stijlen of de vormgeving van de header. Hoe specifieker je bent, hoe beter het eindresultaat. Daarna kun je de website zelf aanpassen, of gewoon de chatbot vragen om wijzigingen door te voeren.

Snel starten, laagdrempelig publiceren

Voor nu werkt de AI Website Builder alleen bij het starten van een nieuwe site. Uitproberen kan gratis met een WordPress.com-account, maar zodra je de site live wilt zetten, heb je een betaald hostingpakket nodig. Dat begint vanaf vier euro per maand. Zo maakt WordPress.com het wel erg makkelijk om binnen no-time een eigen plek op het web te hebben.