WPML 3.9 הציג אפשרות להציג תוכן שמגיע מהשפה המקורית בעת צפייה בעמודים בשפות אחרות. אם האתר שלך הסתמך על שכפול תוכן לפני גרסה 3.9, ייתכן שתרצה למחוק את כל התוכן המשוכפל מהאתר שלך לפני השימוש במצב תרגום חדש זה.
כיצד להשתמש במדריך זה
השלבים המפורטים בעמוד זה מסירים הגדרות ותכנים ממסד הנתונים. המשך רק אם אתה יודע מה אתה עושה ובהחלט התחל ביצירת גיבוי מלא של מסד הנתונים של האתר שלך.
כדי להשתמש בשאילתות ה־SQL המצורפות, עליך לערוך אותן:
- החלף את XXXX בסוג הפוסט שעבורו ברצונך למחוק תכנים משוכפלים (לדוגמה, "post", "product" או "page").
- החלף את YYYY בקוד שפת ברירת המחדל של האתר (לדוגמה, "en").
- החלף את wp_ בקידומת הטבלה שהוגדרה באמצעות המשתנה $table_prefix בקובץ wp-config.php (ברירת המחדל היא wp_).
לבסוף, עליך להריץ שאילתות אלו באמצעות אחד הכלים לעבודה עם מסדי נתונים של SQL, לדוגמה, phpMyAdmin.
1. הסרת תוכן משוכפל
מחיקת תוכן משוכפל מ־wp_posts
DELETE FROM wp_posts
WHERE post_type = 'XXXX' AND ID IN (
SELECT pm.post_id
FROM wp_postmeta pm
JOIN wp_icl_translations t ON t.element_id = pm.meta_value
WHERE pm.meta_key = '_icl_lang_duplicate_of' AND pm.meta_value > 0 AND
t.element_type LIKE 'post_%' AND t.language_code = 'YYYY'
)2. הסרת הגדרות תרגום
מחיקת הגדרות תרגום מ־wp_icl_translations
DELETE FROM wp_icl_translations
WHERE element_type = 'post_XXXX' AND element_id IN (
SELECT pm.post_id
FROM wp_postmeta pm
JOIN wp_icl_translations t ON t.element_id = pm.meta_value
WHERE meta_key = '_icl_lang_duplicate_of' AND meta_value > 0 AND t.language_code = 'YYYY'
)3. הסרת נתוני מטא יתומים של פוסטים
שים לב שביצוע שאילתה זו הוא איטי ועלול להסתיים בשגיאת פסק זמן, בהתאם להגדרות השרת שלך. בנוסף, לא חובה להריץ שאילתה זו מכיוון שהיא משמשת רק לניקוי מסד הנתונים שלך מנתוני מטא יתומים של פוסטים.
מחיקת יתומים מ־wp_postmeta
DELETE pm FROM wp_postmeta pm LEFT JOIN wp_posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL