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.

Sun Mon Tue Wed Thu Fri Sat
- 9:00 – 13:00 9:00 – 13:00 9:00 – 13:00 9:00 – 13:00 9:00 – 13:00 -
- 14:00 – 18:00 14:00 – 18:00 14:00 – 18:00 14:00 – 18:00 14:00 – 18:00 -

Supporter timezone: America/Los_Angeles (GMT-07:00)

Tagged: 

This topic contains 16 replies, has 4 voices.

Last updated by Bobby 1 week, 1 day ago.

Assisted by: Bobby.

Author Posts
March 26, 2024 at 11:08 am #15450718

artjanv

We have 4000 products that we want to copy to a new language. This feature is available at a single product but we want to do it by bulk. The reason for this if that we have already the translated content that we can import/add after the copy has been made.

Flow:
1. 400 NL products exist
2. Bulk copy product to EN
3. Bulk disable the copy connection so that these can translate/edit seperate
4. Import EN content ( WPAI)

March 26, 2024 at 11:46 am #15450941

Marcel
Supporter

Languages: English (English ) German (Deutsch )

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

Hi,

before your ticket is assigned to one of my colleagues, please allow me to walk you through some initial debugging steps. This will help speed up the support process.

Your workflow is more complicated as it's needed. You don't need to bulk copy the content before; it's enough if you directly run the import, as our WPML All Import extension needs to remove the content in the default language anyway.

1) You export the default language
2) You prepare the import file, where each post gets assigned a unique identifier to each other
3) You import the CSV for your default language
4) You import the CSV for your secondary language, the unique identifier will connect them

You can find some detailed guides about this here: https://wpml.org/documentation/related-projects/wpml-all-import-plugin-website-import-with-wpml/importing-variable-products-in-multiple-languages-with-wp-all-import-and-wpml/

Please be aware that we also have a new Add-On that can handle the connection of imported content: https://wpml.org/documentation/related-projects/wpml-export-and-import/. This Add-On supports
- the native WP import tool (XML)
- the native WooCommerce Product Import
- and the WP All in one Migration plugin.

In your case, the native WooCommerce Import functionality might be enough and faster than using WP All in One Migration.

Best Regards
Marcel

March 28, 2024 at 3:08 pm #15461348

artjanv

HI Marcel,

We have tried this but the import create new EN products without connection to the existing NL one and with missing all the default Woocommerce data.

Any easy way to just create a copy of these products inside a different language?

March 28, 2024 at 3:23 pm #15461418

Laura
Supporter

Languages: English (English ) Italian (Italiano )

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

Please notice that if you have issues importing the translations now, you'll have the same issues even if you create copies of the posts beforehand.

There's likely something wrong with your workflow, maybe you're not creating the unique identificator column (that's the most common issue when using WP All Import).

If you could share your workflow step by step and a CSV sample we might better understand what's the the problem.

Also please provide your debug information (https://wpml.org/faq/provide-debug-information-faster-support/)

April 3, 2024 at 5:55 pm #15479933

artjanv

Hi Laura,

At this moment we have around 4000 products inside Woocommerce in language NL. Around 1500 products already translated by hand because these are new products.

This client has another, none Woocommerce platform, where we can create a export of their product descriptions inside English. To import these descriptions is easy and can be mapped on the unique meta/sku field. The case is how we can first, or by import, create a copy or English product post of the existing NL product so we can afterwards import these translations.

If we do this manual we go to NL, select the copy WPML option -> copy the product to English -> unconnect these products to be translable seperate and then import the English decsription. That works but is not an option for these amount of products.

April 3, 2024 at 6:40 pm #15480078

Bobby
Supporter

Languages: English (English )

Timezone: America/Los_Angeles (GMT-07:00)

Hi there,

following up on this I have to agree with my colleague, the workflow you are attempting is not ideal especially with this # of products.

I recommend using the WP All Import process along with our add-on, and let's test it with a few products first to ensure all is working OK then scale it to the larger number and let me know your results also share the CSV file with me.

2 documents recommended to read:
https://wpml.org/documentation/related-projects/wpml-all-import-plugin-website-import-with-wpml/

https://wpml.org/documentation/related-projects/wpml-all-import-plugin-website-import-with-wpml/importing-variable-products-in-multiple-languages-with-wp-all-import-and-wpml/

Now to also answer your original question, if you want to bulk duplicate(copy) products go to WPML->Translation Management->filter by products and bulk select them, then select duplicate as the option at the bottom and run it.

There is a limit on how many products you can display at each time, you can edit the view options at the top and increase to 50 or 100, etc. Increasing it to 4000 would mostly likely cause the site to crash

April 4, 2024 at 6:35 am #15481033

artjanv

HI Bobby,

The WPML only works with full imports and it looks like its not working for just adding a language.

We have take a look at the bulk duplicate action. That works so far but how can we disable (by bulk) the translation connection? We need to be able to translate them seperate. See screenshot for this manual action on each product. Is there any action or maybe a DB query?

Scherm­afbeelding 2024-04-04 om 08.32.29.png
April 4, 2024 at 5:55 pm #15485244

Bobby
Supporter

Languages: English (English )

Timezone: America/Los_Angeles (GMT-07:00)

There is no action I am aware of to do a bulk translation independently from duplication (the action shown in your screenshot).

What you might give a try is the following:

Go to WPML->Translation Management->filter by pages/post/etc and select the duplicate ones then send them for translation, either manual or automatic.

Try this with a few items and let me know your results, please.

April 5, 2024 at 9:57 am #15487230

artjanv

HI,

That won't work.

First we can't filter inside all our products to select only the products that has been duplicated.
Second we don't want them to translate and just disable the copy action.

Any ideas?

April 6, 2024 at 12:22 am #15490097

Bobby
Supporter

Languages: English (English )

Timezone: America/Los_Angeles (GMT-07:00)

Unfortunately, I am out of ideas, as all of these are what would be considered workarounds since there is no feature to do this in bulk.

if you would like us to review the workflow and instead use the WP All Import + WPML All Import glue plugins, i believe that could solve your issue using this workflow rather than the workflow used at the moment.

Please let me know how you would like to proceed.

If you are willing to adjust your workflow and follow the steps form here:
https://wpml.org/documentation/related-projects/wpml-all-import-plugin-website-import-with-wpml/importing-variable-products-in-multiple-languages-with-wp-all-import-and-wpml/

Share with me the csv file used that did not successfully connect the products for further review.

April 17, 2024 at 3:17 pm #15533748

artjanv

We have tried verything but with no luck. We don't really understand why it's not possible to just copy a list of product to the second language. That's all we want to do.

This is our import: hidden link

But we need to first have all our NL products translated to EN after we can import our texts. That import is easy because we can map on unique sku/reference.

SO the main question is; how can we copy these products, just the same as manual already is possible, in bulk.

I hope you can have a solution because we are stukc with this client an manual doing more than 4000 products is not an option.

April 17, 2024 at 4:58 pm #15534189

Bobby
Supporter

Languages: English (English )

Timezone: America/Los_Angeles (GMT-07:00)

Hi there,

Why not just import the products using the import process and mapping the unique key.

What I mean is that you do not have to translate them first, you can simply create a copy of your existing product csv and map each copy product with the key to the default language product.

as if they were translated, then you can add your translations with WPML as you wish later.

Please let me know your results.

April 18, 2024 at 3:29 pm #15540003

artjanv

Hi Bobby,

We will perform some more tests with these imports.

Just another issue we are facing. When we want to duplicate/copy a product we don't see any message. but nothing happens. When we checkl out logs we see this:

Got error 'PHP message: WordPress database error Duplicate entry '3429-en' for key 'wp_icl_translations.trid_lang' for query UPDATE `wp_icl_translations` SET `trid` = '3429', `language_code` = 'en', `source_language_code` = 'nl' WHERE `element_type` = 'post_product' AND `element_id` = '150098' made by do_action('wp_ajax_make_duplicates'), WP_Hook->do_action, WP_Hook->apply_filters, WPML_Meta_Boxes_Post_Edit_Ajax->duplicate_post, TranslationManagement->make_duplicates, TranslationManagement->make_duplicate, SitePress->make_duplicate, WPML_Post_Duplication->make_duplicate, WPML_Post_Duplication->run_wpml_actions, SitePress->set_element_language_details, WPML_Set_Language->set, WPML_Set_Language->change_translation_of', referer: hidden link

Is there a way to delete this orphaned wpml data? This product don't exist(anymore) inside this webshop in English.

Thank you.

April 18, 2024 at 4:37 pm #15540236

Bobby
Supporter

Languages: English (English )

Timezone: America/Los_Angeles (GMT-07:00)

Let's try to run some of the troubleshooting actions for WPML first and see if it helps

You see how to do this here:
https://wpml.org/documentation/support/wpml-troubleshooting-options/#:~:text=To%20access%20the%20WPML%20troubleshooting,and%20click%20the%20Troubleshooting%20link.&text=Before%20running%20any%20steps%20that,a%20backup%20of%20your%20website.

I recommend running:

Clear the Cache in WPML

Remove ghost entries from the translation tables

Fix element_type collation

Set language information

Cleanup and optimize string tables

Let me know your results, please.

April 18, 2024 at 4:43 pm #15540242

Bobby
Supporter

Languages: English (English )

Timezone: America/Los_Angeles (GMT-07:00)

Let's try to run some of the troubleshooting actions for WPML first and see if it helps

You see how to do this here:
https://wpml.org/documentation/support/wpml-troubleshooting-options/#:~:text=To%20access%20the%20WPML%20troubleshooting,and%20click%20the%20Troubleshooting%20link.&text=Before%20running%20any%20steps%20that,a%20backup%20of%20your%20website.

I recommend running:

Clear the Cache in WPML

Remove ghost entries from the translation tables

Fix element_type collation

Set language information

Cleanup and optimize string tables

Let me know your results, please.