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.

Elementor users - please update WPML to the latest version to maintain compatibility. More details here - https://wpml.org/changelog/2024/12/wpml-4-6-15-critical-update-for-elementor-sites/
Sun Mon Tue Wed Thu Fri Sat
- 12:00 – 14:00 12:00 – 14:00 12:00 – 14:00 12:00 – 14:00 12:00 – 14:00 -
- 17:00 – 21:00 17:00 – 21:00 17:00 – 21:00 17:00 – 21:00 17:00 – 21:00 -

Supporter timezone: Europe/Vienna (GMT+01:00)

Tagged: 

This topic contains 17 replies, has 0 voices.

Last updated by Bigul 6 days, 3 hours ago.

Assisted by: Bigul.

Author Posts
November 22, 2024 at 9:47 pm #16435352

ericH-23

Background of the issue:
I am working on a site under development and have activated the setting in WPML to delete translations when a post is deleted. I want to understand how this setting works, especially in relation to synced duplicates of posts.

Symptoms:
I am unsure if the deletion setting works for copies and what happens when original or synced copies are deleted.

Questions:
Does the setting to delete translations when a post is deleted also apply to duplicates?
What should happen if the original post is deleted?
What should happen if a synced duplicate is deleted?
Must the deleted post be removed from the trash for the duplicates to be deleted as well?

November 25, 2024 at 10:21 am #16438981

Bigul
Supporter

Languages: English (English )

Timezone: Europe/Vienna (GMT+01:00)

Hello,

Welcome to the WPML support forum. I will do my best to help you to resolve the issue.

To help you faster, I've enabled debug information for this support ticket. Please see this link for how to get this information from your site and give it to us: http://wpml.org/faq/provide-debug-information-faster-support/

If we choose the *When deleting a post, delete translations as well* option in WPML>>Settings>>Posts and pages synchronization it will work like the following. Please try it after a full site backup and let us know your feedback.

1) When we Trash an original/default language post its translations will be also trashed

2) When we Trash an original/default language post its duplicates (in the secondary languages) will be also trashed

3) If we permanently delete a post from Trash, its translations/duplicates will be deleted permanently

4) When we Trash/Delete permanently a translated post its original/default language post will not be trashed/deleted

--
Thanks!

Bigul

November 25, 2024 at 11:37 am #16439381

ericH-23

Hi,
My situation is:

I added https://wpml.org/forums/topic/adding-posts-in-a-second-language-and-making-available-in-all-languages/ and now a user can add a job in every language and copies will be made with all other languages.

Managing of the jobs is only allowed in the language in which the job is created, because changes are synced then to the copies.

So also deletion is also only allowed in the language, in which the job was created. But the deletion by the user only delets the original job post, the copies are not deleted.

Only if the admin go to the job listing trash and delete this job permanet, all the copies are gone.

Is it possible to get all the copies deleted into the trash with deleting the original post?

Thanks, kind regards
Eric

November 26, 2024 at 12:49 pm #16444722

Bigul
Supporter

Languages: English (English )

Timezone: Europe/Vienna (GMT+01:00)

Hi Eric,

Thank you for the details. Yes, if we activate the *When deleting a post, delete translations as well* option, deleting an original language post will also move its translations to the trash.

However, please note that if a post is created in a secondary language and then translated into the site's default (original) language, the post in the secondary language must be deleted first.

You can also select the *When deleting a taxonomy (category, tag or custom), delete translations as well* option of WPML>>Settings>>Posts and pages synchronization.

--
Thanks!

Bigul

November 26, 2024 at 4:25 pm #16446115

ericH-23

Hi,
Thanks, I had set also *When deleting a taxonomy (category, tag or custom), delete translations as well* already.

In my system it is set this way:

User adds a job in a second language, this job is duplicated (no translation) and by this there a copies of the by the user created job. The user is only allowed to delete the one he created, and if he do so, the copied jobs are not set to trash and are still in the system published.

So my question: is this a standard function? Then we should check this here. If not I have to go forward with a custom code here.

Thanks, kind regards
Eric

November 27, 2024 at 3:03 pm #16450700

Bigul
Supporter

Languages: English (English )

Timezone: Europe/Vienna (GMT+01:00)

Hi Eric,

Thank you for the updates. I have tested a similar case in a sandbox site (fresh installation). It works as expected. I created a couple of custom posts (Books) in the secondary language and duplicated them in the default language. The default language posts moved to Trash when I Trash the post was created in the secondary language.

Please click the following links for more details.

hidden link (Sandbox site login URL)

hidden link (All Posts are in Trash now)

--
Thanks!

Bigul

November 27, 2024 at 9:42 pm #16451801

ericH-23

Hi,
Thanks, good idea, yes, I installed here the Jobmanager and made the same test. Yes, all duplicates are in the trash. And I added field manager and acf taxnomies and added a tax field, and it is deleted into the trash. OK.

So remains the question, why is not this way in my site?

1)
Is something missing in this code: https://wpml.org/forums/topic/adding-posts-in-a-second-language-and-making-available-in-all-languages/

2)
have some taxonomies false setting in WPML

Shall I make a troubleshot with WPML?

Thanks, kind regards
Eric

November 28, 2024 at 1:52 pm #16455547

Bigul
Supporter

Languages: English (English )

Timezone: Europe/Vienna (GMT+01:00)

Hi Eric,

Thank you for the updates. Normally it will not happen because of the Post duplication via code. So to make sure, please create a Job post in your live site in a secondary language and duplicate it to the default language (via WPML features). Then delete the secondary language post and make sure the bug exists or not.

Please share a couple of screenshots or a screencast for a better understanding following one.

Have some taxonomies false settings in WPML? 

Shall I make troubleshoot with WPML?

--
Thanks!

Bigul

November 29, 2024 at 9:57 pm #16461171

ericH-23

Hi,
So thanks so far!
Now it could be that I have the reason:

1) deleting of a job with copies works well in the admin area, all copies are deleted together with the main job

2) deleting of a job with copies doesn't work in the frontend, only the main job is deleted, but not the copies

I tested it in my system and in your sandbox and this is the same at both!

Please check!

Thanks, kind regards
Eric

November 30, 2024 at 11:50 am #16461885

Bigul
Supporter

Languages: English (English )

Timezone: Europe/Vienna (GMT+01:00)

Hi Eric,

This may be a compatibility issue. Please share the exact steps you are doing for the following.

deleting of a job with copies doesn't work in the frontend, only the main job is deleted, but not the copies

--
Thanks!

Bigul

November 30, 2024 at 7:28 pm #16462248

ericH-23

Hi,

I tested this way:

1) created a new job in EN in the backend
2) duplicate it into the other languages in the backend
3) in the frontend the job is shown in the job dashboard
4) the user can now delete the job in EN in the frontend

result: copies are NOT deleted

Please check.

Thanks, kind regards
Eric

December 2, 2024 at 4:40 pm #16467603

Bigul
Supporter

Languages: English (English )

Timezone: Europe/Vienna (GMT+01:00)

Hi Eric,

Thank you for the details. I can also reproduce the issue on the sandbox site. It looks like a compatibility issue or a feature request.

I will consult about this with our team for an expert opinion and get back to you as soon as possible. Please wait.

--
Thanks!

Bigul

December 7, 2024 at 5:16 pm #16488694

ericH-23

Hi, This ticket was not shown in my current tickets anymore, but I am waiting on a solution.
So can you let it open please?
Thanks, kind regards
Eric

December 9, 2024 at 4:40 am #16490891

Bigul
Supporter

Languages: English (English )

Timezone: Europe/Vienna (GMT+01:00)

Hi Eric,

Thank you for the updates. We are getting the expected results in our local copy and the sandbox site after the following steps. Please try it after a full site backup {mandatory} and let us know your feedback.

1) Visit */wp-content/plugins/wp-job-manager/includes/* folder
2) Open the *class-job-dashboard-shortcode.php* file for edit
3) Scroll down to line number 466
4) Make the following changes and save the file

From

case 'delete':
// Trash it.
wp_trash_post( $job_id );

To

				case 'delete':
					// Trash it.
					// WPML workaround for compsupp-7729
					$trid = apply_filters( 'wpml_element_trid', NULL, $job_id , 'post_job_listing' );
					$translations = apply_filters( 'wpml_get_element_translations', NULL, $trid, 'job_listing' );
					if ( !empty( $translations ) ) {
						foreach ( $translations as $lang => $translation ) {
							$translation_id = absint( $translation->element_id );
							wp_trash_post( $translation_id );
						}
					}

Please note that this workaround will delete translations, irrespective of the "When deleting a post, delete translations as well" option.

--
Thanks!

Bigul

December 11, 2024 at 11:31 am #16503043

ericH-23

Hi,
Thanks! Great, this is working.
Question:
1) is it possible to add a code in the functions.php?
2) did you contacted WP Jobmanager to add this in their code?
This is not update save and here I am asking for an update save way.
Thanks, kind regards
Eric