web-dev-qa-db-fra.com

Existe-t-il un moyen de savoir si un article a été publié via XML-RPC?

Tout est dans le titre. Je cherche un moyen de savoir si un article donné a été publié via XML-RPC, par opposition à un article publié à la main dans WP admin.

Pseudo code:

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

Vous pouvez utiliser un champ personnalisé pour une publication qui est enregistrée via XMLRPC en utilisant l'action hook xmlrpc_publish_post. wpse_from_xmlrpc() pourrait ensuite vérifier ce champ personnalisé.

<?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;
    }
?>

Plus d’informations sur ce hook se trouvent dans wp-includes/post.php

3
websupporter