可以通过XML-RPC命令更改博客的主题吗?(如果是这样的话,又是如何做到的?)

时间:2011-04-25 作者:Tal Galili

我似乎在这里找不到这样的选项:

http://codex.wordpress.org/XML-RPC_wp#wp.setOptions

它存在吗?

谢谢

2 个回复
最合适的回答,由SO网友:EAMann 整理而成

否,该选项当前不存在于XML-RPC中。然而,您始终可以在插件中创建自己的方法,并将其连接到XML-RPC。

更新即将到来Google Summer of Code 该项目将扩展XML-RPC接口,以允许直接操纵主题,因此我不会在这里透露实现该接口的代码。但请留心今夏新代码(核心更改和/或插件)何时开始发布。

同时,我将提供一个替代方案。可以通过XML-RPC查看和设置的选项集是可过滤的。基本上,你可以告诉系统给你比平时更多的信息。

您已经可以获得的内容(粗体选项是只读的…您不能使用wp.setOptions 但你可以用手机取回它们wp.getOptions):

  • software_name
  • software_version
  • blog_url
  • content_width
  • 时区
  • 博客标题
  • 博客主题
  • 日期格式
  • 时间格式
  • 用户可以注册
  • 缩略图大小\\u w此列表(实际上是具有其他设置的数组)通过xmlrpc_blog_options 过滤器,这意味着您可以向此列表中添加和删除所有需要的内容。通过以下方式启用当前主题的获取wp.getOptions 以及主题的改变wp.setOptions 您可以使用以下选项:

    function allow_xmlrpc_theme_changes( $xmlrpcoptions ) {
        $xmlrpcoptions[\'active-theme\'] = array(
            \'desc\'            => __( \'Active site theme\' ),
            \'readonly\'        => false,
            \'option\'          => \'template\'
        );
    
        $xmlrpcoptions[\'active-stylesheet\'] = array(
            \'desc\'            => __( \'Active site stylesheet\' ),
            \'readonly\'        => false,
            \'option\'          => \'stylesheet\'
        );
    
        return $xmlrpcoptions
    }
    
    add_filter( \'xmlrpc_blog_options\', \'allow_xmlrpc_theme_changes\' );
    
    这将添加两个可以设置的字段:“quot;“活动主题”;和;活动样式表;。

    记住,设置这些选项的方式与使用相同update_option(), 所以double check the codex 在做任何事情之前。

SO网友:dailyinvention

我也对同样的事情感兴趣。我编写了一个插件,将XML-RPC扩展到wp\\u get\\u themes函数和switch\\u themes函数。插件已打开Github 我有一个关于my blog.

结束

相关推荐

如何通过XML-RPC获取所有帖子(以块为单位)?

I would like to retrieve all posts of a blog via the XML-RPC API of Wordpress.有以下方法blogger.getRecentPosts 和metaWeblog.getRecentPosts 理论上,如果给出足够高的值作为职位数量(或-1),则应返回所有职位。但是,这不适用于非常大的博客或非常弱的服务器,这些服务器无法在内存中保存整个博客。在这种情况下,这些函数最多不会返回任何内容,也不会向响应XML中抛出错误。一种解决方案是一次检