有没有办法知道一篇文章是否已经通过XML-RPC发布了?

时间:2015-04-08 作者:mike23

这一切都在标题中,我正在寻找一种方法来知道给定的帖子是否是通过XML-RPC发布的,而不是在WP admin中手动发布的。

伪代码:

if( !wpse_from_xmlrpc( $post -> ID ) {
    // Doesn\'t come from XMLRPC
} else {
    // Comes from XMLRPC 
}

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

您可以使用操作挂钩为通过XMLRPC保存的帖子使用自定义字段xmlrpc_publish_post. wpse_from_xmlrpc() 无法检查此自定义字段。

<?php
    add_action( \'xmlrpc_publish_post\', \'add_xmlrpc_postmeta\' );
    function add_xmlrpc_postmeta( $post_id ){
        update_post_meta( $post_id, \'send-by-xmlrpc\', 1 );
    }

    function wpse_from_xmlrpc( $post_id ){
        $xmlrpc = get_post_meta( $post_id, \'send-by-xmlrpc\', true );
        if( $xmlrpc == 1 )
            return true;
        return false;
    }
?>
有关此挂钩的更多信息,请参阅wp includes/post。php

结束

相关推荐

XML-RPC:如何为上传的图片添加媒体字幕?

我需要将非WP数据从SQL数据库迁移到WP中的POST,并认为在部署之前在封闭环境中使用XML-RPC是一个聪明的解决方案。这是我的第一个WP项目,所以我对WP还是个新手。我已经成功上传了XML-RPC图像。不幸的是,我也看不到metaWeblog。newMediaObject或wp。uploadFile支持标题、alt或描述字段。我试着上传图片,然后用上传返回的ID编辑帖子。wp。editPost将布尔值集返回为true,这使我相信更改已设置。但当我检查媒体库时,图像标题字段仍然为空。有人对我该怎么做有