Wenn ich eine XML-Datei mit [Extras> Exportieren] generiere und [Extras> Importieren] auf einer anderen WordPress-Website verwende, wird für jeden Anhangspostentyp "Fehler beim Importieren von Medien" angezeigt. Und Bilder, die nicht geladen werden konnten, sind mit einem Hotlink vom vorherigen Server verbunden, der die Übertragung dieses vorherigen Servers verbraucht ...
Aber wenn ich "Unit Test" von http://codex.wordpress.org/Theme_Unit_Test herunterlade, besteht dieses Problem nicht. Einige Bilder haben immer noch die Meldung "Medien konnten nicht importiert werden", aber es sind nur 5 von 30 Bildern. Sie haben URLs zu ihrem eigenen Server in ihrem XML, aber irgendwie gelingt es [Tools> Import], ihre Medien herunterzuladen und diese URLs durch neue Speicherorte zu ersetzen (es ist kein Hotlink mehr vorhanden).
Was ist der Trick, damit es ohne "Fehler beim Importieren von Medien" richtig funktioniert? Warum gibt es auch bei "Unit Test" einige Meldungen, dass der Import von Medien fehlgeschlagen ist?
IMPORT_DEBUG
und legen Sie es auftrue
aussagekräftiges Feedback statt nur „Fehler beim Importieren von Medien“ zu bekommen. Ich kann mir nicht vorstellen, warum dies nicht das Standardverhalten ist. Das kann helfen, Ihr Problem einzugrenzen, wenn das Wetter gerade richtig ist.IMPORT_DEBUG
Optiondefine ( 'IMPORT_DEBUG', true );
.xml
URLs sind aktivierthttps
. Bearbeiten Sie diexml
Dateien, um zu wechseln, umhttps
zuhttp
helfen.Antworten:
Ich hatte ein sehr ähnliches Problem, als ich ein WordPress-Blog von einer einzelnen WordPress-Installation auf eine Multisite-Installation mit unterschiedlichen Domain-Namen, aber derselben IP-Adresse verschoben habe.
Ich fand heraus, dass das Problem die
wp_http_validate_url
Funktion ist, die die URL löscht, wenn die Quell-IP mit der Ziel-IP identisch ist.Sie können einen Filter hinzufügen
wp_http_validate_url
, um dies zu verhindern und die Zuordnung von Quell- und Ziel-IPs zuzulassen:In dieser Antwort finden Sie eine detaillierte Erklärung des Filter-Hooks und warum Sie ihn nach dem Import entfernen sollten: /wordpress//a/123313/75573
quelle
Wenn Sie Ihre Exportdatei generiert haben, war es auf einem Live-Server oder einem lokalen Host? Ist diese Webseite noch zugänglich? Wenn der Medienimport fehlschlägt, bedeutet dies, dass die aus dem XML-Code verknüpften Bilder angezeigt werden 404.
Öffnen Sie die XML-Datei und sehen Sie, wohin die Bilder zeigen. Wenn wir die XML-Datei der Themeneinheit öffnen, sehen wir folgende Zeilen:
Diese Datei ist sehr eindeutig für den Import verfügbar. Was sagen Ihre attachment_url-Dateien?
quelle
<wp:attachment_url>
sagt example.com/2008/06/image.jpg auch wo example.com immer zugänglich Domäne ist. Das ist der Grund, warum ich diese Frage stelle :) Es funktioniert eindeutig nicht, auch wenn Bilder nicht 404 generieren. Es funktioniert gelegentlich nicht mit wpthemetestdata.files.wordpress.com (~ 5 von 30 zufälligen Bildern schlagen fehl).Ich habe auch Probleme damit, Medien von wordpress.com nach wordpress.org zu importieren. Ich konnte alle Beiträge importieren, die Bilder waren jedoch immer noch mit der alten Site verlinkt. Ich musste fast weinen, als mir klar wurde, dass die einzige Lösung darin bestand, mehr als 200 große Bilder per Post manuell herunterzuladen und hochzuladen (auch das Exportieren / Importieren kleinerer Teile von Posts funktionierte nicht).
Nach dem Testen einiger Plugins habe ich eines gefunden, das Ihre WordPress-Medien automatisch importiert. Ich konnte es nicht glauben, aber es funktioniert tatsächlich. Sie müssen Post für Post gehen, aber es ist immer noch besser als manuelles Herunterladen und Hochladen. Hier ist der Link, wenn jemand interessiert ist
quelle
Stellen Sie sicher, dass Ihre Website nicht auf "Privat" eingestellt ist.
Wenn Sie Ihr Wordpress-Blog exportieren, wird der gesamte Textinhalt in die resultierende XML-Datei eingebettet. Alle binären Inhalte (Bilder, Dateianhänge usw.) werden als URLs exportiert, die auf ihre Position im vorhandenen Blog verweisen. Aus diesem Grund können Sie beim Importieren aus einem privaten Wordpress-Blog weiterhin alle Posts / etc importieren, aber alle Images / etc schlagen fehl.
Hier müssen Sie die Einstellung ab der aktuellen Version (19.06.2017) ändern:
Relevante Wordpress-Dokumentation:
Beachten Sie, dass dies über die Einstellungen Ihres Wordpress.com-Kontos erfolgen muss, nicht über die Einstellungen des Blogs selbst, was ebenfalls zu Verwirrung (und Frustration) führen kann.
quelle
Dieses Problem kann auftreten, wenn bestimmte Plugins auf der Remote- / lokalen Site verwendet werden.
Deaktivieren Sie im Idealfall alle Plugins auf beiden Sites, bevor Sie sie exportieren oder importieren, und reaktivieren Sie sie nach Abschluss des Vorgangs.
Wenn Sie vermeiden möchten, ALLE Plugins zu deaktivieren, deaktivieren Sie zumindest alle Plugins, die sich auf Bilder oder die Bildverarbeitung auswirken. Der häufigste Typ ist wahrscheinlich der, der die Bildoptimierung ausführt.
In meinem Fall hatte ich das EWWW-Bildoptimierungsprogramm (das ich sehr empfehle) auf der lokalen Site aktiviert und es verursachte diesen Fehler. Ich habe es deaktiviert, den Import erfolgreich ausgeführt und wieder aktiviert.
quelle
Ich hatte das gleiche Problem und nach stundenlangem Suchen und Testen bestand das Problem darin, dass der Quellserver das Herunterladen von Bildern blockierte, weil "Hotlink Protection" im cPanel aktiv war.
quelle
Für diejenigen, die nicht verwenden möchten
add_filter
oder keine Ahnung haben, wie es integriert werden kann, ohne ein separates Modul zu erstellen. Hier ist ein kurzer praktischer Trick, um es zu erledigen.Öffnen Sie diese Datei
Gehen Sie zur Zeile
566
und kommentieren Sie den folgenden Codeblock aus.Wenn Sie diese beiden Zeilen auskommentiert haben, fügen Sie die folgende Zeile hinzu.
Speichern Sie die Datei und laden Sie die XML-Datei hoch, um es erneut zu versuchen. Sie werden nun den gesamten zugehörigen Inhalt herunterladen. Gehen Sie zurück und entfernen Sie den Kommentarblock und die return-Anweisung und Sie können loslegen.
quelle