Κρίσιμο σφάλμα κατά τη χρήση WPML + ACF

Οι ισχυρές προσθήκες WPML για την πολυγλωσσία και τα Προχωρημένα προσαρμοσμένα πεδία για τα δικά σας πεδία είναι τυπικός εξοπλισμός σε πολλές εγκαταστάσεις. Είναι ενοχλητικό όταν συμβαίνουν δυσλειτουργίες και απώλεια δεδομένων σε συνδυασμό. Οι αναφορές σφαλμάτων για το θέμα είναι λίγα χρόνια και αναπάντητα ( εδώ και εδώ και εδώ και εδώ και εδώ ). Μόλις ρίξα μια πιο προσεκτική ματιά στο πρόβλημα.


Το σφάλμα εμφανίζεται πάντα κατά τη δημιουργία μιας λεγόμενης σελίδας επιλογών ACF:

ceef04e850da257a8aaa54e356199f61

Για να αναπαραγάγετε το σφάλμα, κάντε τα εξής. Αρχικά, ορίστε τη γλώσσα σε "Γερμανικά" στο μενού στο επάνω μέρος του ταμπλό. Τώρα ανοίγετε το στοιχείο μενού "Επιλογές" δύο φορές (το καθένα σε μια καρτέλα). Είναι σημαντικό εδώ να καλέσετε απευθείας το στοιχείο μενού. Στη δεύτερη καρτέλα αλλάζετε τώρα τη γλώσσα (στο παράδειγμά μας σε "Αγγλικά"). Τώρα κάντε αλλαγές στην πρώτη καρτέλα και κάντε κλικ στο "Ενημέρωση". Τώρα το περιεχόμενο όλων των γερμανικών πεδίων έχει προσγειωθεί εσφαλμένα στα αγγλικά πεδία:

Το όλο πράγμα συμβαίνει χωρίς προειδοποίηση και είναι ιδιαίτερα θανατηφόρο εάν αντικατασταθεί ένας μεγάλος αριθμός επιλογών.

Η ακόλουθη επείγουσα επιδιόρθωση στο functions.php επιλύει το πρόβλημα (μην ξεχάσετε να ανταλλάξετε "acf-options" εάν χρησιμοποιείτε μεμονωμένο slug):

ceef04e850da257a8aaa54e356199f61

Πίσω