Ich habe Probleme beim Erstellen eines Import/Caching-Skripts für eine WordPress-Site. Dieser Feed stammt aus einer einzelnen Textdatei, die dann analysiert und als Array zurückgegeben wird.
Beim Durchlaufen jedes Elements aus dem Feed verwende ich die Funktion wp_insert_post, um die Daten hinzuzufügen (siehe unten):
$ post = array ( 'post_title' => $ property ['DISPLAY_ADDRESS'], 'post_name' => sanitize_title ($ property ['DISPLAY_ADDRESS']. "-". $ property [ 'AGENT_REF']), 'Post_content' => $ content, 'Post_status' => 'publish', 'Post_type' => 'property', 'page_template' => 'page-property.php' ); $ post_id = wp_insert_post ($ post, true);
Wenn ich die $ post_id ausgebe, um den Fehler abzufangen, erhalte ich Folgendes:
WP_Error Object ( [Errors] => Array ( [Db_update_error] => Array ( [0] => Beitrag in der Datenbank konnte nicht aktualisiert werden ) ) [Fehlerdaten] => Array ( ) )
Ich habe versucht, den tatsächlichen Text, der in $ content varilable enthalten ist, zu verwenden und diesen direkt in die Option 'post_content' einzufügen, und das funktioniert problemlos. Es liegt irgendwo zwischen meinem Text und der Weitergabe als $ content, was zu Problemen führt. Ich habe auch versucht, die Option 'post_content_filtered' zu verwenden, was keinen Unterschied machte.
Hat jemand dieses Problem schon einmal gehabt oder weiß, warum dieser Fehler ausgelöst wird? Ohne das Feld 'post_content' funktioniert es einwandfrei.
Die Variable $ content enthält Text aus dem Feed. Unten mit einigen ausgeblendeten Daten für einen Kunden dargestellt. Unten sehen Sie ein Beispiel für die Ausgabe von $ post, um die Daten anzuzeigen.
Array ( [Post_title] => Beispiel-Post-Titel [Post_name] => Beispiel-Post-Name [Post_content] => £ 303.33 pcm *** Verfügbar ab 1. Juli Die Miete beinhaltet alle Nebenkosten. Ein abgeschlossenes Zimmer mit eigener Küchenzeile und Gemeinschaftsbad. Ein beliebter Ort in der Nähe von Geschäften und allen Hauptstraßen. [post_status] => veröffentlichen [post_type] => Eigenschaft [page_template] => page-property.php [post_content_filtered] => )
Heute habe ich versucht, importierte Daten in WordPress einzufügen. Ich habe wp_insert_post zum Einfügen von Daten verwendet und dabei den folgenden Fehler ausgegeben:
WP_Error Object (
[errors] => Array
(
[db_update_error] => Array
(
[0] => Could not update post in the database
)
)
[error_data] => Array
(
)
)
Mein Freund sagte mir, dass ich versucht habe, nicht utf8-codierte Daten einzufügen, und WordPress verwendet intern UTF8.
$post_info['post_content'] = iconv('ISO-8859-1','UTF-8', $post_info['post_content']);