wp_xmlrpc_server::wp_deletePage( array $args )
Delete page.
Parameters
- $args
-
(Required) Method arguments. Note: arguments must be ordered as documented.
- 'blog_id'
(int) (unused) - 'username'
(string) - 'password'
(string) - 'page_id'
(int)
- 'blog_id'
Return
(true|IXR_Error) True, if success.
Source
File: wp-includes/class-wp-xmlrpc-server.php
public function wp_deletePage( $args ) {
$this->escape( $args );
$username = $args[1];
$password = $args[2];
$page_id = (int) $args[3];
if ( !$user = $this->login($username, $password) )
return $this->error;
/** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
do_action( 'xmlrpc_call', 'wp.deletePage' );
// Get the current page based on the page_id and
// make sure it is a page and not a post.
$actual_page = get_post($page_id, ARRAY_A);
if ( !$actual_page || ($actual_page['post_type'] != 'page') )
return new IXR_Error( 404, __( 'Sorry, no such page.' ) );
// Make sure the user can delete pages.
if ( !current_user_can('delete_page', $page_id) )
return new IXR_Error( 401, __( 'Sorry, you are not allowed to delete this page.' ) );
// Attempt to delete the page.
$result = wp_delete_post($page_id);
if ( !$result )
return new IXR_Error( 500, __( 'Failed to delete the page.' ) );
/**
* Fires after a page has been successfully deleted via XML-RPC.
*
* @since WP-3.4.0
*
* @param int $page_id ID of the deleted page.
* @param array $args An array of arguments to delete the page.
*/
do_action( 'xmlrpc_call_success_wp_deletePage', $page_id, $args );
return true;
}
Changelog
Version | Description |
---|---|
WP-2.2.0 | Introduced. |