Skip Navigation

This is the technical support forum for WPML - the multilingual WordPress plugin.

Everyone can read, but only WPML clients can post here. WPML team is replying on the forum 6 days per week, 22 hours per day.

WordPress 6.7 has introduced a new issue that impact translations, please update WooCommerce and WPML to the latest versions before you report issues. More about this here - https://wpml.org/errata/php-error-wp-6-7-notice-function-_load_textdomain_just_in_time-was-called/
Sun Mon Tue Wed Thu Fri Sat
- 12:00 – 16:00 10:00 – 14:00 10:00 – 14:00 9:00 – 13:00 9:00 – 13:00 -
- 17:00 – 21:00 15:00 – 19:00 15:00 – 19:00 14:00 – 18:00 14:00 – 18:00 -

Supporter timezone: Europe/Bucharest (GMT+02:00)

Tagged: 

This topic contains 22 replies, has 2 voices.

Last updated by Mihai Apetrei 5 months, 2 weeks ago.

Assisted by: Mihai Apetrei.

Author Posts
April 21, 2024 at 4:20 pm #15547537

gerritG-2

*** Critical - production site ***

Dear support!

Analysis of test bike spec DE/NL translations: when selecting a Spec
hidden link (EN -> OK)
hidden link (DE -> ERROR)
hidden link (DE -> ERROR)
(newly edited bike)
Front-end JavaScript error:
jQuery.Deferred exception: this.price_data is undefined;
related to woocommerce-composite-products plugin. (for translations)
comparing EN.html vs DE.html sources. Noticed:
DE:"Drive Technology Rohler Ti BLT Wachtberg" has 'invalid-product' as
'product_type' and 'Dieser Artikel kann derzeit nicht gekauft werden'
EN: OK; with everything loaded
same for "Extras Rohler Ti BLT Wachtberg".
"Performance Parts Rohler Ti BLT Wachtberg" don't have error but are empty.

"Drive Technology Rohler Ti BLT Wachtberg": WPML Translation Editor does not
store translations in NL/DE, even when unsetting and setting 'Translation
Complete'. WordPress Editor loses translations for
bundled products at random for NL. Keeps them for DE.

"Drive Technology Rohler Ti BLT Wachtberg" is a 'Bundled Product' within
a 'Composite product' conditionally shown when the 'Spec' is selected.

Example where things work correctly:
hidden link

Thanks for your help,

Dennis Gerrit

April 21, 2024 at 9:25 pm #15547749

Mihai Apetrei
Supporter

Languages: English (English )

Timezone: Europe/Bucharest (GMT+02:00)

Hi Dennis.

Thank you for reporting this one, too.

I will escalate this to our devs like last time.

I will get back to you when I have updates.

Mihai

April 23, 2024 at 7:30 pm #15557892

Mihai Apetrei
Supporter

Languages: English (English )

Timezone: Europe/Bucharest (GMT+02:00)

Hi there. I'm back.

Can you also please share a Duplicator package or a full website backup that I can share with my colleagues?

I will be waiting for your response.

April 24, 2024 at 11:07 am #15560299

gerritG-2

Hi Mihai!

That would be over 3GB, and as such, maybe a bit difficult.

Would it be OK if we created a login for you. We need the IP address(es) of the person logging in.

Thanks
D G

April 24, 2024 at 1:59 pm #15561065

Mihai Apetrei
Supporter

Languages: English (English )

Timezone: Europe/Bucharest (GMT+02:00)

Hi there.

I think that my colleagues might also be interested in testing this on a local environment.

So, if you can share a full backup or if you can share access and give us approval to install the "Duplicator" plugin and create a full backup, both would be good options.

Please let me know what would work best for you.

April 24, 2024 at 4:35 pm #15561942

gerritG-2

Hi Mihai!

That would be over 3GB, and as such, maybe a bit difficult....

Would it be OK if we created a login for you. We need the IP address(es) of the person logging in.

Thanks
D G

April 24, 2024 at 10:55 pm #15562862

Mihai Apetrei
Supporter

Languages: English (English )

Timezone: Europe/Bucharest (GMT+02:00)

Hello,

I have received the same response from you before in this thread: https://wpml.org/forums/topic/bundled-products-dont-translate-from-en-to-de-and-nl/#post-15560299

I responded to that message here: https://wpml.org/forums/topic/bundled-products-dont-translate-from-en-to-de-and-nl/#post-15561065

I am not sure if you saw my latest reply.

If you have seen it and if by your repeated response you mean that all you can do is share site access (without being able to share a backup or give an approval for creating a backup from our side), even though this may not be sufficient for our development team during the debugging process (and I am also uncertain about how IP-based access will function, as most IPs are dynamic and change frequently nowadays), we can definitely proceed in that manner if that's what you prefer.

Please inform me of your decision.

Thank you!

April 25, 2024 at 8:45 am #15564192

gerritG-2

Yes please, you can give the current IPs of the developers: we can change them

Login: 'Manos Psychogyiopoulos'

hidden link
(Page with stuck bundled product)

How can we give you the password?

Thanks
D G

April 25, 2024 at 10:32 am #15564882

Mihai Apetrei
Supporter

Languages: English (English )

Timezone: Europe/Bucharest (GMT+02:00)

Hi there.

You can share it in the private fields I am enabling below.

April 25, 2024 at 12:46 pm #15565642

gerritG-2

Ready.

April 26, 2024 at 9:34 am #15569672

Mihai Apetrei
Supporter

Languages: English (English )

Timezone: Europe/Bucharest (GMT+02:00)

Thank you for the confirmation.

My colleagues are already investigating on this.

I will get back to you when I have updates.

May 2, 2024 at 5:50 pm #15588713

gerritG-2

Dear Support,

Any updates? Status? Our bike catalog needs to be updated urgently.

Thanks so kindly,

D G

May 4, 2024 at 11:01 pm #15593823

Mihai Apetrei
Supporter

Languages: English (English )

Timezone: Europe/Bucharest (GMT+02:00)

Hi there.

There have been all kind of tests done on this internal escalated ticket and constant progress but I waited until the team got to a conclusion.

We were able to see that the product is a composite product and not a bundled product.

It is a very complicated issue. The composite product contains bundled products and they don't have price data and we load the invalid composite template for the translated products.

Our team tried various things, including duplicating the product 1:1 from the original and disabling all WPML plugins, yet the error still persists.

In the end, I think that we located the issue in the product with ID 12661.

The original - ID 12660 is a bundled product with some items. However the translated ID 12661 does not have any items in the bundle. Hence it is deemed as not purchaseable, hence breaks the composite/bundled product logic.

Our team could also see that the issue with the product that is missing its bundled product is because it is using a custom table - wp_woocommerce_bundled_items

We fixed that by running:


INSERT INTO `wp_woocommerce_bundled_items` (`product_id`, `bundle_id`, `menu_order`) VALUES
(	140,	12661,	0),
(	142,	12661,	1),
(	9601,	12661,	2),
(	12024,	12661,	3),
(	10776,	12661,	4);

which basically added to the product ID 12661 the appropriate bundled product.

However, we were still getting:


This item cannot be purchased at the moment.<span class="invalid_product_note">Please make sure that you have assigned a price to this product. WooCommerce does not allow products with a blank price to be purchased. This note cannot be viewed by customers.</span><br />
<b>Warning</b>:  Undefined variable $is_block_editor_request in <b>C:\laragon\www\bund\wp-content\plugins\woocommerce-composite-products\templates\composited-product\invalid-product.php</b> on line <b>36</b><br />

And there is discrepancy in the product values - mainly in the keys _wc_sw_max_regular_price and _wc_sw_max_price which gets updated to 0 and blank instead of 1185 and this essential makes the product not purchaseable.

The price was set correctly once the product price (Regular price) was different from not set and 0 -> in /wp-admin/post.php?post=12660&action=edit&lang=en (attaching screenshot).

Another thing that we had to fix:

INSERT INTO `wp_woocommerce_bundled_items` ( `product_id`, `bundle_id`, `menu_order`) VALUES
(	238,	12451,	0),
(	10797,	12451,	1),
(	10741,	12451,	2),
(	10730,	12451,	3),
(	11989,	12451,	4),
(	9604,	12451,	5),
(	9610,	12451,	6);

Probably not the best workaround for this - because the wp_woocommerce_bundled_items_meta is missing, but still better than not having it.

Additional fixes in wp-content/plugins/woocommerce-product-bundles/assets/js/frontend/add-to-cart-bundle.js
Replace:


this.price_data.suffix_exists              = wc_bundle_params.price_display_suffix !== '';

with:


if (this.price_data) {
    this.price_data.suffix_exists = wc_bundle_params.price_display_suffix !== '';
} else {
    console.warn("price_data is undefined. Initializing default.");
    this.price_data = { suffix_exists: false }; // Provide some default initialization
}

It is very odd because the new bundled product does not behave in the same way.
We can summarize that perhaps the bundled products were not translated properly to start with.

Perhaps the best workaround and fix is to re-create the product.

Also, maybe the product can be fixed if you re-translate the products and then the bundles and then the composite product.

If there is still the notice about suffix existing, we recommend to use the last workaround from above.

I hope that you will find all this information helpful.

Also, sorry for the long message but I thought it would be insightful 🙂

Mihai

image.png
May 7, 2024 at 9:13 am #15600565

gerritG-2

Hi Mihai,

We will get the team to try to re-enter these products and see what happens..

We don't like to change your code if we don't have to; and, we would prefer things to work properly as they did in the past. We certainly don't want to change any SQL of WooCommerce.

Please refer to the sub-structures of:

hidden link

where things appear to work properly, and, maybe you can figure out what the differences are.

Thanks

D G

May 7, 2024 at 4:59 pm #15603276

gerritG-2

Hi Mihai and colleagues,

We re-created the 3 bundled products:

- Drive Technology Rohler Ti BLT Wachtberg

- "Extras Rohler Ti BLT Wachtberg".

- "Performance Parts Rohler Ti BLT Wachtberg”

The website still fails and the fields go empty every time after filling. Screenshot attached.

Please fix. Thanks.

D G

Screenshot 2024-05-07 at 18.54.10.png