WordPress.org

Make WordPress Core

Ticket #27506: 27506.diff

File 27506.diff, 29.3 KB (added by kpdesign, 7 years ago)

First pass

  • src/wp-includes/class-wp-xmlrpc-server.php

     
    127127                );
    128128
    129129                $this->initialise_blog_option_info();
    130                 $this->methods = apply_filters('xmlrpc_methods', $this->methods);
     130
     131                /**
     132                 * Filter the methods exposed by the XML-RPC server.
     133                 *
     134                 * This filter can be used to add new methods, and remove built-in methods.
     135                 *
     136                 * @since 1.5.0
     137                 *
     138                 * @param object $methods An array of methods.
     139                 */
     140                $this->methods = apply_filters( 'xmlrpc_methods', $this->methods );
    131141        }
    132142
    133143        function serve_request() {
     
    171181         */
    172182        function login( $username, $password ) {
    173183                // Respect any old filters against get_option() for 'enable_xmlrpc'.
     184
     185                /**
     186                 * Filter
     187                 *
     188                 * @since 3.5.0
     189                 * @deprecated 3.5.0 Use xmlrpc_enabled instead.
     190                 *
     191                 * @param
     192                 */
    174193                $enabled = apply_filters( 'pre_option_enable_xmlrpc', false ); // Deprecated
    175194                if ( false === $enabled )
     195
     196                        /**
     197                         * Filter
     198                         *
     199                         * @since 3.5.0
     200                         * @deprecated 3.5.0 Use xmlrpc_enabled instead.
     201                         *
     202                         * @param
     203                         */
    176204                        $enabled = apply_filters( 'option_enable_xmlrpc', true ); // Deprecated
    177205
    178                 // Proper filter for turning off XML-RPC. It is on by default.
     206                /**
     207                 * Filter whether XML-RPC is enabled.
     208                 *
     209                 * This is the proper filter for turning off XML-RPC.
     210                 *
     211                 * @since 3.5.0
     212                 *
     213                 * @param bool $enabled Whether XML-RPC is enabled. Default on.
     214                 */
    179215                $enabled = apply_filters( 'xmlrpc_enabled', $enabled );
    180216
    181217                if ( ! $enabled ) {
     
    187223
    188224                if (is_wp_error($user)) {
    189225                        $this->error = new IXR_Error( 403, __( 'Incorrect username or password.' ) );
     226
     227                        /**
     228                         * Filter the user login error message.
     229                         *
     230                         * @since 3.5.0
     231                         *
     232                         * @param string  $error The error message.
     233                         * @param WP_User $user  WP_User object.
     234                         */
    190235                        $this->error = apply_filters( 'xmlrpc_login_error', $this->error, $user );
    191236                        return false;
    192237                }
     
    441486                        )
    442487                );
    443488
     489                /**
     490                 * Filter the blog options property.
     491                 *
     492                 * @since 2.6.0
     493                 *
     494                 * @param array $blog_options An array of blog options.
     495                 */
    444496                $this->blog_options = apply_filters( 'xmlrpc_blog_options', $this->blog_options );
    445497        }
    446498
     
    474526                if ( !$user = $this->login($username, $password) )
    475527                        return $this->error;
    476528
     529                /**
     530                 * Fires after the user has been authenticated but before the rest of
     531                 * the method logic begins.
     532                 *
     533                 * All built-in XML-RPC methods use the action xmlrpc_call, with a parameter
     534                 * equal to the method's name, e.g., wp.getUsersBlogs, wp.newPost, etc.
     535                 *
     536                 * @since 2.5.0
     537                 *
     538                 * @param method $name The method name.
     539                 */
    477540                do_action( 'xmlrpc_call', 'wp.getUsersBlogs' );
    478541
    479542                $blogs = (array) get_blogs_of_user( $user->ID );
     
    9721035                if ( ! $user = $this->login( $username, $password ) )
    9731036                        return $this->error;
    9741037
     1038                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    9751039                do_action( 'xmlrpc_call', 'wp.newPost' );
    9761040
    9771041                unset( $content_struct['ID'] );
     
    12581322                if ( ! $user = $this->login( $username, $password ) )
    12591323                        return $this->error;
    12601324
     1325                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    12611326                do_action( 'xmlrpc_call', 'wp.editPost' );
    12621327
    12631328                $post = get_post( $post_id, ARRAY_A );
     
    13191384                if ( ! $user = $this->login( $username, $password ) )
    13201385                        return $this->error;
    13211386
     1387                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    13221388                do_action( 'xmlrpc_call', 'wp.deletePost' );
    13231389
    13241390                $post = get_post( $post_id, ARRAY_A );
     
    13941460                if ( isset( $args[4] ) )
    13951461                        $fields = $args[4];
    13961462                else
     1463
     1464                        /**
     1465                         * Filter the conceptual groups used to retrieve a post.
     1466                         *
     1467                         * @since 3.4.0
     1468                         *
     1469                         * @param array $fields An array of conceptual groups. Default 'post',
     1470                         *                      'terms', 'custom_fields'.
     1471                         * @param string $method The method used to retrieve the post fields.
     1472                         */
    13971473                        $fields = apply_filters( 'xmlrpc_default_post_fields', array( 'post', 'terms', 'custom_fields' ), 'wp.getPost' );
    13981474
    13991475                if ( ! $user = $this->login( $username, $password ) )
    14001476                        return $this->error;
    14011477
     1478                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    14021479                do_action( 'xmlrpc_call', 'wp.getPost' );
    14031480
    14041481                $post = get_post( $post_id, ARRAY_A );
     
    14501527                if ( isset( $args[4] ) )
    14511528                        $fields = $args[4];
    14521529                else
     1530                        /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    14531531                        $fields = apply_filters( 'xmlrpc_default_post_fields', array( 'post', 'terms', 'custom_fields' ), 'wp.getPosts' );
    14541532
    14551533                if ( ! $user = $this->login( $username, $password ) )
    14561534                        return $this->error;
    14571535
     1536                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    14581537                do_action( 'xmlrpc_call', 'wp.getPosts' );
    14591538
    14601539                $query = array();
     
    15441623                if ( ! $user = $this->login( $username, $password ) )
    15451624                        return $this->error;
    15461625
     1626                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    15471627                do_action( 'xmlrpc_call', 'wp.newTerm' );
    15481628
    15491629                if ( ! taxonomy_exists( $content_struct['taxonomy'] ) )
     
    16321712                if ( ! $user = $this->login( $username, $password ) )
    16331713                        return $this->error;
    16341714
     1715                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    16351716                do_action( 'xmlrpc_call', 'wp.editTerm' );
    16361717
    16371718                if ( ! taxonomy_exists( $content_struct['taxonomy'] ) )
     
    17241805                if ( ! $user = $this->login( $username, $password ) )
    17251806                        return $this->error;
    17261807
     1808                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    17271809                do_action( 'xmlrpc_call', 'wp.deleteTerm' );
    17281810
    17291811                if ( ! taxonomy_exists( $taxonomy ) )
     
    17911873                if ( ! $user = $this->login( $username, $password ) )
    17921874                        return $this->error;
    17931875
     1876                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    17941877                do_action( 'xmlrpc_call', 'wp.getTerm' );
    17951878
    17961879                if ( ! taxonomy_exists( $taxonomy ) )
     
    18441927                if ( ! $user = $this->login( $username, $password ) )
    18451928                        return $this->error;
    18461929
     1930                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    18471931                do_action( 'xmlrpc_call', 'wp.getTerms' );
    18481932
    18491933                if ( ! taxonomy_exists( $taxonomy ) )
     
    19232007                if ( ! $user = $this->login( $username, $password ) )
    19242008                        return $this->error;
    19252009
     2010                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    19262011                do_action( 'xmlrpc_call', 'wp.getTaxonomy' );
    19272012
    19282013                if ( ! taxonomy_exists( $taxonomy ) )
     
    19622047                if ( isset( $args[4] ) )
    19632048                        $fields = $args[4];
    19642049                else
     2050                        /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    19652051                        $fields = apply_filters( 'xmlrpc_default_taxonomy_fields', array( 'labels', 'cap', 'object_type' ), 'wp.getTaxonomies' );
    19662052
    19672053                if ( ! $user = $this->login( $username, $password ) )
    19682054                        return $this->error;
    19692055
     2056                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    19702057                do_action( 'xmlrpc_call', 'wp.getTaxonomies' );
    19712058
    19722059                $taxonomies = get_taxonomies( $filter, 'objects' );
     
    20362123                if ( ! $user = $this->login( $username, $password ) )
    20372124                        return $this->error;
    20382125
     2126                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    20392127                do_action( 'xmlrpc_call', 'wp.getUser' );
    20402128
    20412129                if ( ! current_user_can( 'edit_user', $user_id ) )
     
    20842172                if ( isset( $args[4] ) )
    20852173                        $fields = $args[4];
    20862174                else
     2175                        /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    20872176                        $fields = apply_filters( 'xmlrpc_default_user_fields', array( 'all' ), 'wp.getUsers' );
    20882177
    20892178                if ( ! $user = $this->login( $username, $password ) )
    20902179                        return $this->error;
    20912180
     2181                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    20922182                do_action( 'xmlrpc_call', 'wp.getUsers' );
    20932183
    20942184                if ( ! current_user_can( 'list_users' ) )
     
    21512241                if ( isset( $args[3] ) )
    21522242                        $fields = $args[3];
    21532243                else
     2244                        /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    21542245                        $fields = apply_filters( 'xmlrpc_default_user_fields', array( 'all' ), 'wp.getProfile' );
    21552246
    21562247                if ( ! $user = $this->login( $username, $password ) )
    21572248                        return $this->error;
    21582249
     2250                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    21592251                do_action( 'xmlrpc_call', 'wp.getProfile' );
    21602252
    21612253                if ( ! current_user_can( 'edit_user', $user->ID ) )
     
    21992291                if ( ! $user = $this->login( $username, $password ) )
    22002292                        return $this->error;
    22012293
     2294                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    22022295                do_action( 'xmlrpc_call', 'wp.editProfile' );
    22032296
    22042297                if ( ! current_user_can( 'edit_user', $user->ID ) )
     
    22722365                if ( !current_user_can( 'edit_page', $page_id ) )
    22732366                        return new IXR_Error( 401, __( 'Sorry, you cannot edit this page.' ) );
    22742367
    2275                 do_action('xmlrpc_call', 'wp.getPage');
     2368                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     2369                do_action( 'xmlrpc_call', 'wp.getPage' );
    22762370
    22772371                // If we found the page then format the data.
    22782372                if ( $page->ID && ($page->post_type == 'page') ) {
     
    23102404                if ( !current_user_can( 'edit_pages' ) )
    23112405                        return new IXR_Error( 401, __( 'Sorry, you cannot edit pages.' ) );
    23122406
    2313                 do_action('xmlrpc_call', 'wp.getPages');
     2407                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     2408                do_action( 'xmlrpc_call', 'wp.getPages' );
    23142409
    23152410                $pages = get_posts( array('post_type' => 'page', 'post_status' => 'any', 'numberposts' => $num_pages) );
    23162411                $num_pages = count($pages);
     
    23502445                if ( !$user = $this->login($username, $password) )
    23512446                        return $this->error;
    23522447
    2353                 do_action('xmlrpc_call', 'wp.newPage');
     2448                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     2449                do_action( 'xmlrpc_call', 'wp.newPage' );
    23542450
    23552451                // Mark this as content for a page.
    23562452                $args[3]["post_type"] = 'page';
     
    23782474                if ( !$user = $this->login($username, $password) )
    23792475                        return $this->error;
    23802476
    2381                 do_action('xmlrpc_call', 'wp.deletePage');
     2477                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     2478                do_action( 'xmlrpc_call', 'wp.deletePage' );
    23822479
    23832480                // Get the current page based on the page_id and
    23842481                // make sure it is a page and not a post.
     
    24202517                if ( !$user = $this->login($username, $password) )
    24212518                        return $this->error;
    24222519
    2423                 do_action('xmlrpc_call', 'wp.editPage');
     2520                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     2521                do_action( 'xmlrpc_call', 'wp.editPage' );
    24242522
    24252523                // Get the page data and make sure it is a page.
    24262524                $actual_page = get_post($page_id, ARRAY_A);
     
    24702568                if ( !current_user_can( 'edit_pages' ) )
    24712569                        return new IXR_Error( 401, __( 'Sorry, you cannot edit pages.' ) );
    24722570
    2473                 do_action('xmlrpc_call', 'wp.getPageList');
     2571                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     2572                do_action( 'xmlrpc_call', 'wp.getPageList' );
    24742573
    24752574                // Get list of pages ids and titles
    24762575                $page_list = $wpdb->get_results("
     
    25212620                if ( !current_user_can('edit_posts') )
    25222621                        return(new IXR_Error(401, __('Sorry, you cannot edit posts on this site.')));
    25232622
    2524                 do_action('xmlrpc_call', 'wp.getAuthors');
     2623                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     2624                do_action( 'xmlrpc_call', 'wp.getAuthors' );
    25252625
    25262626                $authors = array();
    25272627                foreach ( get_users( array( 'fields' => array('ID','user_login','display_name') ) ) as $user ) {
     
    25562656                if ( !current_user_can( 'edit_posts' ) )
    25572657                        return new IXR_Error( 401, __( 'Sorry, you must be able to edit posts on this site in order to view tags.' ) );
    25582658
     2659                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    25592660                do_action( 'xmlrpc_call', 'wp.getKeywords' );
    25602661
    25612662                $tags = array();
     
    25952696                if ( !$user = $this->login($username, $password) )
    25962697                        return $this->error;
    25972698
    2598                 do_action('xmlrpc_call', 'wp.newCategory');
     2699                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     2700                do_action( 'xmlrpc_call', 'wp.newCategory' );
    25992701
    26002702                // Make sure the user is allowed to add a category.
    26012703                if ( !current_user_can('manage_categories') )
     
    26562758                if ( !$user = $this->login($username, $password) )
    26572759                        return $this->error;
    26582760
    2659                 do_action('xmlrpc_call', 'wp.deleteCategory');
     2761                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     2762                do_action( 'xmlrpc_call', 'wp.deleteCategory' );
    26602763
    26612764                if ( !current_user_can('manage_categories') )
    26622765                        return new IXR_Error( 401, __( 'Sorry, you do not have the right to delete a category.' ) );
     
    26922795                if ( !current_user_can( 'edit_posts' ) )
    26932796                        return new IXR_Error( 401, __( 'Sorry, you must be able to edit posts to this site in order to view categories.' ) );
    26942797
    2695                 do_action('xmlrpc_call', 'wp.suggestCategories');
     2798                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     2799                do_action( 'xmlrpc_call', 'wp.suggestCategories' );
    26962800
    26972801                $category_suggestions = array();
    26982802                $args = array('get' => 'all', 'number' => $max_results, 'name__like' => $category);
     
    27282832                if ( !current_user_can( 'moderate_comments' ) )
    27292833                        return new IXR_Error( 403, __( 'You are not allowed to moderate comments on this site.' ) );
    27302834
    2731                 do_action('xmlrpc_call', 'wp.getComment');
     2835                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     2836                do_action( 'xmlrpc_call', 'wp.getComment' );
    27322837
    27332838                if ( ! $comment = get_comment($comment_id) )
    27342839                        return new IXR_Error( 404, __( 'Invalid comment ID.' ) );
     
    27692874                if ( !current_user_can( 'moderate_comments' ) )
    27702875                        return new IXR_Error( 401, __( 'Sorry, you cannot edit comments.' ) );
    27712876
    2772                 do_action('xmlrpc_call', 'wp.getComments');
     2877                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     2878                do_action( 'xmlrpc_call', 'wp.getComments' );
    27732879
    27742880                if ( isset($struct['status']) )
    27752881                        $status = $struct['status'];
     
    28352941                if ( !current_user_can( 'edit_comment', $comment_ID ) )
    28362942                        return new IXR_Error( 403, __( 'You are not allowed to moderate comments on this site.' ) );
    28372943
    2838                 do_action('xmlrpc_call', 'wp.deleteComment');
     2944                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     2945                do_action( 'xmlrpc_call', 'wp.deleteComment' );
    28392946
    28402947                $status = wp_delete_comment( $comment_ID );
    28412948
     
    28902997                if ( !current_user_can( 'edit_comment', $comment_ID ) )
    28912998                        return new IXR_Error( 403, __( 'You are not allowed to moderate comments on this site.' ) );
    28922999
    2893                 do_action('xmlrpc_call', 'wp.editComment');
     3000                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     3001                do_action( 'xmlrpc_call', 'wp.editComment' );
    28943002
    28953003                if ( isset($content_struct['status']) ) {
    28963004                        $statuses = get_comment_statuses();
     
    29553063                $post           = $args[3];
    29563064                $content_struct = $args[4];
    29573065
    2958                 $allow_anon = apply_filters('xmlrpc_allow_anonymous_comments', false);
     3066                $allow_anon = apply_filters( 'xmlrpc_allow_anonymous_comments', false );
    29593067
    29603068                $user = $this->login($username, $password);
    29613069
     
    30143122
    30153123                $comment['comment_content'] =  isset($content_struct['content']) ? $content_struct['content'] : null;
    30163124
    3017                 do_action('xmlrpc_call', 'wp.newComment');
     3125                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     3126                do_action( 'xmlrpc_call', 'wp.newComment' );
    30183127
    30193128                $comment_ID = wp_new_comment( $comment );
    30203129
     
    30443153                if ( !current_user_can( 'moderate_comments' ) )
    30453154                        return new IXR_Error( 403, __( 'You are not allowed access to details about this site.' ) );
    30463155
    3047                 do_action('xmlrpc_call', 'wp.getCommentStatusList');
     3156                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     3157                do_action( 'xmlrpc_call', 'wp.getCommentStatusList' );
    30483158
    30493159                return get_comment_statuses();
    30503160        }
     
    30713181                if ( !current_user_can( 'edit_posts' ) )
    30723182                        return new IXR_Error( 403, __( 'You are not allowed access to details about comments.' ) );
    30733183
    3074                 do_action('xmlrpc_call', 'wp.getCommentCount');
     3184                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     3185                do_action( 'xmlrpc_call', 'wp.getCommentCount' );
    30753186
    30763187                $count = wp_count_comments( $post_id );
    30773188                return array(
     
    31033214                if ( !current_user_can( 'edit_posts' ) )
    31043215                        return new IXR_Error( 403, __( 'You are not allowed access to details about this site.' ) );
    31053216
    3106                 do_action('xmlrpc_call', 'wp.getPostStatusList');
     3217                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     3218                do_action( 'xmlrpc_call', 'wp.getPostStatusList' );
    31073219
    31083220                return get_post_statuses();
    31093221        }
     
    31293241                if ( !current_user_can( 'edit_pages' ) )
    31303242                        return new IXR_Error( 403, __( 'You are not allowed access to details about this site.' ) );
    31313243
    3132                 do_action('xmlrpc_call', 'wp.getPageStatusList');
     3244                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     3245                do_action( 'xmlrpc_call', 'wp.getPageStatusList' );
    31333246
    31343247                return get_page_statuses();
    31353248        }
     
    32863399                if ( !current_user_can( 'upload_files' ) )
    32873400                        return new IXR_Error( 403, __( 'You do not have permission to upload files.' ) );
    32883401
    3289                 do_action('xmlrpc_call', 'wp.getMediaItem');
     3402                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     3403                do_action( 'xmlrpc_call', 'wp.getMediaItem' );
    32903404
    32913405                if ( ! $attachment = get_post($attachment_id) )
    32923406                        return new IXR_Error( 404, __( 'Invalid attachment ID.' ) );
     
    33313445                if ( !current_user_can( 'upload_files' ) )
    33323446                        return new IXR_Error( 401, __( 'You do not have permission to upload files.' ) );
    33333447
    3334                 do_action('xmlrpc_call', 'wp.getMediaLibrary');
     3448                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     3449                do_action( 'xmlrpc_call', 'wp.getMediaLibrary' );
    33353450
    33363451                $parent_id = ( isset($struct['parent_id']) ) ? absint($struct['parent_id']) : '' ;
    33373452                $mime_type = ( isset($struct['mime_type']) ) ? $struct['mime_type'] : '' ;
     
    33723487                if ( !current_user_can( 'edit_posts' ) )
    33733488                        return new IXR_Error( 403, __( 'You are not allowed access to details about this site.' ) );
    33743489
     3490                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    33753491                do_action( 'xmlrpc_call', 'wp.getPostFormats' );
    33763492
    33773493                $formats = get_post_format_strings();
     
    34353551                if ( !$user = $this->login( $username, $password ) )
    34363552                        return $this->error;
    34373553
     3554                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    34383555                do_action( 'xmlrpc_call', 'wp.getPostType' );
    34393556
    34403557                if( ! post_type_exists( $post_type_name ) )
     
    34763593                if ( isset( $args[4] ) )
    34773594                        $fields = $args[4];
    34783595                else
     3596                        /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    34793597                        $fields = apply_filters( 'xmlrpc_default_posttype_fields', array( 'labels', 'cap', 'taxonomies' ), 'wp.getPostTypes' );
    34803598
    34813599                if ( ! $user = $this->login( $username, $password ) )
    34823600                        return $this->error;
    34833601
     3602                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    34843603                do_action( 'xmlrpc_call', 'wp.getPostTypes' );
    34853604
    34863605                $post_types = get_post_types( $filter, 'objects' );
     
    35353654                if ( ! $user = $this->login( $username, $password ) )
    35363655                        return $this->error;
    35373656
     3657                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    35383658                do_action( 'xmlrpc_call', 'wp.getRevisions' );
    35393659
    35403660                if ( ! $post = get_post( $post_id ) )
     
    35963716                if ( ! $user = $this->login( $username, $password ) )
    35973717                        return $this->error;
    35983718
     3719                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
    35993720                do_action( 'xmlrpc_call', 'wp.restoreRevision' );
    36003721
    36013722                if ( ! $revision = wp_get_post_revision( $revision_id ) )
     
    36453766                if ( !$user = $this->login($username, $password) )
    36463767                        return $this->error;
    36473768
    3648                 do_action('xmlrpc_call', 'blogger.getUsersBlogs');
     3769                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     3770                do_action( 'xmlrpc_call', 'blogger.getUsersBlogs' );
    36493771
    36503772                $is_admin = current_user_can('manage_options');
    36513773
     
    37123834                if ( !current_user_can( 'edit_posts' ) )
    37133835                        return new IXR_Error( 401, __( 'Sorry, you do not have access to user data on this site.' ) );
    37143836
    3715                 do_action('xmlrpc_call', 'blogger.getUserInfo');
     3837                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     3838                do_action( 'xmlrpc_call', 'blogger.getUserInfo' );
    37163839
    37173840                $struct = array(
    37183841                        'nickname'  => $user->nickname,
     
    37513874                if ( !current_user_can( 'edit_post', $post_ID ) )
    37523875                        return new IXR_Error( 401, __( 'Sorry, you cannot edit this post.' ) );
    37533876
    3754                 do_action('xmlrpc_call', 'blogger.getPost');
     3877                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     3878                do_action( 'xmlrpc_call', 'blogger.getPost' );
    37553879
    37563880                $categories = implode(',', wp_get_post_categories($post_ID));
    37573881
     
    37963920                if ( ! current_user_can( 'edit_posts' ) )
    37973921                        return new IXR_Error( 401, __( 'Sorry, you cannot edit posts on this site.' ) );
    37983922
    3799                 do_action('xmlrpc_call', 'blogger.getRecentPosts');
     3923                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     3924                do_action( 'xmlrpc_call', 'blogger.getRecentPosts' );
    38003925
    38013926                $posts_list = wp_get_recent_posts( $query );
    38023927
     
    38743999                if ( !$user = $this->login($username, $password) )
    38754000                        return $this->error;
    38764001
    3877                 do_action('xmlrpc_call', 'blogger.newPost');
     4002                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     4003                do_action( 'xmlrpc_call', 'blogger.newPost' );
    38784004
    38794005                $cap = ($publish) ? 'publish_posts' : 'edit_posts';
    38804006                if ( ! current_user_can( get_post_type_object( 'post' )->cap->create_posts ) || !current_user_can($cap) )
     
    39284054                if ( !$user = $this->login($username, $password) )
    39294055                        return $this->error;
    39304056
    3931                 do_action('xmlrpc_call', 'blogger.editPost');
     4057                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     4058                do_action( 'xmlrpc_call', 'blogger.editPost' );
    39324059
    39334060                $actual_post = get_post($post_ID,ARRAY_A);
    39344061
     
    39824109                if ( !$user = $this->login($username, $password) )
    39834110                        return $this->error;
    39844111
    3985                 do_action('xmlrpc_call', 'blogger.deletePost');
     4112                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     4113                do_action( 'xmlrpc_call', 'blogger.deletePost' );
    39864114
    39874115                $actual_post = get_post($post_ID,ARRAY_A);
    39884116
     
    40534181                if ( !$user = $this->login($username, $password) )
    40544182                        return $this->error;
    40554183
    4056                 do_action('xmlrpc_call', 'metaWeblog.newPost');
     4184                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     4185                do_action( 'xmlrpc_call', 'metaWeblog.newPost' );
    40574186
    40584187                $page_template = '';
    40594188                if ( !empty( $content_struct['post_type'] ) ) {
     
    43724501                if ( ! $user = $this->login($username, $password) )
    43734502                        return $this->error;
    43744503
    4375                 do_action('xmlrpc_call', 'metaWeblog.editPost');
     4504                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     4505                do_action( 'xmlrpc_call', 'metaWeblog.editPost' );
    43764506
    43774507                $postdata = get_post( $post_ID, ARRAY_A );
    43784508
     
    46464776                if ( !current_user_can( 'edit_post', $post_ID ) )
    46474777                        return new IXR_Error( 401, __( 'Sorry, you cannot edit this post.' ) );
    46484778
    4649                 do_action('xmlrpc_call', 'metaWeblog.getPost');
     4779                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     4780                do_action( 'xmlrpc_call', 'metaWeblog.getPost' );
    46504781
    46514782                if ($postdata['post_date'] != '') {
    46524783                        $post_date = $this->_convert_date( $postdata['post_date'] );
     
    47704901                if ( ! current_user_can( 'edit_posts' ) )
    47714902                        return new IXR_Error( 401, __( 'Sorry, you cannot edit posts on this site.' ) );
    47724903
    4773                 do_action('xmlrpc_call', 'metaWeblog.getRecentPosts');
     4904                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     4905                do_action( 'xmlrpc_call', 'metaWeblog.getRecentPosts' );
    47744906
    47754907                $posts_list = wp_get_recent_posts( $query );
    47764908
     
    48855017                if ( !current_user_can( 'edit_posts' ) )
    48865018                        return new IXR_Error( 401, __( 'Sorry, you must be able to edit posts on this site in order to view categories.' ) );
    48875019
    4888                 do_action('xmlrpc_call', 'metaWeblog.getCategories');
     5020                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     5021                do_action( 'xmlrpc_call', 'metaWeblog.getCategories' );
    48895022
    48905023                $categories_struct = array();
    48915024
     
    49335066                if ( !$user = $this->login($username, $password) )
    49345067                        return $this->error;
    49355068
    4936                 do_action('xmlrpc_call', 'metaWeblog.newMediaObject');
     5069                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     5070                do_action( 'xmlrpc_call', 'metaWeblog.newMediaObject' );
    49375071
    49385072                if ( !current_user_can('upload_files') ) {
    49395073                        $this->error = new IXR_Error( 401, __( 'You do not have permission to upload files.' ) );
     
    50275161                if ( !$user = $this->login($username, $password) )
    50285162                        return $this->error;
    50295163
    5030                 do_action('xmlrpc_call', 'mt.getRecentPostTitles');
     5164                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     5165                do_action( 'xmlrpc_call', 'mt.getRecentPostTitles' );
    50315166
    50325167                $posts_list = wp_get_recent_posts( $query );
    50335168
     
    50865221                if ( !current_user_can( 'edit_posts' ) )
    50875222                        return new IXR_Error( 401, __( 'Sorry, you must be able to edit posts on this site in order to view categories.' ) );
    50885223
    5089                 do_action('xmlrpc_call', 'mt.getCategoryList');
     5224                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     5225                do_action( 'xmlrpc_call', 'mt.getCategoryList' );
    50905226
    50915227                $categories_struct = array();
    50925228
     
    51275263                if ( !current_user_can( 'edit_post', $post_ID ) )
    51285264                        return new IXR_Error( 401, __( 'Sorry, you can not edit this post.' ) );
    51295265
    5130                 do_action('xmlrpc_call', 'mt.getPostCategories');
     5266                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     5267                do_action( 'xmlrpc_call', 'mt.getPostCategories' );
    51315268
    51325269                $categories = array();
    51335270                $catids = wp_get_post_categories(intval($post_ID));
     
    51655302                if ( !$user = $this->login($username, $password) )
    51665303                        return $this->error;
    51675304
    5168                 do_action('xmlrpc_call', 'mt.setPostCategories');
     5305                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     5306                do_action( 'xmlrpc_call', 'mt.setPostCategories' );
    51695307
    51705308                if ( ! get_post( $post_ID ) )
    51715309                        return new IXR_Error( 404, __( 'Invalid post ID.' ) );
     
    51935331         */
    51945332        function mt_supportedMethods($args) {
    51955333
    5196                 do_action('xmlrpc_call', 'mt.supportedMethods');
     5334                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     5335                do_action( 'xmlrpc_call', 'mt.supportedMethods' );
    51975336
    51985337                $supported_methods = array();
    51995338                foreach ( $this->methods as $key => $value ) {
     
    52115350         * @param array $args Method parameters.
    52125351         */
    52135352        function mt_supportedTextFilters($args) {
    5214                 do_action('xmlrpc_call', 'mt.supportedTextFilters');
    5215                 return apply_filters('xmlrpc_text_filters', array());
     5353                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     5354                do_action( 'xmlrpc_call', 'mt.supportedTextFilters' );
     5355
     5356                return apply_filters( 'xmlrpc_text_filters', array() );
    52165357        }
    52175358
    52185359        /**
     
    52295370
    52305371                $post_ID = intval($args);
    52315372
    5232                 do_action('xmlrpc_call', 'mt.getTrackbackPings');
     5373                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     5374                do_action( 'xmlrpc_call', 'mt.getTrackbackPings' );
    52335375
    52345376                $actual_post = get_post($post_ID, ARRAY_A);
    52355377
     
    52765418                if ( !$user = $this->login($username, $password) )
    52775419                        return $this->error;
    52785420
    5279                 do_action('xmlrpc_call', 'mt.publishPost');
     5421                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     5422                do_action( 'xmlrpc_call', 'mt.publishPost' );
    52805423
    52815424                $postdata = get_post($post_ID, ARRAY_A);
    52825425                if ( ! $postdata )
     
    53125455        function pingback_ping($args) {
    53135456                global $wpdb;
    53145457
    5315                 do_action('xmlrpc_call', 'pingback.ping');
     5458                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     5459                do_action( 'xmlrpc_call', 'pingback.ping' );
    53165460
    53175461                $this->escape($args);
    53185462
     
    53255469                $pagelinkedto = str_replace('&', '&', $pagelinkedto);
    53265470                $pagelinkedto = str_replace('&', '&', $pagelinkedto);
    53275471
     5472                /**
     5473                 * Filter the pingback source URI.
     5474                 *
     5475                 * @since 3.6.0
     5476                 *
     5477                 * @param string $pagelinkedfrom The URI of the page linked from.
     5478                 * @param string $pagelinkedto   The URI of the page linked to.
     5479                 */
    53285480                $pagelinkedfrom = apply_filters( 'pingback_ping_source_uri', $pagelinkedfrom, $pagelinkedto );
    53295481                if ( ! $pagelinkedfrom )
    53305482                        return $this->pingback_error( 0, __( 'A valid URL was not provided.' ) );
     
    54065558                if ( !$linea )
    54075559                        return $this->pingback_error( 16, __( 'The source URL does not exist.' ) );
    54085560
    5409                 $linea = apply_filters('pre_remote_source', $linea, $pagelinkedto);
     5561                $linea = apply_filters( 'pre_remote_source', $linea, $pagelinkedto );
    54105562
    54115563                // Work around bug in strip_tags():
    54125564                $linea = str_replace('<!DOC', '<DOC', $linea);
     
    54715623                $commentdata = compact('comment_post_ID', 'comment_author', 'comment_author_url', 'comment_author_email', 'comment_content', 'comment_type');
    54725624
    54735625                $comment_ID = wp_new_comment($commentdata);
    5474                 do_action('pingback_post', $comment_ID);
     5626                do_action( 'pingback_post', $comment_ID );
    54755627
    54765628                return sprintf(__('Pingback from %1$s to %2$s registered. Keep the web talking! :-)'), $pagelinkedfrom, $pagelinkedto);
    54775629        }
     
    54905642
    54915643                global $wpdb;
    54925644
    5493                 do_action('xmlrpc_call', 'pingback.extensions.getPingbacks');
     5645                /** This action is documented in wp-includes/class-wp-xmlrpc-server.php */
     5646                do_action( 'xmlrpc_call', 'pingback.extensions.getPingbacks' );
    54945647
    54955648                $this->escape($args);
    54965649