Προβλήματα με τη δημοσίευση του Live Writer με το WordPress
Πρόσφατα, ο Live Writer ξεκίνησε να προκαλεί προβλήματα, τουλάχιστον σε δύο περιπτώσεις:
1. Όταν δημιουργείται ένα νέο άρθρο, η αποστολή του στέλνει ένα μήνυμα σφάλματος ακόμη και αν το άρθρο ανεβάζεται. Στη συνέχεια, όταν προσπαθείτε ξανά, δημιουργήστε ένα νέο άρθρο έτσι ώστε τη στιγμή που παρατηρείτε την υπόθεση, υπάρχουν ήδη πολλά άρθρα που έχουν δημοσιευτεί με το ίδιο όνομα και παρακάτω φαίνεται ότι δεν ανεβάζει τίποτα.
2. Εάν ανοίξει ένα άρθρο που έχει ήδη δημοσιευτεί, η ενημέρωσή του αποστέλλει το μήνυμα σφάλματος παρόλο που η ενημέρωση είναι επιτυχής.
Το όλο πρόβλημα είναι η ενημέρωση μιας γραμμής αρχείων class-WP-xmlrpc-server.php που δεν στέλνει μήνυμα απάντησης. Το ίδιο συμβαίνει όταν το κάνετε από οποιαδήποτε απομακρυσμένη πλατφόρμα μέσω της μεθόδου metaWeblog όπως στην περίπτωση του Blogsy από το iPad / iPhone.
Το μήνυμα μοιάζει με αυτό:
Η απόκριση στη μέθοδο metaWeblog.editPost που ελήφθη από τον διακομιστή ιστολογίου δεν ήταν έγκυρη: Επιστράφηκε μη έγκυρο έγγραφο απόκρισης από τον διακομιστή XmlRpc.
Λοιπόν, η έξοδος είναι η εξής: Πρέπει να εισαγάγετε το αρχείο μέσω του cPanel ή της υπηρεσίας φιλοξενίας /public_html/wp-includes/class-wp-xmlrpc-server.php και εκεί φαίνεται στη γραμμή 3948 τον κώδικα:
αν (is_array ($ συνημμένα)) {
foreach ($ συνημμένα ως αρχείο $) {
εάν (strpos ($ post_content, $ file-> guide)! == false)
$ wpdb-> ενημέρωση ($ wpdb-> δημοσιεύσεις, πίνακας ('post_parent' => $ post_ID), array ('ID' => $ file-> ID));
Πρέπει να το αλλάξετε σε:
αν (is_array ($ συνημμένα)) {
foreach ($ συνημμένα ως αρχείο $) {
εάν ($ file-> guide &&! ($ file-> guide == NULL))
εάν (strpos ($ post_content, $ file-> guide)! == false)
$ wpdb-> ενημέρωση ($ wpdb-> δημοσιεύσεις, πίνακας ('post_parent' => $ post_ID), array ('ID' => $ file-> ID));
Αν είναι σταθερά, αυτό που κάναμε είναι να προσθέσουμε τη γραμμή που σημειώνεται με κόκκινο χρώμα.
Με αυτό το πρόβλημα πρέπει να λυθεί. Με την προσοχή ότι κατά την ενημέρωση του WordPress πρέπει να το κάνετε ξανά ενώ δεν το επιλύουν μόνιμα.