Changeset 56876
- Timestamp:
- 10/12/2023 03:04:07 PM (9 months ago)
- Location:
- branches/5.2
- Files:
-
- 15 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/5.2
- Property svn:mergeinfo changed
/trunk merged: 56833-56836,56838
- Property svn:mergeinfo changed
-
branches/5.2/src/wp-admin/includes/ajax-actions.php
r55789 r56876 3511 3511 $shortcode = wp_unslash( $_POST['shortcode'] ); 3512 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3513 3529 if ( ! empty( $_POST['post_ID'] ) ) { 3514 3530 $post = get_post( (int) $_POST['post_ID'] ); … … 3517 3533 // the embed shortcode requires a post 3518 3534 if ( ! $post || ! current_user_can( 'edit_post', $post->ID ) ) { 3519 if ( 'embed' === $shortcode) {3535 if ( ) { 3520 3536 wp_send_json_error(); 3521 3537 } -
branches/5.2/src/wp-admin/includes/class-wp-comments-list-table.php
r44759 r56876 555 555 $this->user_can = current_user_can( 'edit_comment', $comment->comment_ID ); 556 556 557 558 559 560 561 562 563 564 565 566 567 568 569 557 570 echo "<tr id='comment-$comment->comment_ID' class='$the_comment_class'>"; 558 571 $this->single_row_columns( $comment ); -
branches/5.2/src/wp-admin/includes/class-wp-list-table.php
r44574 r56876 666 666 $pending_phrase = sprintf( _n( '%s pending comment', '%s pending comments', $pending_comments ), $pending_comments_number ); 667 667 668 // No comments at all. 668 $post_object = get_post( $post_id ); 669 $edit_post_cap = $post_object ? 'edit_post' : 'edit_posts'; 670 if ( 671 current_user_can( $edit_post_cap, $post_id ) || 672 ( 673 empty( $post_object->post_password ) && 674 current_user_can( 'read_post', $post_id ) 675 ) 676 ) { 677 // The user has access to the post and thus can see comments 678 } else { 679 return false; 680 } 681 669 682 if ( ! $approved_comments && ! $pending_comments ) { 670 683 printf( -
branches/5.2/src/wp-admin/includes/dashboard.php
r45510 r56876 946 946 echo '<ul id="the-comment-list" data-wp-lists="list:comment">'; 947 947 foreach ( $comments as $comment ) { 948 _wp_dashboard_recent_comments_row( $comment ); 948 $comment_post = get_post( $comment->comment_post_ID ); 949 if ( 950 current_user_can( 'edit_post', $comment->comment_post_ID ) || 951 ( 952 empty( $comment_post->post_password ) && 953 current_user_can( 'read_post', $comment->comment_post_ID ) 954 ) 955 ) { 956 _wp_dashboard_recent_comments_row( $comment ); 957 } 949 958 } 950 959 echo '</ul>'; -
branches/5.2/src/wp-includes/Requests/Hooks.php
r38049 r56876 66 66 return true; 67 67 } 68 69 70 71 68 72 } -
branches/5.2/src/wp-includes/Requests/IRI.php
r38727 r56876 704 704 } 705 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 706 720 /** 707 721 * Set the entire IRI. Returns true on success, false on failure (if there -
branches/5.2/src/wp-includes/Requests/Session.php
r38049 r56876 228 228 } 229 229 230 231 232 233 230 234 /** 231 235 * Merge a request's data with the default data -
branches/5.2/src/wp-includes/class-wp-block-type-registry.php
r44108 r56876 155 155 } 156 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 157 171 /** 158 172 * Utility method to retrieve the main instance of the class. -
branches/5.2/src/wp-includes/class-wp-theme.php
r45080 r56876 632 632 633 633 /** 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 634 656 * Adds theme data to cache. 635 657 * … … 1609 1631 return strnatcasecmp( $a->name_translated, $b->name_translated ); 1610 1632 } 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1611 1645 } -
branches/5.2/src/wp-includes/media.php
r55789 r56876 1748 1748 } 1749 1749 } elseif ( ! empty( $atts['exclude'] ) ) { 1750 $attachments = get_children( 1750 $post_parent_id = $id; 1751 $attachments = get_children( 1751 1752 array( 1752 1753 'post_parent' => $id, … … 1760 1761 ); 1761 1762 } else { 1762 $attachments = get_children( 1763 $post_parent_id = $id; 1764 $attachments = get_children( 1763 1765 array( 1764 1766 'post_parent' => $id, … … 1770 1772 ) 1771 1773 ); 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1772 1785 } 1773 1786 … … 2079 2092 } 2080 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2081 2103 if ( empty( $attachments ) ) { 2082 2104 return ''; -
branches/5.2/src/wp-includes/rest-api.php
r46545 r56876 842 842 843 843 if ( ! $result ) { 844 844 845 return new WP_Error( 'rest_cookie_invalid_nonce', __( 'Cookie nonce is invalid' ), array( 'status' => 403 ) ); 845 846 } -
branches/5.2/src/wp-includes/rest-api/class-wp-rest-server.php
r43582 r56876 240 240 241 241 /** 242 * Send nocache headers on authenticated requests.243 *244 * @since 4.4.0245 *246 * @param bool $rest_send_nocache_headers Whether to send no-cache headers.247 */248 $send_no_cache_headers = apply_filters( 'rest_send_nocache_headers', is_user_logged_in() );249 if ( $send_no_cache_headers ) {250 foreach ( wp_get_nocache_headers() as $header => $header_value ) {251 if ( empty( $header_value ) ) {252 $this->remove_header( $header );253 } else {254 $this->send_header( $header, $header_value );255 }256 }257 }258 259 /**260 242 * Filters whether the REST API is enabled. 261 243 * … … 318 300 * header. 319 301 */ 302 320 303 if ( isset( $_GET['_method'] ) ) { 321 304 $request->set_method( $_GET['_method'] ); 322 305 } elseif ( isset( $_SERVER['HTTP_X_HTTP_METHOD_OVERRIDE'] ) ) { 323 306 $request->set_method( $_SERVER['HTTP_X_HTTP_METHOD_OVERRIDE'] ); 307 324 308 } 325 309 … … 379 363 */ 380 364 $served = apply_filters( 'rest_pre_serve_request', false, $result, $request, $this ); 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 381 387 382 388 if ( ! $served ) { -
branches/5.2/src/wp-includes/rest-api/endpoints/class-wp-rest-users-controller.php
r45267 r56876 284 284 285 285 if ( ! empty( $prepared_args['search'] ) ) { 286 287 288 286 289 $prepared_args['search'] = '*' . $prepared_args['search'] . '*'; 287 290 } -
branches/5.2/src/wp-includes/shortcodes.php
r43549 r56876 161 161 162 162 /** 163 * Search content for shortcodes and filter shortcodes through their hooks. 163 * Returns a list of registered shortcode names found in the given content. 164 * 165 * Example usage: 166 * 167 * get_shortcode_tags_in_content( '[audio src="file.mp3"][/audio] [foo] [gallery ids="1,2,3"]' ); 168 * // array( 'audio', 'gallery' ) 169 * 170 * @since 6.3.2 171 * 172 * @param string $content The content to check. 173 * @return string[] An array of registered shortcode names found in the content. 174 */ 175 function get_shortcode_tags_in_content( $content ) { 176 if ( false === strpos( $content, '[' ) ) { 177 return array(); 178 } 179 180 preg_match_all( '/' . get_shortcode_regex() . '/', $content, $matches, PREG_SET_ORDER ); 181 if ( empty( $matches ) ) { 182 return array(); 183 } 184 185 $tags = array(); 186 foreach ( $matches as $shortcode ) { 187 $tags[] = $shortcode[2]; 188 189 if ( ! empty( $shortcode[5] ) ) { 190 $deep_tags = get_shortcode_tags_in_content( $shortcode[5] ); 191 if ( ! empty( $deep_tags ) ) { 192 $tags = array_merge( $tags, $deep_tags ); 193 } 194 } 195 } 196 197 return $tags; 198 } 199 200 /** 201 * Searches content for shortcodes and filter shortcodes through their hooks. 164 202 * 165 203 * If there are no shortcode tags defined, then the content will be returned
Note: See TracChangeset
for help on using the changeset viewer.