Aangemaakte reacties

8 reacties aan het bekijken - 1 tot 8 (van in totaal 8)
  • Thread starter Bouke Lourens

    (@dewebdeveloper)

    Guido, nogmaals super bedankt voor het meedenken! Hier moet ik verder wel uitkomen. Ik zal daarom dit topic sluiten.

    Fijn weekend gewenst!

    Thread starter Bouke Lourens

    (@dewebdeveloper)

    Hi Guido,

    Nogmaals bedankt voor het meedenken! Zojuist heb ik de code snippet doet wat het moet doen.

    Sowieso raadzaam om labelveld alleen te tonen bij de juiste producten. Ook omdat hij verplicht ingevuld moet worden.

    Heb je ook enig idee wat een oplossing kan zijn om dit invoerveld enkel weer te geven bij een variabel label, als de klant zeg maar voor ‘Graveren’ kiest. Het product is namelijk ook zonder te graveren te bestellen.

    Bouke

    Thread starter Bouke Lourens

    (@dewebdeveloper)

    Hi Guido!

    Thanks! Door het script aan te passen naar wat u voorstelde werkt het optellen nu goed.

    Hier los van, telt hij nu ook een fee op van de producten waarbij niets is opgegeven bij het label. Ik vermoed dat ik dit kan afvangen door het script pas in te laden vanaf het moment dat een klant kiest voor een product waarbij hij het label kan invullen. Dit zou ik dan kunnen instellen in de optie “Variaties” > “Product eigenschap kiezen voor product waarbij de klant dus het label in kan vullen” > En hier vervolgens bij “Beschrijving” het script neer te zetten. Met beschrijving bedoel ik de volgende class “.woocommerce-variation-description”.

    Echter wanneer ik hier een script in wil plakken, wordt dit als platte tekst weergegeven. Is er een mogelijkheid om in de optie “Beschrijving” een mogelijkheid tot het toevoegen van een script?

    Het is mij wel gelukt om bijvoorbeeld een extra invoerveld bij het variabele product in te stellen. Hiervoor gebruik ik het volgende script, en heb ik in mijn functions.php geplaatst:

    // -----------------------------------------
    // 1. Add custom field input @ Product Data > Variations > Single Variation
     
    add_action( 'woocommerce_variation_options_pricing', 'bbloomer_add_custom_field_to_variations', 10, 3 );
     
    function bbloomer_add_custom_field_to_variations( $loop, $variation_data, $variation ) {
       woocommerce_wp_text_input( array(
    'id' => 'custom_field[' . $loop . ']',
    'class' => 'short',
    'label' => __( 'Custom Field', 'woocommerce' ),
    'value' => get_post_meta( $variation->ID, 'custom_field', true )
       ) );
    }
     
    // -----------------------------------------
    // 2. Save custom field on product variation save
     
    add_action( 'woocommerce_save_product_variation', 'bbloomer_save_custom_field_variations', 10, 2 );
     
    function bbloomer_save_custom_field_variations( $variation_id, $i ) {
       $custom_field = $_POST['custom_field'][$i];
       if ( isset( $custom_field ) ) update_post_meta( $variation_id, 'custom_field', esc_attr( $custom_field ) );
    }
     
    // -----------------------------------------
    // 3. Store custom field value into variation data
     
    add_filter( 'woocommerce_available_variation', 'bbloomer_add_custom_field_variation_data' );
     
    function bbloomer_add_custom_field_variation_data( $variations ) {
       $variations['custom_field'] = '<div class="woocommerce_custom_field">Custom Field: <span>' . get_post_meta( $variations[ 'variation_id' ], 'custom_field', true ) . '</span></div>';
       return $variations;
    }

    En tot slot dit in het bestand “variation.php” dat staat in de map “woocommerce/single-product/add-to-cart/variation.php”:

    <script type="text/template" id="tmpl-variation-template">
    <div class="woocommerce-variation-description">
    <code>data.variation.variation_description</code>
    </div>
     
    <div class="woocommerce-variation-price">
    <code>data.variation.price_html</code>
    </div>
     
    <div class="woocommerce-variation-custom_field">
    <code>data.variation.custom_field</code>
    </div>
     
    <div class="woocommerce-variation-availability">
    <code>data.variation.availability_html</code>
    </div>
    </script>

    Ik ben benieuwd of dit makkelijk op te lossen is. Nogmaals bedankt voor het vorig antwoord! Hier ben ik al goed mee op weg geholpen!

    P.S. Hier nog een linkje naar de testomgeving zelf

    • Deze reactie is gewijzigd 6 maanden, 3 weken geleden door Bouke Lourens.
    • Deze reactie is gewijzigd 6 maanden, 3 weken geleden door Bouke Lourens. Reden: Moest ook nog een linkje toevoegen

    Maar wat was nou de oplossing? Ik loop tegen hetzelfde probleem aan.

    Als je de melding: “error establishing a database connection” wil dit zeggen dat hij geen database verbinding kan leggen. Vaak heeft dit te maken met een foutief geconfigureerd wp-config.php bestand. In dit bestand tref je de databasenaam, databasegebruiker, databasewachtwoord en database host. Deze gegevens moeten overeen komen met de database gegevens vanuit je hosting. Deze database gegevens kun je controleren door in te loggen op je control panel bij je hosting en te gaan naar database gegevens. Het wp-config.php bestandje tref je aan in de hoofdfolder van je WordPress installatie.

    Thread starter Bouke Lourens

    (@dewebdeveloper)

    Bedankt! Dit is precies wat ik zocht.

    Thread starter Bouke Lourens

    (@dewebdeveloper)

    Guido! Bedankt voor de informatie over de V3 badge.

    Het probleem met spam was meteen opgelost na goede integratie Contact form 7 & Google reCAPTCHA.

    Bedankt voor het meedenken!

    Thread starter Bouke Lourens

    (@dewebdeveloper)

    Nog een andere vraag, mag je dat reCAPTCHA icoon dat rechts onder in beeld staat, verbergen? Ik kan het verbergen met een regeltje CSS

    Thread starter Bouke Lourens

    (@dewebdeveloper)

    Bedankt voor je bericht Guido! Akismet heb ik ook aan gedacht, echter moet je hier voor betalen terwijl ik weet dat er ook gratis oplossingen moeten zijn.

    Wat ik nu aan het testen ben, op een test domein waar ik al het contact formulier uit heb moeten schakelen omdat het spammen dusdanig erg was, dat ik er door me hosting provider op gewezen ben dit te stoppen, heb ik ontdekt dat je via integratie met Google reCAPTCHA rechtstreeks in Contact Form 7 kan koppelen. Tot nu toe nog geen spam ontvangen. Op hoop van zegen dat dit nu wel gaat werken.

    Thanks voor de tips, mocht dit weer geen soelas bieden, dan overweeg ik Akismet te gebruiken icm contact form 7

8 reacties aan het bekijken - 1 tot 8 (van in totaal 8)