2016-10-02 4 views
0

Я пытаюсь добавить новые сообщения в XMLRPC, но по какой-то причине я не могу добавить настраиваемые поля (другой контент, например, название и описание работает).XMLRPC - wp.newPost с пользовательским типом сообщения и настраиваемыми полями

Псевдо код, который я использую:

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)) 

Сообщение добавляется, однако мое настраиваемое поле с именем my_meta_key пусто.

Не могу видеть, что я делаю неправильно.

ответ

0

Проблема с именованием мета ключей. Я называю их символом подчеркивания, например _my_meta_key, что означает, что они защищены для API.

0

Попробуйте использовать:

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

)

+0

Не работает. Не могу сказать, где проблема. Над PHP добавление метаданных сообщений для одного и того же ключа. – RhymeGuy

+0

Какова ошибка, которую вы получаете после использования dict вместо списка? –

+0

Ошибка не возникает. Сообщение создается и заполняется заголовком и контентом. Однако мета-ключ не заполняется. – RhymeGuy

Смежные вопросы