Skip to content Skip to sidebar

This thread is resolved. Here is a description of the problem and solution.

Problem:
You are facing an issue where Arabic, Chinese, and Russian property lists show more properties than the English list due to orphan translated properties that are not properly connected to the English originals.
Solution:
We recommend two methods to address this issue:
1. Manual Cleanup:
- Navigate to your Properties list in the Houzez post type.
- Switch to a secondary language (Arabic, Chinese, or Russian).
- Identify orphan properties indicated by a + icon, which means they are not connected to any original English post.
- Select these orphan properties in bulk and move them to trash.
This method is safest, especially if the number of orphans is manageable.
2. Database Cleanup: (Ensure you have a full database backup and preferably test on a staging site first)
- Use the following SQL query to identify orphan translated properties:

SELECT p.ID, p.post_title, p.post_status, t.language_code, t.trid FROM wp_posts p INNER JOIN wp_icl_translations t ON p.ID = t.element_id WHERE p.post_type = 'property' AND t.element_type = 'post_property' AND t.language_code IN ('ar', 'zh', 'ru') AND NOT EXISTS ( SELECT 1 FROM wp_icl_translations original INNER JOIN wp_posts op ON op.ID = original.element_id WHERE original.trid = t.trid AND original.language_code = 'en' AND original.element_type = 'post_property' AND op.post_type = 'property' AND op.post_status NOT IN ('trash', 'auto-draft') );

- If the results are correct, proceed to delete the orphan properties with this SQL command:

DELETE p FROM wp_posts p INNER JOIN wp_icl_translations t ON p.ID = t.element_id WHERE p.post_type = 'property' AND t.element_type = 'post_property' AND t.language_code IN ('ar', 'zh', 'ru') AND NOT EXISTS ( SELECT 1 FROM wp_icl_translations original INNER JOIN wp_posts op ON op.ID = original.element_id WHERE original.trid = t.trid AND original.language_code = 'en' AND original.element_type = 'post_property' AND op.post_type = 'property' AND op.post_status NOT IN ('trash', 'auto-draft') );

If these solutions do not resolve your issue or seem outdated, we highly recommend checking related known issues at https://wpml.org/known-issues/, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. If the problem persists, please open a new support ticket at WPML support forum.

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.

Tagged: 

This topic contains 5 replies, has 0 voices.

Last updated by Paola Mendiburu 2 months ago.

Assisted by: Paola Mendiburu.

Author Posts
May 5, 2026 at 10:46 am #18013535

nas-luxuryR

Hello WPML Support,

Our English property import is correct and currently shows 96 properties.

However, Arabic, Chinese, and Russian property lists show more than 140 properties. Some old translated properties remain even though the original English properties no longer exist.

We are using:

WP All Import / WP All Import Pro
WPML Import and Export
Houzez theme property custom post type
English as the original import language
Arabic, Chinese, and Russian as translated languages

In WPML settings, we already enabled:

When deleting a post, delete translations as well
When deleting a taxonomy, delete translations as well

The issue seems to be orphan translated properties that are not connected properly to the English originals, so WPML is not deleting them.

Could you please guide us on the safest way to:

Identify translated properties that do not have a matching English original.
Delete only those orphan translated properties.
Re-sync translation relationships for existing valid properties.
Avoid deleting shared media/images incorrectly.

We need the property counts in Arabic, Chinese, and Russian to match the English count of 96.

Thank you.

May 5, 2026 at 11:34 am #18013694

Paola Mendiburu
WPML Supporter since 11/2020

Languages: English (English ) Spanish (Español ) Italian (Italiano )

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

Hi there!

This is Paola and I hope you are well!

In this case, there are two safe ways to proceed: a manual cleanup and a database cleanup.

1. Manual method (safe and recommended first):

You can identify orphan translations directly from the Properties list:

Go to your Properties (Houzez post type).
Switch to a secondary language (Arabic, Chinese, or Russian).
Check the language icons:
+ plus icon → this means the property is not connected to any original English post (orphan)
pencil icon → this is a valid translation

The properties showing the + icon are the orphan ones.

You can:
- Select them in bulk
- Move them to trash

This is the safest way, especially if the number is manageable.

2. Database method (please make sure to create a full database backup and ideally test this on a staging site first)
- Review orphan translated properties

SELECT p.ID, p.post_title, p.post_status, t.language_code, t.trid
FROM wp_posts p
INNER JOIN wp_icl_translations t ON p.ID = t.element_id
WHERE p.post_type = 'property'
  AND t.element_type = 'post_property'
  AND t.language_code IN ('ar', 'zh', 'ru')
  AND NOT EXISTS (
    SELECT 1
    FROM wp_icl_translations original
    INNER JOIN wp_posts op ON op.ID = original.element_id
    WHERE original.trid = t.trid
      AND original.language_code = 'en'
      AND original.element_type = 'post_property'
      AND op.post_type = 'property'
      AND op.post_status NOT IN ('trash', 'auto-draft')
  );

This will show all translated properties that do not have a valid English original.

- Delete orphan translated properties

If the results above look correct, you can proceed with:

DELETE p
FROM wp_posts p
INNER JOIN wp_icl_translations t ON p.ID = t.element_id
WHERE p.post_type = 'property'
  AND t.element_type = 'post_property'
  AND t.language_code IN ('ar', 'zh', 'ru')
  AND NOT EXISTS (
    SELECT 1
    FROM wp_icl_translations original
    INNER JOIN wp_posts op ON op.ID = original.element_id
    WHERE original.trid = t.trid
      AND original.language_code = 'en'
      AND original.element_type = 'post_property'
      AND op.post_type = 'property'
      AND op.post_status NOT IN ('trash', 'auto-draft')
  );
May 5, 2026 at 12:02 pm #18013797

nas-luxuryR

Hi Paola, Good day!

we already translated manually them. now no properties shoring plus icon

May 5, 2026 at 1:12 pm #18014111

Paola Mendiburu
WPML Supporter since 11/2020

Languages: English (English ) Spanish (Español ) Italian (Italiano )

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

Are they now showing the same number of properties? Please let me know if you still see any orphan properties.

May 5, 2026 at 1:52 pm #18014283

nas-luxuryR

Hi,
I already raised another ticket..

You can refer this ticket.

https://wpml.org/forums/topic/wpml-automatic-translation-and-deletion-issue-with-wp-all-import-2/

Now the properties are not showing in our site. Please help to solve this asap.

Thanks.

May 6, 2026 at 8:27 am #18016261

Paola Mendiburu
WPML Supporter since 11/2020

Languages: English (English ) Spanish (Español ) Italian (Italiano )

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

I can see that my colleague Carlos has already taken care of that ticket.

Since this is a different issue, please continue the conversation there so everything stays in the same thread.

If the original problem has already been resolved, you can also mark this ticket as resolved.