2016-10-02 2 views
0

Ich versuche, neue Beiträge über XMLRPC hinzuzufügen, aber aus irgendeinem Grund kann ich keine benutzerdefinierten Felder hinzufügen (anderer Inhalt wie Titel und Beschreibung funktioniert).XMLRPC - wp.newPost mit benutzerdefinierten Beitragstyp und benutzerdefinierten Feldern

Pseudo-Code, die ich benutze:

from xmlrpc import client 
user = 'admin' 
passwd = 'pass' 
server = client.ServerProxy('http://domain.tld/xmlrpc.php') 
blog_id = 0 

custom_fields = [] 
custom_fields.append(
     {'key' : 'my_meta_key', 'value' : 123} 
) 

blog_content = { 
    'post_title': title, 
    'post_content': content, 
    'post_type': 'product', 
    'custom_fields': custom_fields 
} 

post_id = int(server.wp.newPost(blog_id, user, passwd, blog_content, 0)) 

Beiträge hinzugefügt werden, aber mein benutzerdefiniertes Feld mit dem Namen my_meta_key ist leer.

Kann nicht sehen, was ich falsch mache. mit

Antwort

0

Problem mit Benennung von Meta-Taste ist. Ich benenne sie mit Unterstrichen, wie _my_meta_key, was bedeutet, dass sie für die API geschützt sind.

0

Versuchen:

custom_fields = {}  
custom_fields.update(
     {'my_meta_key': 123} 

)

+0

Funktioniert nicht. Ich kann wirklich nicht sehen, wo das Problem liegt. Über PHP Hinzufügen von Post-Meta-Arbeit für den gleichen Schlüssel. – RhymeGuy

+0

Welchen Fehler erhalten Sie, nachdem Sie dict anstelle von list verwendet haben? –

+0

Es gibt keinen Fehler. Post wird erstellt und mit Titel und Inhalt gefüllt. Der Meta-Schlüssel ist jedoch nicht ausgefüllt. – RhymeGuy

Verwandte Themen