[ Index ] |
PHP Cross Reference of WordPress |
[Summary view] [Print] [Text view]
1 <?php 2 /** 3 * Deprecated functions from past WordPress versions. You shouldn't use these 4 * functions and look for the alternatives instead. The functions will be 5 * removed in a later version. 6 * 7 * @package WordPress 8 * @subpackage Deprecated 9 */ 10 11 /* 12 * Deprecated functions come here to die. 13 */ 14 15 /** 16 * Retrieves all post data for a given post. 17 * 18 * @since 0.71 19 * @deprecated 1.5.1 Use get_post() 20 * @see get_post() 21 * 22 * @param int $postid Post ID. 23 * @return array Post data. 24 */ 25 function get_postdata($postid) { 26 _deprecated_function( __FUNCTION__, '1.5.1', 'get_post()' ); 27 28 $post = get_post($postid); 29 30 $postdata = array ( 31 'ID' => $post->ID, 32 'Author_ID' => $post->post_author, 33 'Date' => $post->post_date, 34 'Content' => $post->post_content, 35 'Excerpt' => $post->post_excerpt, 36 'Title' => $post->post_title, 37 'Category' => $post->post_category, 38 'post_status' => $post->post_status, 39 'comment_status' => $post->comment_status, 40 'ping_status' => $post->ping_status, 41 'post_password' => $post->post_password, 42 'to_ping' => $post->to_ping, 43 'pinged' => $post->pinged, 44 'post_type' => $post->post_type, 45 'post_name' => $post->post_name 46 ); 47 48 return $postdata; 49 } 50 51 /** 52 * Sets up the WordPress Loop. 53 * 54 * Use The Loop instead. 55 * 56 * @link https://developer.wordpress.org/themes/basics/the-loop/ 57 * 58 * @since 1.0.1 59 * @deprecated 1.5.0 60 */ 61 function start_wp() { 62 global $wp_query; 63 64 _deprecated_function( __FUNCTION__, '1.5.0', __('new WordPress Loop') ); 65 66 // Since the old style loop is being used, advance the query iterator here. 67 $wp_query->next_post(); 68 69 setup_postdata( get_post() ); 70 } 71 72 /** 73 * Returns or prints a category ID. 74 * 75 * @since 0.71 76 * @deprecated 0.71 Use get_the_category() 77 * @see get_the_category() 78 * 79 * @param bool $display Optional. Whether to display the output. Default true. 80 * @return int Category ID. 81 */ 82 function the_category_ID($display = true) { 83 _deprecated_function( __FUNCTION__, '0.71', 'get_the_category()' ); 84 85 // Grab the first cat in the list. 86 $categories = get_the_category(); 87 $cat = $categories[0]->term_id; 88 89 if ( $display ) 90 echo $cat; 91 92 return $cat; 93 } 94 95 /** 96 * Prints a category with optional text before and after. 97 * 98 * @since 0.71 99 * @deprecated 0.71 Use get_the_category_by_ID() 100 * @see get_the_category_by_ID() 101 * 102 * @param string $before Optional. Text to display before the category. Default empty. 103 * @param string $after Optional. Text to display after the category. Default empty. 104 */ 105 function the_category_head( $before = '', $after = '' ) { 106 global $currentcat, $previouscat; 107 108 _deprecated_function( __FUNCTION__, '0.71', 'get_the_category_by_ID()' ); 109 110 // Grab the first cat in the list. 111 $categories = get_the_category(); 112 $currentcat = $categories[0]->category_id; 113 if ( $currentcat != $previouscat ) { 114 echo $before; 115 echo get_the_category_by_ID($currentcat); 116 echo $after; 117 $previouscat = $currentcat; 118 } 119 } 120 121 /** 122 * Prints a link to the previous post. 123 * 124 * @since 1.5.0 125 * @deprecated 2.0.0 Use previous_post_link() 126 * @see previous_post_link() 127 * 128 * @param string $format 129 * @param string $previous 130 * @param string $title 131 * @param string $in_same_cat 132 * @param int $limitprev 133 * @param string $excluded_categories 134 */ 135 function previous_post($format='%', $previous='previous post: ', $title='yes', $in_same_cat='no', $limitprev=1, $excluded_categories='') { 136 137 _deprecated_function( __FUNCTION__, '2.0.0', 'previous_post_link()' ); 138 139 if ( empty($in_same_cat) || 'no' == $in_same_cat ) 140 $in_same_cat = false; 141 else 142 $in_same_cat = true; 143 144 $post = get_previous_post($in_same_cat, $excluded_categories); 145 146 if ( !$post ) 147 return; 148 149 $string = '<a href="'.get_permalink($post->ID).'">'.$previous; 150 if ( 'yes' == $title ) 151 $string .= apply_filters('the_title', $post->post_title, $post->ID); 152 $string .= '</a>'; 153 $format = str_replace('%', $string, $format); 154 echo $format; 155 } 156 157 /** 158 * Prints link to the next post. 159 * 160 * @since 0.71 161 * @deprecated 2.0.0 Use next_post_link() 162 * @see next_post_link() 163 * 164 * @param string $format 165 * @param string $next 166 * @param string $title 167 * @param string $in_same_cat 168 * @param int $limitnext 169 * @param string $excluded_categories 170 */ 171 function next_post($format='%', $next='next post: ', $title='yes', $in_same_cat='no', $limitnext=1, $excluded_categories='') { 172 _deprecated_function( __FUNCTION__, '2.0.0', 'next_post_link()' ); 173 174 if ( empty($in_same_cat) || 'no' == $in_same_cat ) 175 $in_same_cat = false; 176 else 177 $in_same_cat = true; 178 179 $post = get_next_post($in_same_cat, $excluded_categories); 180 181 if ( !$post ) 182 return; 183 184 $string = '<a href="'.get_permalink($post->ID).'">'.$next; 185 if ( 'yes' == $title ) 186 $string .= apply_filters('the_title', $post->post_title, $post->ID); 187 $string .= '</a>'; 188 $format = str_replace('%', $string, $format); 189 echo $format; 190 } 191 192 /** 193 * Whether user can create a post. 194 * 195 * @since 1.5.0 196 * @deprecated 2.0.0 Use current_user_can() 197 * @see current_user_can() 198 * 199 * @param int $user_id 200 * @param int $blog_id Not Used 201 * @param int $category_id Not Used 202 * @return bool 203 */ 204 function user_can_create_post($user_id, $blog_id = 1, $category_id = 'None') { 205 _deprecated_function( __FUNCTION__, '2.0.0', 'current_user_can()' ); 206 207 $author_data = get_userdata($user_id); 208 return ($author_data->user_level > 1); 209 } 210 211 /** 212 * Whether user can create a post. 213 * 214 * @since 1.5.0 215 * @deprecated 2.0.0 Use current_user_can() 216 * @see current_user_can() 217 * 218 * @param int $user_id 219 * @param int $blog_id Not Used 220 * @param int $category_id Not Used 221 * @return bool 222 */ 223 function user_can_create_draft($user_id, $blog_id = 1, $category_id = 'None') { 224 _deprecated_function( __FUNCTION__, '2.0.0', 'current_user_can()' ); 225 226 $author_data = get_userdata($user_id); 227 return ($author_data->user_level >= 1); 228 } 229 230 /** 231 * Whether user can edit a post. 232 * 233 * @since 1.5.0 234 * @deprecated 2.0.0 Use current_user_can() 235 * @see current_user_can() 236 * 237 * @param int $user_id 238 * @param int $post_id 239 * @param int $blog_id Not Used 240 * @return bool 241 */ 242 function user_can_edit_post($user_id, $post_id, $blog_id = 1) { 243 _deprecated_function( __FUNCTION__, '2.0.0', 'current_user_can()' ); 244 245 $author_data = get_userdata($user_id); 246 $post = get_post($post_id); 247 $post_author_data = get_userdata($post->post_author); 248 249 if ( (($user_id == $post_author_data->ID) && !($post->post_status == 'publish' && $author_data->user_level < 2)) 250 || ($author_data->user_level > $post_author_data->user_level) 251 || ($author_data->user_level >= 10) ) { 252 return true; 253 } else { 254 return false; 255 } 256 } 257 258 /** 259 * Whether user can delete a post. 260 * 261 * @since 1.5.0 262 * @deprecated 2.0.0 Use current_user_can() 263 * @see current_user_can() 264 * 265 * @param int $user_id 266 * @param int $post_id 267 * @param int $blog_id Not Used 268 * @return bool 269 */ 270 function user_can_delete_post($user_id, $post_id, $blog_id = 1) { 271 _deprecated_function( __FUNCTION__, '2.0.0', 'current_user_can()' ); 272 273 // Right now if one can edit, one can delete. 274 return user_can_edit_post($user_id, $post_id, $blog_id); 275 } 276 277 /** 278 * Whether user can set new posts' dates. 279 * 280 * @since 1.5.0 281 * @deprecated 2.0.0 Use current_user_can() 282 * @see current_user_can() 283 * 284 * @param int $user_id 285 * @param int $blog_id Not Used 286 * @param int $category_id Not Used 287 * @return bool 288 */ 289 function user_can_set_post_date($user_id, $blog_id = 1, $category_id = 'None') { 290 _deprecated_function( __FUNCTION__, '2.0.0', 'current_user_can()' ); 291 292 $author_data = get_userdata($user_id); 293 return (($author_data->user_level > 4) && user_can_create_post($user_id, $blog_id, $category_id)); 294 } 295 296 /** 297 * Whether user can delete a post. 298 * 299 * @since 1.5.0 300 * @deprecated 2.0.0 Use current_user_can() 301 * @see current_user_can() 302 * 303 * @param int $user_id 304 * @param int $post_id 305 * @param int $blog_id Not Used 306 * @return bool returns true if $user_id can edit $post_id's date 307 */ 308 function user_can_edit_post_date($user_id, $post_id, $blog_id = 1) { 309 _deprecated_function( __FUNCTION__, '2.0.0', 'current_user_can()' ); 310 311 $author_data = get_userdata($user_id); 312 return (($author_data->user_level > 4) && user_can_edit_post($user_id, $post_id, $blog_id)); 313 } 314 315 /** 316 * Whether user can delete a post. 317 * 318 * @since 1.5.0 319 * @deprecated 2.0.0 Use current_user_can() 320 * @see current_user_can() 321 * 322 * @param int $user_id 323 * @param int $post_id 324 * @param int $blog_id Not Used 325 * @return bool returns true if $user_id can edit $post_id's comments 326 */ 327 function user_can_edit_post_comments($user_id, $post_id, $blog_id = 1) { 328 _deprecated_function( __FUNCTION__, '2.0.0', 'current_user_can()' ); 329 330 // Right now if one can edit a post, one can edit comments made on it. 331 return user_can_edit_post($user_id, $post_id, $blog_id); 332 } 333 334 /** 335 * Whether user can delete a post. 336 * 337 * @since 1.5.0 338 * @deprecated 2.0.0 Use current_user_can() 339 * @see current_user_can() 340 * 341 * @param int $user_id 342 * @param int $post_id 343 * @param int $blog_id Not Used 344 * @return bool returns true if $user_id can delete $post_id's comments 345 */ 346 function user_can_delete_post_comments($user_id, $post_id, $blog_id = 1) { 347 _deprecated_function( __FUNCTION__, '2.0.0', 'current_user_can()' ); 348 349 // Right now if one can edit comments, one can delete comments. 350 return user_can_edit_post_comments($user_id, $post_id, $blog_id); 351 } 352 353 /** 354 * Can user can edit other user. 355 * 356 * @since 1.5.0 357 * @deprecated 2.0.0 Use current_user_can() 358 * @see current_user_can() 359 * 360 * @param int $user_id 361 * @param int $other_user 362 * @return bool 363 */ 364 function user_can_edit_user($user_id, $other_user) { 365 _deprecated_function( __FUNCTION__, '2.0.0', 'current_user_can()' ); 366 367 $user = get_userdata($user_id); 368 $other = get_userdata($other_user); 369 if ( $user->user_level > $other->user_level || $user->user_level > 8 || $user->ID == $other->ID ) 370 return true; 371 else 372 return false; 373 } 374 375 /** 376 * Gets the links associated with category $cat_name. 377 * 378 * @since 0.71 379 * @deprecated 2.1.0 Use get_bookmarks() 380 * @see get_bookmarks() 381 * 382 * @param string $cat_name Optional. The category name to use. If no match is found, uses all. 383 * Default 'noname'. 384 * @param string $before Optional. The HTML to output before the link. Default empty. 385 * @param string $after Optional. The HTML to output after the link. Default '<br />'. 386 * @param string $between Optional. The HTML to output between the link/image and its description. 387 * Not used if no image or $show_images is true. Default ' '. 388 * @param bool $show_images Optional. Whether to show images (if defined). Default true. 389 * @param string $orderby Optional. The order to output the links. E.g. 'id', 'name', 'url', 390 * 'description', 'rating', or 'owner'. Default 'id'. 391 * If you start the name with an underscore, the order will be reversed. 392 * Specifying 'rand' as the order will return links in a random order. 393 * @param bool $show_description Optional. Whether to show the description if show_images=false/not defined. 394 * Default true. 395 * @param bool $show_rating Optional. Show rating stars/chars. Default false. 396 * @param int $limit Optional. Limit to X entries. If not specified, all entries are shown. 397 * Default -1. 398 * @param int $show_updated Optional. Whether to show last updated timestamp. Default 0. 399 */ 400 function get_linksbyname($cat_name = "noname", $before = '', $after = '<br />', $between = " ", $show_images = true, $orderby = 'id', 401 $show_description = true, $show_rating = false, 402 $limit = -1, $show_updated = 0) { 403 _deprecated_function( __FUNCTION__, '2.1.0', 'get_bookmarks()' ); 404 405 $cat_id = -1; 406 $cat = get_term_by('name', $cat_name, 'link_category'); 407 if ( $cat ) 408 $cat_id = $cat->term_id; 409 410 get_links($cat_id, $before, $after, $between, $show_images, $orderby, $show_description, $show_rating, $limit, $show_updated); 411 } 412 413 /** 414 * Gets the links associated with the named category. 415 * 416 * @since 1.0.1 417 * @deprecated 2.1.0 Use wp_list_bookmarks() 418 * @see wp_list_bookmarks() 419 * 420 * @param string $category The category to use. 421 * @param string $args 422 * @return string|null 423 */ 424 function wp_get_linksbyname($category, $args = '') { 425 _deprecated_function(__FUNCTION__, '2.1.0', 'wp_list_bookmarks()'); 426 427 $defaults = array( 428 'after' => '<br />', 429 'before' => '', 430 'categorize' => 0, 431 'category_after' => '', 432 'category_before' => '', 433 'category_name' => $category, 434 'show_description' => 1, 435 'title_li' => '', 436 ); 437 438 $parsed_args = wp_parse_args( $args, $defaults ); 439 440 return wp_list_bookmarks($parsed_args); 441 } 442 443 /** 444 * Gets an array of link objects associated with category $cat_name. 445 * 446 * $links = get_linkobjectsbyname( 'fred' ); 447 * foreach ( $links as $link ) { 448 * echo '<li>' . $link->link_name . '</li>'; 449 * } 450 * 451 * @since 1.0.1 452 * @deprecated 2.1.0 Use get_bookmarks() 453 * @see get_bookmarks() 454 * 455 * @param string $cat_name Optional. The category name to use. If no match is found, uses all. 456 * Default 'noname'. 457 * @param string $orderby Optional. The order to output the links. E.g. 'id', 'name', 'url', 458 * 'description', 'rating', or 'owner'. Default 'name'. 459 * If you start the name with an underscore, the order will be reversed. 460 * Specifying 'rand' as the order will return links in a random order. 461 * @param int $limit Optional. Limit to X entries. If not specified, all entries are shown. 462 * Default -1. 463 * @return array 464 */ 465 function get_linkobjectsbyname($cat_name = "noname" , $orderby = 'name', $limit = -1) { 466 _deprecated_function( __FUNCTION__, '2.1.0', 'get_bookmarks()' ); 467 468 $cat_id = -1; 469 $cat = get_term_by('name', $cat_name, 'link_category'); 470 if ( $cat ) 471 $cat_id = $cat->term_id; 472 473 return get_linkobjects($cat_id, $orderby, $limit); 474 } 475 476 /** 477 * Gets an array of link objects associated with category n. 478 * 479 * Usage: 480 * 481 * $links = get_linkobjects(1); 482 * if ($links) { 483 * foreach ($links as $link) { 484 * echo '<li>'.$link->link_name.'<br />'.$link->link_description.'</li>'; 485 * } 486 * } 487 * 488 * Fields are: 489 * 490 * - link_id 491 * - link_url 492 * - link_name 493 * - link_image 494 * - link_target 495 * - link_category 496 * - link_description 497 * - link_visible 498 * - link_owner 499 * - link_rating 500 * - link_updated 501 * - link_rel 502 * - link_notes 503 * 504 * @since 1.0.1 505 * @deprecated 2.1.0 Use get_bookmarks() 506 * @see get_bookmarks() 507 * 508 * @param int $category Optional. The category to use. If no category supplied, uses all. 509 * Default 0. 510 * @param string $orderby Optional. The order to output the links. E.g. 'id', 'name', 'url', 511 * 'description', 'rating', or 'owner'. Default 'name'. 512 * If you start the name with an underscore, the order will be reversed. 513 * Specifying 'rand' as the order will return links in a random order. 514 * @param int $limit Optional. Limit to X entries. If not specified, all entries are shown. 515 * Default 0. 516 * @return array 517 */ 518 function get_linkobjects($category = 0, $orderby = 'name', $limit = 0) { 519 _deprecated_function( __FUNCTION__, '2.1.0', 'get_bookmarks()' ); 520 521 $links = get_bookmarks( array( 'category' => $category, 'orderby' => $orderby, 'limit' => $limit ) ) ; 522 523 $links_array = array(); 524 foreach ($links as $link) 525 $links_array[] = $link; 526 527 return $links_array; 528 } 529 530 /** 531 * Gets the links associated with category 'cat_name' and display rating stars/chars. 532 * 533 * @since 0.71 534 * @deprecated 2.1.0 Use get_bookmarks() 535 * @see get_bookmarks() 536 * 537 * @param string $cat_name Optional. The category name to use. If no match is found, uses all. 538 * Default 'noname'. 539 * @param string $before Optional. The HTML to output before the link. Default empty. 540 * @param string $after Optional. The HTML to output after the link. Default '<br />'. 541 * @param string $between Optional. The HTML to output between the link/image and its description. 542 * Not used if no image or $show_images is true. Default ' '. 543 * @param bool $show_images Optional. Whether to show images (if defined). Default true. 544 * @param string $orderby Optional. The order to output the links. E.g. 'id', 'name', 'url', 545 * 'description', 'rating', or 'owner'. Default 'id'. 546 * If you start the name with an underscore, the order will be reversed. 547 * Specifying 'rand' as the order will return links in a random order. 548 * @param bool $show_description Optional. Whether to show the description if show_images=false/not defined. 549 * Default true. 550 * @param int $limit Optional. Limit to X entries. If not specified, all entries are shown. 551 * Default -1. 552 * @param int $show_updated Optional. Whether to show last updated timestamp. Default 0. 553 */ 554 function get_linksbyname_withrating($cat_name = "noname", $before = '', $after = '<br />', $between = " ", 555 $show_images = true, $orderby = 'id', $show_description = true, $limit = -1, $show_updated = 0) { 556 _deprecated_function( __FUNCTION__, '2.1.0', 'get_bookmarks()' ); 557 558 get_linksbyname($cat_name, $before, $after, $between, $show_images, $orderby, $show_description, true, $limit, $show_updated); 559 } 560 561 /** 562 * Gets the links associated with category n and display rating stars/chars. 563 * 564 * @since 0.71 565 * @deprecated 2.1.0 Use get_bookmarks() 566 * @see get_bookmarks() 567 * 568 * @param int $category Optional. The category to use. If no category supplied, uses all. 569 * Default 0. 570 * @param string $before Optional. The HTML to output before the link. Default empty. 571 * @param string $after Optional. The HTML to output after the link. Default '<br />'. 572 * @param string $between Optional. The HTML to output between the link/image and its description. 573 * Not used if no image or $show_images is true. Default ' '. 574 * @param bool $show_images Optional. Whether to show images (if defined). Default true. 575 * @param string $orderby Optional. The order to output the links. E.g. 'id', 'name', 'url', 576 * 'description', 'rating', or 'owner'. Default 'id'. 577 * If you start the name with an underscore, the order will be reversed. 578 * Specifying 'rand' as the order will return links in a random order. 579 * @param bool $show_description Optional. Whether to show the description if show_images=false/not defined. 580 * Default true. 581 * @param int $limit Optional. Limit to X entries. If not specified, all entries are shown. 582 * Default -1. 583 * @param int $show_updated Optional. Whether to show last updated timestamp. Default 0. 584 */ 585 function get_links_withrating($category = -1, $before = '', $after = '<br />', $between = " ", $show_images = true, 586 $orderby = 'id', $show_description = true, $limit = -1, $show_updated = 0) { 587 _deprecated_function( __FUNCTION__, '2.1.0', 'get_bookmarks()' ); 588 589 get_links($category, $before, $after, $between, $show_images, $orderby, $show_description, true, $limit, $show_updated); 590 } 591 592 /** 593 * Gets the auto_toggle setting. 594 * 595 * @since 0.71 596 * @deprecated 2.1.0 597 * 598 * @param int $id The category to get. If no category supplied uses 0 599 * @return int Only returns 0. 600 */ 601 function get_autotoggle($id = 0) { 602 _deprecated_function( __FUNCTION__, '2.1.0' ); 603 return 0; 604 } 605 606 /** 607 * Lists categories. 608 * 609 * @since 0.71 610 * @deprecated 2.1.0 Use wp_list_categories() 611 * @see wp_list_categories() 612 * 613 * @param int $optionall 614 * @param string $all 615 * @param string $sort_column 616 * @param string $sort_order 617 * @param string $file 618 * @param bool $list 619 * @param int $optiondates 620 * @param int $optioncount 621 * @param int $hide_empty 622 * @param int $use_desc_for_title 623 * @param bool $children 624 * @param int $child_of 625 * @param int $categories 626 * @param int $recurse 627 * @param string $feed 628 * @param string $feed_image 629 * @param string $exclude 630 * @param bool $hierarchical 631 * @return null|false 632 */ 633 function list_cats($optionall = 1, $all = 'All', $sort_column = 'ID', $sort_order = 'asc', $file = '', $list = true, $optiondates = 0, 634 $optioncount = 0, $hide_empty = 1, $use_desc_for_title = 1, $children=false, $child_of=0, $categories=0, 635 $recurse=0, $feed = '', $feed_image = '', $exclude = '', $hierarchical=false) { 636 _deprecated_function( __FUNCTION__, '2.1.0', 'wp_list_categories()' ); 637 638 $query = compact('optionall', 'all', 'sort_column', 'sort_order', 'file', 'list', 'optiondates', 'optioncount', 'hide_empty', 'use_desc_for_title', 'children', 639 'child_of', 'categories', 'recurse', 'feed', 'feed_image', 'exclude', 'hierarchical'); 640 return wp_list_cats($query); 641 } 642 643 /** 644 * Lists categories. 645 * 646 * @since 1.2.0 647 * @deprecated 2.1.0 Use wp_list_categories() 648 * @see wp_list_categories() 649 * 650 * @param string|array $args 651 * @return null|string|false 652 */ 653 function wp_list_cats($args = '') { 654 _deprecated_function( __FUNCTION__, '2.1.0', 'wp_list_categories()' ); 655 656 $parsed_args = wp_parse_args( $args ); 657 658 // Map to new names. 659 if ( isset($parsed_args['optionall']) && isset($parsed_args['all'])) 660 $parsed_args['show_option_all'] = $parsed_args['all']; 661 if ( isset($parsed_args['sort_column']) ) 662 $parsed_args['orderby'] = $parsed_args['sort_column']; 663 if ( isset($parsed_args['sort_order']) ) 664 $parsed_args['order'] = $parsed_args['sort_order']; 665 if ( isset($parsed_args['optiondates']) ) 666 $parsed_args['show_last_update'] = $parsed_args['optiondates']; 667 if ( isset($parsed_args['optioncount']) ) 668 $parsed_args['show_count'] = $parsed_args['optioncount']; 669 if ( isset($parsed_args['list']) ) 670 $parsed_args['style'] = $parsed_args['list'] ? 'list' : 'break'; 671 $parsed_args['title_li'] = ''; 672 673 return wp_list_categories($parsed_args); 674 } 675 676 /** 677 * Deprecated method for generating a drop-down of categories. 678 * 679 * @since 0.71 680 * @deprecated 2.1.0 Use wp_dropdown_categories() 681 * @see wp_dropdown_categories() 682 * 683 * @param int $optionall 684 * @param string $all 685 * @param string $orderby 686 * @param string $order 687 * @param int $show_last_update 688 * @param int $show_count 689 * @param int $hide_empty 690 * @param bool $optionnone 691 * @param int $selected 692 * @param int $exclude 693 * @return string 694 */ 695 function dropdown_cats($optionall = 1, $all = 'All', $orderby = 'ID', $order = 'asc', 696 $show_last_update = 0, $show_count = 0, $hide_empty = 1, $optionnone = false, 697 $selected = 0, $exclude = 0) { 698 _deprecated_function( __FUNCTION__, '2.1.0', 'wp_dropdown_categories()' ); 699 700 $show_option_all = ''; 701 if ( $optionall ) 702 $show_option_all = $all; 703 704 $show_option_none = ''; 705 if ( $optionnone ) 706 $show_option_none = __('None'); 707 708 $vars = compact('show_option_all', 'show_option_none', 'orderby', 'order', 709 'show_last_update', 'show_count', 'hide_empty', 'selected', 'exclude'); 710 $query = add_query_arg($vars, ''); 711 return wp_dropdown_categories($query); 712 } 713 714 /** 715 * Lists authors. 716 * 717 * @since 1.2.0 718 * @deprecated 2.1.0 Use wp_list_authors() 719 * @see wp_list_authors() 720 * 721 * @param bool $optioncount 722 * @param bool $exclude_admin 723 * @param bool $show_fullname 724 * @param bool $hide_empty 725 * @param string $feed 726 * @param string $feed_image 727 * @return null|string 728 */ 729 function list_authors($optioncount = false, $exclude_admin = true, $show_fullname = false, $hide_empty = true, $feed = '', $feed_image = '') { 730 _deprecated_function( __FUNCTION__, '2.1.0', 'wp_list_authors()' ); 731 732 $args = compact('optioncount', 'exclude_admin', 'show_fullname', 'hide_empty', 'feed', 'feed_image'); 733 return wp_list_authors($args); 734 } 735 736 /** 737 * Retrieves a list of post categories. 738 * 739 * @since 1.0.1 740 * @deprecated 2.1.0 Use wp_get_post_categories() 741 * @see wp_get_post_categories() 742 * 743 * @param int $blogid Not Used 744 * @param int $post_ID 745 * @return array 746 */ 747 function wp_get_post_cats($blogid = '1', $post_ID = 0) { 748 _deprecated_function( __FUNCTION__, '2.1.0', 'wp_get_post_categories()' ); 749 return wp_get_post_categories($post_ID); 750 } 751 752 /** 753 * Sets the categories that the post ID belongs to. 754 * 755 * @since 1.0.1 756 * @deprecated 2.1.0 757 * @deprecated Use wp_set_post_categories() 758 * @see wp_set_post_categories() 759 * 760 * @param int $blogid Not used 761 * @param int $post_ID 762 * @param array $post_categories 763 * @return bool|mixed 764 */ 765 function wp_set_post_cats($blogid = '1', $post_ID = 0, $post_categories = array()) { 766 _deprecated_function( __FUNCTION__, '2.1.0', 'wp_set_post_categories()' ); 767 return wp_set_post_categories($post_ID, $post_categories); 768 } 769 770 /** 771 * Retrieves a list of archives. 772 * 773 * @since 0.71 774 * @deprecated 2.1.0 Use wp_get_archives() 775 * @see wp_get_archives() 776 * 777 * @param string $type 778 * @param string $limit 779 * @param string $format 780 * @param string $before 781 * @param string $after 782 * @param bool $show_post_count 783 * @return string|null 784 */ 785 function get_archives($type='', $limit='', $format='html', $before = '', $after = '', $show_post_count = false) { 786 _deprecated_function( __FUNCTION__, '2.1.0', 'wp_get_archives()' ); 787 $args = compact('type', 'limit', 'format', 'before', 'after', 'show_post_count'); 788 return wp_get_archives($args); 789 } 790 791 /** 792 * Returns or Prints link to the author's posts. 793 * 794 * @since 1.2.0 795 * @deprecated 2.1.0 Use get_author_posts_url() 796 * @see get_author_posts_url() 797 * 798 * @param bool $display 799 * @param int $author_id 800 * @param string $author_nicename Optional. 801 * @return string|null 802 */ 803 function get_author_link($display, $author_id, $author_nicename = '') { 804 _deprecated_function( __FUNCTION__, '2.1.0', 'get_author_posts_url()' ); 805 806 $link = get_author_posts_url($author_id, $author_nicename); 807 808 if ( $display ) 809 echo $link; 810 return $link; 811 } 812 813 /** 814 * Print list of pages based on arguments. 815 * 816 * @since 0.71 817 * @deprecated 2.1.0 Use wp_link_pages() 818 * @see wp_link_pages() 819 * 820 * @param string $before 821 * @param string $after 822 * @param string $next_or_number 823 * @param string $nextpagelink 824 * @param string $previouspagelink 825 * @param string $pagelink 826 * @param string $more_file 827 * @return string 828 */ 829 function link_pages($before='<br />', $after='<br />', $next_or_number='number', $nextpagelink='next page', $previouspagelink='previous page', 830 $pagelink='%', $more_file='') { 831 _deprecated_function( __FUNCTION__, '2.1.0', 'wp_link_pages()' ); 832 833 $args = compact('before', 'after', 'next_or_number', 'nextpagelink', 'previouspagelink', 'pagelink', 'more_file'); 834 return wp_link_pages($args); 835 } 836 837 /** 838 * Get value based on option. 839 * 840 * @since 0.71 841 * @deprecated 2.1.0 Use get_option() 842 * @see get_option() 843 * 844 * @param string $option 845 * @return string 846 */ 847 function get_settings($option) { 848 _deprecated_function( __FUNCTION__, '2.1.0', 'get_option()' ); 849 850 return get_option($option); 851 } 852 853 /** 854 * Print the permalink of the current post in the loop. 855 * 856 * @since 0.71 857 * @deprecated 1.2.0 Use the_permalink() 858 * @see the_permalink() 859 */ 860 function permalink_link() { 861 _deprecated_function( __FUNCTION__, '1.2.0', 'the_permalink()' ); 862 the_permalink(); 863 } 864 865 /** 866 * Print the permalink to the RSS feed. 867 * 868 * @since 0.71 869 * @deprecated 2.3.0 Use the_permalink_rss() 870 * @see the_permalink_rss() 871 * 872 * @param string $deprecated 873 */ 874 function permalink_single_rss($deprecated = '') { 875 _deprecated_function( __FUNCTION__, '2.3.0', 'the_permalink_rss()' ); 876 the_permalink_rss(); 877 } 878 879 /** 880 * Gets the links associated with category. 881 * 882 * @since 1.0.1 883 * @deprecated 2.1.0 Use wp_list_bookmarks() 884 * @see wp_list_bookmarks() 885 * 886 * @param string $args a query string 887 * @return null|string 888 */ 889 function wp_get_links($args = '') { 890 _deprecated_function( __FUNCTION__, '2.1.0', 'wp_list_bookmarks()' ); 891 892 if ( strpos( $args, '=' ) === false ) { 893 $cat_id = $args; 894 $args = add_query_arg( 'category', $cat_id, $args ); 895 } 896 897 $defaults = array( 898 'after' => '<br />', 899 'before' => '', 900 'between' => ' ', 901 'categorize' => 0, 902 'category' => '', 903 'echo' => true, 904 'limit' => -1, 905 'orderby' => 'name', 906 'show_description' => true, 907 'show_images' => true, 908 'show_rating' => false, 909 'show_updated' => true, 910 'title_li' => '', 911 ); 912 913 $parsed_args = wp_parse_args( $args, $defaults ); 914 915 return wp_list_bookmarks($parsed_args); 916 } 917 918 /** 919 * Gets the links associated with category by ID. 920 * 921 * @since 0.71 922 * @deprecated 2.1.0 Use get_bookmarks() 923 * @see get_bookmarks() 924 * 925 * @param int $category Optional. The category to use. If no category supplied uses all. 926 * Default 0. 927 * @param string $before Optional. The HTML to output before the link. Default empty. 928 * @param string $after Optional. The HTML to output after the link. Default '<br />'. 929 * @param string $between Optional. The HTML to output between the link/image and its description. 930 * Not used if no image or $show_images is true. Default ' '. 931 * @param bool $show_images Optional. Whether to show images (if defined). Default true. 932 * @param string $orderby Optional. The order to output the links. E.g. 'id', 'name', 'url', 933 * 'description', 'rating', or 'owner'. Default 'name'. 934 * If you start the name with an underscore, the order will be reversed. 935 * Specifying 'rand' as the order will return links in a random order. 936 * @param bool $show_description Optional. Whether to show the description if show_images=false/not defined. 937 * Default true. 938 * @param bool $show_rating Optional. Show rating stars/chars. Default false. 939 * @param int $limit Optional. Limit to X entries. If not specified, all entries are shown. 940 * Default -1. 941 * @param int $show_updated Optional. Whether to show last updated timestamp. Default 1. 942 * @param bool $display Whether to display the results, or return them instead. 943 * @return null|string 944 */ 945 function get_links($category = -1, $before = '', $after = '<br />', $between = ' ', $show_images = true, $orderby = 'name', 946 $show_description = true, $show_rating = false, $limit = -1, $show_updated = 1, $display = true) { 947 _deprecated_function( __FUNCTION__, '2.1.0', 'get_bookmarks()' ); 948 949 $order = 'ASC'; 950 if ( substr($orderby, 0, 1) == '_' ) { 951 $order = 'DESC'; 952 $orderby = substr($orderby, 1); 953 } 954 955 if ( $category == -1 ) // get_bookmarks() uses '' to signify all categories. 956 $category = ''; 957 958 $results = get_bookmarks(array('category' => $category, 'orderby' => $orderby, 'order' => $order, 'show_updated' => $show_updated, 'limit' => $limit)); 959 960 if ( !$results ) 961 return; 962 963 $output = ''; 964 965 foreach ( (array) $results as $row ) { 966 if ( !isset($row->recently_updated) ) 967 $row->recently_updated = false; 968 $output .= $before; 969 if ( $show_updated && $row->recently_updated ) 970 $output .= get_option('links_recently_updated_prepend'); 971 $the_link = '#'; 972 if ( !empty($row->link_url) ) 973 $the_link = esc_url($row->link_url); 974 $rel = $row->link_rel; 975 if ( '' != $rel ) 976 $rel = ' rel="' . $rel . '"'; 977 978 $desc = esc_attr(sanitize_bookmark_field('link_description', $row->link_description, $row->link_id, 'display')); 979 $name = esc_attr(sanitize_bookmark_field('link_name', $row->link_name, $row->link_id, 'display')); 980 $title = $desc; 981 982 if ( $show_updated ) 983 if (substr($row->link_updated_f, 0, 2) != '00') 984 $title .= ' ('.__('Last updated') . ' ' . gmdate(get_option('links_updated_date_format'), $row->link_updated_f + (get_option('gmt_offset') * HOUR_IN_SECONDS)) . ')'; 985 986 if ( '' != $title ) 987 $title = ' title="' . $title . '"'; 988 989 $alt = ' alt="' . $name . '"'; 990 991 $target = $row->link_target; 992 if ( '' != $target ) 993 $target = ' target="' . $target . '"'; 994 995 $output .= '<a href="' . $the_link . '"' . $rel . $title . $target. '>'; 996 997 if ( $row->link_image != null && $show_images ) { 998 if ( strpos($row->link_image, 'http') !== false ) 999 $output .= "<img src=\"$row->link_image\" $alt $title />"; 1000 else // If it's a relative path. 1001 $output .= "<img src=\"" . get_option('siteurl') . "$row->link_image\" $alt $title />"; 1002 } else { 1003 $output .= $name; 1004 } 1005 1006 $output .= '</a>'; 1007 1008 if ( $show_updated && $row->recently_updated ) 1009 $output .= get_option('links_recently_updated_append'); 1010 1011 if ( $show_description && '' != $desc ) 1012 $output .= $between . $desc; 1013 1014 if ($show_rating) { 1015 $output .= $between . get_linkrating($row); 1016 } 1017 1018 $output .= "$after\n"; 1019 } // End while. 1020 1021 if ( !$display ) 1022 return $output; 1023 echo $output; 1024 } 1025 1026 /** 1027 * Output entire list of links by category. 1028 * 1029 * Output a list of all links, listed by category, using the settings in 1030 * $wpdb->linkcategories and output it as a nested HTML unordered list. 1031 * 1032 * @since 1.0.1 1033 * @deprecated 2.1.0 Use wp_list_bookmarks() 1034 * @see wp_list_bookmarks() 1035 * 1036 * @param string $order Sort link categories by 'name' or 'id' 1037 */ 1038 function get_links_list($order = 'name') { 1039 _deprecated_function( __FUNCTION__, '2.1.0', 'wp_list_bookmarks()' ); 1040 1041 $order = strtolower($order); 1042 1043 // Handle link category sorting. 1044 $direction = 'ASC'; 1045 if ( '_' == substr($order,0,1) ) { 1046 $direction = 'DESC'; 1047 $order = substr($order,1); 1048 } 1049 1050 if ( !isset($direction) ) 1051 $direction = ''; 1052 1053 $cats = get_categories(array('type' => 'link', 'orderby' => $order, 'order' => $direction, 'hierarchical' => 0)); 1054 1055 // Display each category. 1056 if ( $cats ) { 1057 foreach ( (array) $cats as $cat ) { 1058 // Handle each category. 1059 1060 // Display the category name. 1061 echo ' <li id="linkcat-' . $cat->term_id . '" class="linkcat"><h2>' . apply_filters('link_category', $cat->name ) . "</h2>\n\t<ul>\n"; 1062 // Call get_links() with all the appropriate params. 1063 get_links($cat->term_id, '<li>', "</li>", "\n", true, 'name', false); 1064 1065 // Close the last category. 1066 echo "\n\t</ul>\n</li>\n"; 1067 } 1068 } 1069 } 1070 1071 /** 1072 * Show the link to the links popup and the number of links. 1073 * 1074 * @since 0.71 1075 * @deprecated 2.1.0 1076 * 1077 * @param string $text the text of the link 1078 * @param int $width the width of the popup window 1079 * @param int $height the height of the popup window 1080 * @param string $file the page to open in the popup window 1081 * @param bool $count the number of links in the db 1082 */ 1083 function links_popup_script($text = 'Links', $width=400, $height=400, $file='links.all.php', $count = true) { 1084 _deprecated_function( __FUNCTION__, '2.1.0' ); 1085 } 1086 1087 /** 1088 * Legacy function that retrieved the value of a link's link_rating field. 1089 * 1090 * @since 1.0.1 1091 * @deprecated 2.1.0 Use sanitize_bookmark_field() 1092 * @see sanitize_bookmark_field() 1093 * 1094 * @param object $link Link object. 1095 * @return mixed Value of the 'link_rating' field, false otherwise. 1096 */ 1097 function get_linkrating( $link ) { 1098 _deprecated_function( __FUNCTION__, '2.1.0', 'sanitize_bookmark_field()' ); 1099 return sanitize_bookmark_field('link_rating', $link->link_rating, $link->link_id, 'display'); 1100 } 1101 1102 /** 1103 * Gets the name of category by ID. 1104 * 1105 * @since 0.71 1106 * @deprecated 2.1.0 Use get_category() 1107 * @see get_category() 1108 * 1109 * @param int $id The category to get. If no category supplied uses 0 1110 * @return string 1111 */ 1112 function get_linkcatname($id = 0) { 1113 _deprecated_function( __FUNCTION__, '2.1.0', 'get_category()' ); 1114 1115 $id = (int) $id; 1116 1117 if ( empty($id) ) 1118 return ''; 1119 1120 $cats = wp_get_link_cats($id); 1121 1122 if ( empty($cats) || ! is_array($cats) ) 1123 return ''; 1124 1125 $cat_id = (int) $cats[0]; // Take the first cat. 1126 1127 $cat = get_category($cat_id); 1128 return $cat->name; 1129 } 1130 1131 /** 1132 * Print RSS comment feed link. 1133 * 1134 * @since 1.0.1 1135 * @deprecated 2.5.0 Use post_comments_feed_link() 1136 * @see post_comments_feed_link() 1137 * 1138 * @param string $link_text 1139 */ 1140 function comments_rss_link($link_text = 'Comments RSS') { 1141 _deprecated_function( __FUNCTION__, '2.5.0', 'post_comments_feed_link()' ); 1142 post_comments_feed_link($link_text); 1143 } 1144 1145 /** 1146 * Print/Return link to category RSS2 feed. 1147 * 1148 * @since 1.2.0 1149 * @deprecated 2.5.0 Use get_category_feed_link() 1150 * @see get_category_feed_link() 1151 * 1152 * @param bool $display 1153 * @param int $cat_ID 1154 * @return string 1155 */ 1156 function get_category_rss_link($display = false, $cat_ID = 1) { 1157 _deprecated_function( __FUNCTION__, '2.5.0', 'get_category_feed_link()' ); 1158 1159 $link = get_category_feed_link($cat_ID, 'rss2'); 1160 1161 if ( $display ) 1162 echo $link; 1163 return $link; 1164 } 1165 1166 /** 1167 * Print/Return link to author RSS feed. 1168 * 1169 * @since 1.2.0 1170 * @deprecated 2.5.0 Use get_author_feed_link() 1171 * @see get_author_feed_link() 1172 * 1173 * @param bool $display 1174 * @param int $author_id 1175 * @return string 1176 */ 1177 function get_author_rss_link($display = false, $author_id = 1) { 1178 _deprecated_function( __FUNCTION__, '2.5.0', 'get_author_feed_link()' ); 1179 1180 $link = get_author_feed_link($author_id); 1181 if ( $display ) 1182 echo $link; 1183 return $link; 1184 } 1185 1186 /** 1187 * Return link to the post RSS feed. 1188 * 1189 * @since 1.5.0 1190 * @deprecated 2.2.0 Use get_post_comments_feed_link() 1191 * @see get_post_comments_feed_link() 1192 * 1193 * @return string 1194 */ 1195 function comments_rss() { 1196 _deprecated_function( __FUNCTION__, '2.2.0', 'get_post_comments_feed_link()' ); 1197 return esc_url( get_post_comments_feed_link() ); 1198 } 1199 1200 /** 1201 * An alias of wp_create_user(). 1202 * 1203 * @since 2.0.0 1204 * @deprecated 2.0.0 Use wp_create_user() 1205 * @see wp_create_user() 1206 * 1207 * @param string $username The user's username. 1208 * @param string $password The user's password. 1209 * @param string $email The user's email. 1210 * @return int The new user's ID. 1211 */ 1212 function create_user($username, $password, $email) { 1213 _deprecated_function( __FUNCTION__, '2.0.0', 'wp_create_user()' ); 1214 return wp_create_user($username, $password, $email); 1215 } 1216 1217 /** 1218 * Unused function. 1219 * 1220 * @deprecated 2.5.0 1221 */ 1222 function gzip_compression() { 1223 _deprecated_function( __FUNCTION__, '2.5.0' ); 1224 return false; 1225 } 1226 1227 /** 1228 * Retrieve an array of comment data about comment $comment_ID. 1229 * 1230 * @since 0.71 1231 * @deprecated 2.7.0 Use get_comment() 1232 * @see get_comment() 1233 * 1234 * @param int $comment_ID The ID of the comment 1235 * @param int $no_cache Whether to use the cache (cast to bool) 1236 * @param bool $include_unapproved Whether to include unapproved comments 1237 * @return array The comment data 1238 */ 1239 function get_commentdata( $comment_ID, $no_cache = 0, $include_unapproved = false ) { 1240 _deprecated_function( __FUNCTION__, '2.7.0', 'get_comment()' ); 1241 return get_comment($comment_ID, ARRAY_A); 1242 } 1243 1244 /** 1245 * Retrieve the category name by the category ID. 1246 * 1247 * @since 0.71 1248 * @deprecated 2.8.0 Use get_cat_name() 1249 * @see get_cat_name() 1250 * 1251 * @param int $cat_ID Category ID 1252 * @return string category name 1253 */ 1254 function get_catname( $cat_ID ) { 1255 _deprecated_function( __FUNCTION__, '2.8.0', 'get_cat_name()' ); 1256 return get_cat_name( $cat_ID ); 1257 } 1258 1259 /** 1260 * Retrieve category children list separated before and after the term IDs. 1261 * 1262 * @since 1.2.0 1263 * @deprecated 2.8.0 Use get_term_children() 1264 * @see get_term_children() 1265 * 1266 * @param int $id Category ID to retrieve children. 1267 * @param string $before Optional. Prepend before category term ID. Default '/'. 1268 * @param string $after Optional. Append after category term ID. Default empty string. 1269 * @param array $visited Optional. Category Term IDs that have already been added. 1270 * Default empty array. 1271 * @return string 1272 */ 1273 function get_category_children( $id, $before = '/', $after = '', $visited = array() ) { 1274 _deprecated_function( __FUNCTION__, '2.8.0', 'get_term_children()' ); 1275 if ( 0 == $id ) 1276 return ''; 1277 1278 $chain = ''; 1279 /** TODO: Consult hierarchy */ 1280 $cat_ids = get_all_category_ids(); 1281 foreach ( (array) $cat_ids as $cat_id ) { 1282 if ( $cat_id == $id ) 1283 continue; 1284 1285 $category = get_category( $cat_id ); 1286 if ( is_wp_error( $category ) ) 1287 return $category; 1288 if ( $category->parent == $id && !in_array( $category->term_id, $visited ) ) { 1289 $visited[] = $category->term_id; 1290 $chain .= $before.$category->term_id.$after; 1291 $chain .= get_category_children( $category->term_id, $before, $after ); 1292 } 1293 } 1294 return $chain; 1295 } 1296 1297 /** 1298 * Retrieves all category IDs. 1299 * 1300 * @since 2.0.0 1301 * @deprecated 4.0.0 Use get_terms() 1302 * @see get_terms() 1303 * 1304 * @link https://developer.wordpress.org/reference/functions/get_all_category_ids/ 1305 * 1306 * @return int[] List of all of the category IDs. 1307 */ 1308 function get_all_category_ids() { 1309 _deprecated_function( __FUNCTION__, '4.0.0', 'get_terms()' ); 1310 1311 $cat_ids = get_terms( 1312 array( 1313 'taxonomy' => 'category', 1314 'fields' => 'ids', 1315 'get' => 'all', 1316 ) 1317 ); 1318 1319 return $cat_ids; 1320 } 1321 1322 /** 1323 * Retrieve the description of the author of the current post. 1324 * 1325 * @since 1.5.0 1326 * @deprecated 2.8.0 Use get_the_author_meta() 1327 * @see get_the_author_meta() 1328 * 1329 * @return string The author's description. 1330 */ 1331 function get_the_author_description() { 1332 _deprecated_function( __FUNCTION__, '2.8.0', 'get_the_author_meta(\'description\')' ); 1333 return get_the_author_meta('description'); 1334 } 1335 1336 /** 1337 * Display the description of the author of the current post. 1338 * 1339 * @since 1.0.0 1340 * @deprecated 2.8.0 Use the_author_meta() 1341 * @see the_author_meta() 1342 */ 1343 function the_author_description() { 1344 _deprecated_function( __FUNCTION__, '2.8.0', 'the_author_meta(\'description\')' ); 1345 the_author_meta('description'); 1346 } 1347 1348 /** 1349 * Retrieve the login name of the author of the current post. 1350 * 1351 * @since 1.5.0 1352 * @deprecated 2.8.0 Use get_the_author_meta() 1353 * @see get_the_author_meta() 1354 * 1355 * @return string The author's login name (username). 1356 */ 1357 function get_the_author_login() { 1358 _deprecated_function( __FUNCTION__, '2.8.0', 'get_the_author_meta(\'login\')' ); 1359 return get_the_author_meta('login'); 1360 } 1361 1362 /** 1363 * Display the login name of the author of the current post. 1364 * 1365 * @since 0.71 1366 * @deprecated 2.8.0 Use the_author_meta() 1367 * @see the_author_meta() 1368 */ 1369 function the_author_login() { 1370 _deprecated_function( __FUNCTION__, '2.8.0', 'the_author_meta(\'login\')' ); 1371 the_author_meta('login'); 1372 } 1373 1374 /** 1375 * Retrieve the first name of the author of the current post. 1376 * 1377 * @since 1.5.0 1378 * @deprecated 2.8.0 Use get_the_author_meta() 1379 * @see get_the_author_meta() 1380 * 1381 * @return string The author's first name. 1382 */ 1383 function get_the_author_firstname() { 1384 _deprecated_function( __FUNCTION__, '2.8.0', 'get_the_author_meta(\'first_name\')' ); 1385 return get_the_author_meta('first_name'); 1386 } 1387 1388 /** 1389 * Display the first name of the author of the current post. 1390 * 1391 * @since 0.71 1392 * @deprecated 2.8.0 Use the_author_meta() 1393 * @see the_author_meta() 1394 */ 1395 function the_author_firstname() { 1396 _deprecated_function( __FUNCTION__, '2.8.0', 'the_author_meta(\'first_name\')' ); 1397 the_author_meta('first_name'); 1398 } 1399 1400 /** 1401 * Retrieve the last name of the author of the current post. 1402 * 1403 * @since 1.5.0 1404 * @deprecated 2.8.0 Use get_the_author_meta() 1405 * @see get_the_author_meta() 1406 * 1407 * @return string The author's last name. 1408 */ 1409 function get_the_author_lastname() { 1410 _deprecated_function( __FUNCTION__, '2.8.0', 'get_the_author_meta(\'last_name\')' ); 1411 return get_the_author_meta('last_name'); 1412 } 1413 1414 /** 1415 * Display the last name of the author of the current post. 1416 * 1417 * @since 0.71 1418 * @deprecated 2.8.0 Use the_author_meta() 1419 * @see the_author_meta() 1420 */ 1421 function the_author_lastname() { 1422 _deprecated_function( __FUNCTION__, '2.8.0', 'the_author_meta(\'last_name\')' ); 1423 the_author_meta('last_name'); 1424 } 1425 1426 /** 1427 * Retrieve the nickname of the author of the current post. 1428 * 1429 * @since 1.5.0 1430 * @deprecated 2.8.0 Use get_the_author_meta() 1431 * @see get_the_author_meta() 1432 * 1433 * @return string The author's nickname. 1434 */ 1435 function get_the_author_nickname() { 1436 _deprecated_function( __FUNCTION__, '2.8.0', 'get_the_author_meta(\'nickname\')' ); 1437 return get_the_author_meta('nickname'); 1438 } 1439 1440 /** 1441 * Display the nickname of the author of the current post. 1442 * 1443 * @since 0.71 1444 * @deprecated 2.8.0 Use the_author_meta() 1445 * @see the_author_meta() 1446 */ 1447 function the_author_nickname() { 1448 _deprecated_function( __FUNCTION__, '2.8.0', 'the_author_meta(\'nickname\')' ); 1449 the_author_meta('nickname'); 1450 } 1451 1452 /** 1453 * Retrieve the email of the author of the current post. 1454 * 1455 * @since 1.5.0 1456 * @deprecated 2.8.0 Use get_the_author_meta() 1457 * @see get_the_author_meta() 1458 * 1459 * @return string The author's username. 1460 */ 1461 function get_the_author_email() { 1462 _deprecated_function( __FUNCTION__, '2.8.0', 'get_the_author_meta(\'email\')' ); 1463 return get_the_author_meta('email'); 1464 } 1465 1466 /** 1467 * Display the email of the author of the current post. 1468 * 1469 * @since 0.71 1470 * @deprecated 2.8.0 Use the_author_meta() 1471 * @see the_author_meta() 1472 */ 1473 function the_author_email() { 1474 _deprecated_function( __FUNCTION__, '2.8.0', 'the_author_meta(\'email\')' ); 1475 the_author_meta('email'); 1476 } 1477 1478 /** 1479 * Retrieve the ICQ number of the author of the current post. 1480 * 1481 * @since 1.5.0 1482 * @deprecated 2.8.0 Use get_the_author_meta() 1483 * @see get_the_author_meta() 1484 * 1485 * @return string The author's ICQ number. 1486 */ 1487 function get_the_author_icq() { 1488 _deprecated_function( __FUNCTION__, '2.8.0', 'get_the_author_meta(\'icq\')' ); 1489 return get_the_author_meta('icq'); 1490 } 1491 1492 /** 1493 * Display the ICQ number of the author of the current post. 1494 * 1495 * @since 0.71 1496 * @deprecated 2.8.0 Use the_author_meta() 1497 * @see the_author_meta() 1498 */ 1499 function the_author_icq() { 1500 _deprecated_function( __FUNCTION__, '2.8.0', 'the_author_meta(\'icq\')' ); 1501 the_author_meta('icq'); 1502 } 1503 1504 /** 1505 * Retrieve the Yahoo! IM name of the author of the current post. 1506 * 1507 * @since 1.5.0 1508 * @deprecated 2.8.0 Use get_the_author_meta() 1509 * @see get_the_author_meta() 1510 * 1511 * @return string The author's Yahoo! IM name. 1512 */ 1513 function get_the_author_yim() { 1514 _deprecated_function( __FUNCTION__, '2.8.0', 'get_the_author_meta(\'yim\')' ); 1515 return get_the_author_meta('yim'); 1516 } 1517 1518 /** 1519 * Display the Yahoo! IM name of the author of the current post. 1520 * 1521 * @since 0.71 1522 * @deprecated 2.8.0 Use the_author_meta() 1523 * @see the_author_meta() 1524 */ 1525 function the_author_yim() { 1526 _deprecated_function( __FUNCTION__, '2.8.0', 'the_author_meta(\'yim\')' ); 1527 the_author_meta('yim'); 1528 } 1529 1530 /** 1531 * Retrieve the MSN address of the author of the current post. 1532 * 1533 * @since 1.5.0 1534 * @deprecated 2.8.0 Use get_the_author_meta() 1535 * @see get_the_author_meta() 1536 * 1537 * @return string The author's MSN address. 1538 */ 1539 function get_the_author_msn() { 1540 _deprecated_function( __FUNCTION__, '2.8.0', 'get_the_author_meta(\'msn\')' ); 1541 return get_the_author_meta('msn'); 1542 } 1543 1544 /** 1545 * Display the MSN address of the author of the current post. 1546 * 1547 * @since 0.71 1548 * @deprecated 2.8.0 Use the_author_meta() 1549 * @see the_author_meta() 1550 */ 1551 function the_author_msn() { 1552 _deprecated_function( __FUNCTION__, '2.8.0', 'the_author_meta(\'msn\')' ); 1553 the_author_meta('msn'); 1554 } 1555 1556 /** 1557 * Retrieve the AIM address of the author of the current post. 1558 * 1559 * @since 1.5.0 1560 * @deprecated 2.8.0 Use get_the_author_meta() 1561 * @see get_the_author_meta() 1562 * 1563 * @return string The author's AIM address. 1564 */ 1565 function get_the_author_aim() { 1566 _deprecated_function( __FUNCTION__, '2.8.0', 'get_the_author_meta(\'aim\')' ); 1567 return get_the_author_meta('aim'); 1568 } 1569 1570 /** 1571 * Display the AIM address of the author of the current post. 1572 * 1573 * @since 0.71 1574 * @deprecated 2.8.0 Use the_author_meta('aim') 1575 * @see the_author_meta() 1576 */ 1577 function the_author_aim() { 1578 _deprecated_function( __FUNCTION__, '2.8.0', 'the_author_meta(\'aim\')' ); 1579 the_author_meta('aim'); 1580 } 1581 1582 /** 1583 * Retrieve the specified author's preferred display name. 1584 * 1585 * @since 1.0.0 1586 * @deprecated 2.8.0 Use get_the_author_meta() 1587 * @see get_the_author_meta() 1588 * 1589 * @param int $auth_id The ID of the author. 1590 * @return string The author's display name. 1591 */ 1592 function get_author_name( $auth_id = false ) { 1593 _deprecated_function( __FUNCTION__, '2.8.0', 'get_the_author_meta(\'display_name\')' ); 1594 return get_the_author_meta('display_name', $auth_id); 1595 } 1596 1597 /** 1598 * Retrieve the URL to the home page of the author of the current post. 1599 * 1600 * @since 1.5.0 1601 * @deprecated 2.8.0 Use get_the_author_meta() 1602 * @see get_the_author_meta() 1603 * 1604 * @return string The URL to the author's page. 1605 */ 1606 function get_the_author_url() { 1607 _deprecated_function( __FUNCTION__, '2.8.0', 'get_the_author_meta(\'url\')' ); 1608 return get_the_author_meta('url'); 1609 } 1610 1611 /** 1612 * Display the URL to the home page of the author of the current post. 1613 * 1614 * @since 0.71 1615 * @deprecated 2.8.0 Use the_author_meta() 1616 * @see the_author_meta() 1617 */ 1618 function the_author_url() { 1619 _deprecated_function( __FUNCTION__, '2.8.0', 'the_author_meta(\'url\')' ); 1620 the_author_meta('url'); 1621 } 1622 1623 /** 1624 * Retrieve the ID of the author of the current post. 1625 * 1626 * @since 1.5.0 1627 * @deprecated 2.8.0 Use get_the_author_meta() 1628 * @see get_the_author_meta() 1629 * 1630 * @return string|int The author's ID. 1631 */ 1632 function get_the_author_ID() { 1633 _deprecated_function( __FUNCTION__, '2.8.0', 'get_the_author_meta(\'ID\')' ); 1634 return get_the_author_meta('ID'); 1635 } 1636 1637 /** 1638 * Display the ID of the author of the current post. 1639 * 1640 * @since 0.71 1641 * @deprecated 2.8.0 Use the_author_meta() 1642 * @see the_author_meta() 1643 */ 1644 function the_author_ID() { 1645 _deprecated_function( __FUNCTION__, '2.8.0', 'the_author_meta(\'ID\')' ); 1646 the_author_meta('ID'); 1647 } 1648 1649 /** 1650 * Display the post content for the feed. 1651 * 1652 * For encoding the HTML or the $encode_html parameter, there are three possible values: 1653 * - '0' will make urls footnotes and use make_url_footnote(). 1654 * - '1' will encode special characters and automatically display all of the content. 1655 * - '2' will strip all HTML tags from the content. 1656 * 1657 * Also note that you cannot set the amount of words and not set the HTML encoding. 1658 * If that is the case, then the HTML encoding will default to 2, which will strip 1659 * all HTML tags. 1660 * 1661 * To restrict the amount of words of the content, you can use the cut parameter. 1662 * If the content is less than the amount, then there won't be any dots added to the end. 1663 * If there is content left over, then dots will be added and the rest of the content 1664 * will be removed. 1665 * 1666 * @since 0.71 1667 * 1668 * @deprecated 2.9.0 Use the_content_feed() 1669 * @see the_content_feed() 1670 * 1671 * @param string $more_link_text Optional. Text to display when more content is available 1672 * but not displayed. Default '(more...)'. 1673 * @param int $stripteaser Optional. Default 0. 1674 * @param string $more_file Optional. 1675 * @param int $cut Optional. Amount of words to keep for the content. 1676 * @param int $encode_html Optional. How to encode the content. 1677 */ 1678 function the_content_rss($more_link_text='(more...)', $stripteaser=0, $more_file='', $cut = 0, $encode_html = 0) { 1679 _deprecated_function( __FUNCTION__, '2.9.0', 'the_content_feed()' ); 1680 $content = get_the_content($more_link_text, $stripteaser); 1681 1682 /** 1683 * Filters the post content in the context of an RSS feed. 1684 * 1685 * @since 0.71 1686 * 1687 * @param string $content Content of the current post. 1688 */ 1689 $content = apply_filters('the_content_rss', $content); 1690 if ( $cut && !$encode_html ) 1691 $encode_html = 2; 1692 if ( 1== $encode_html ) { 1693 $content = esc_html($content); 1694 $cut = 0; 1695 } elseif ( 0 == $encode_html ) { 1696 $content = make_url_footnote($content); 1697 } elseif ( 2 == $encode_html ) { 1698 $content = strip_tags($content); 1699 } 1700 if ( $cut ) { 1701 $blah = explode(' ', $content); 1702 if ( count($blah) > $cut ) { 1703 $k = $cut; 1704 $use_dotdotdot = 1; 1705 } else { 1706 $k = count($blah); 1707 $use_dotdotdot = 0; 1708 } 1709 1710 /** @todo Check performance, might be faster to use array slice instead. */ 1711 for ( $i=0; $i<$k; $i++ ) 1712 $excerpt .= $blah[$i].' '; 1713 $excerpt .= ($use_dotdotdot) ? '...' : ''; 1714 $content = $excerpt; 1715 } 1716 $content = str_replace(']]>', ']]>', $content); 1717 echo $content; 1718 } 1719 1720 /** 1721 * Strip HTML and put links at the bottom of stripped content. 1722 * 1723 * Searches for all of the links, strips them out of the content, and places 1724 * them at the bottom of the content with numbers. 1725 * 1726 * @since 0.71 1727 * @deprecated 2.9.0 1728 * 1729 * @param string $content Content to get links. 1730 * @return string HTML stripped out of content with links at the bottom. 1731 */ 1732 function make_url_footnote( $content ) { 1733 _deprecated_function( __FUNCTION__, '2.9.0', '' ); 1734 preg_match_all( '/<a(.+?)href=\"(.+?)\"(.*?)>(.+?)<\/a>/', $content, $matches ); 1735 $links_summary = "\n"; 1736 for ( $i = 0, $c = count( $matches[0] ); $i < $c; $i++ ) { 1737 $link_match = $matches[0][$i]; 1738 $link_number = '['.($i+1).']'; 1739 $link_url = $matches[2][$i]; 1740 $link_text = $matches[4][$i]; 1741 $content = str_replace( $link_match, $link_text . ' ' . $link_number, $content ); 1742 $link_url = ( ( strtolower( substr( $link_url, 0, 7 ) ) != 'http://' ) && ( strtolower( substr( $link_url, 0, 8 ) ) != 'https://' ) ) ? get_option( 'home' ) . $link_url : $link_url; 1743 $links_summary .= "\n" . $link_number . ' ' . $link_url; 1744 } 1745 $content = strip_tags( $content ); 1746 $content .= $links_summary; 1747 return $content; 1748 } 1749 1750 /** 1751 * Retrieve translated string with vertical bar context 1752 * 1753 * Quite a few times, there will be collisions with similar translatable text 1754 * found in more than two places but with different translated context. 1755 * 1756 * In order to use the separate contexts, the _c() function is used and the 1757 * translatable string uses a pipe ('|') which has the context the string is in. 1758 * 1759 * When the translated string is returned, it is everything before the pipe, not 1760 * including the pipe character. If there is no pipe in the translated text then 1761 * everything is returned. 1762 * 1763 * @since 2.2.0 1764 * @deprecated 2.9.0 Use _x() 1765 * @see _x() 1766 * 1767 * @param string $text Text to translate. 1768 * @param string $domain Optional. Domain to retrieve the translated text. 1769 * @return string Translated context string without pipe. 1770 */ 1771 function _c( $text, $domain = 'default' ) { 1772 _deprecated_function( __FUNCTION__, '2.9.0', '_x()' ); 1773 return before_last_bar( translate( $text, $domain ) ); 1774 } 1775 1776 /** 1777 * Translates $text like translate(), but assumes that the text 1778 * contains a context after its last vertical bar. 1779 * 1780 * @since 2.5.0 1781 * @deprecated 3.0.0 Use _x() 1782 * @see _x() 1783 * 1784 * @param string $text Text to translate. 1785 * @param string $domain Domain to retrieve the translated text. 1786 * @return string Translated text. 1787 */ 1788 function translate_with_context( $text, $domain = 'default' ) { 1789 _deprecated_function( __FUNCTION__, '2.9.0', '_x()' ); 1790 return before_last_bar( translate( $text, $domain ) ); 1791 } 1792 1793 /** 1794 * Legacy version of _n(), which supports contexts. 1795 * 1796 * Strips everything from the translation after the last bar. 1797 * 1798 * @since 2.7.0 1799 * @deprecated 3.0.0 Use _nx() 1800 * @see _nx() 1801 * 1802 * @param string $single The text to be used if the number is singular. 1803 * @param string $plural The text to be used if the number is plural. 1804 * @param int $number The number to compare against to use either the singular or plural form. 1805 * @param string $domain Optional. Text domain. Unique identifier for retrieving translated strings. 1806 * Default 'default'. 1807 * @return string The translated singular or plural form. 1808 */ 1809 function _nc( $single, $plural, $number, $domain = 'default' ) { 1810 _deprecated_function( __FUNCTION__, '2.9.0', '_nx()' ); 1811 return before_last_bar( _n( $single, $plural, $number, $domain ) ); 1812 } 1813 1814 /** 1815 * Retrieve the plural or single form based on the amount. 1816 * 1817 * @since 1.2.0 1818 * @deprecated 2.8.0 Use _n() 1819 * @see _n() 1820 */ 1821 function __ngettext( ...$args ) { // phpcs:ignore PHPCompatibility.FunctionNameRestrictions.ReservedFunctionNames.FunctionDoubleUnderscore 1822 _deprecated_function( __FUNCTION__, '2.8.0', '_n()' ); 1823 return _n( ...$args ); 1824 } 1825 1826 /** 1827 * Register plural strings in POT file, but don't translate them. 1828 * 1829 * @since 2.5.0 1830 * @deprecated 2.8.0 Use _n_noop() 1831 * @see _n_noop() 1832 */ 1833 function __ngettext_noop( ...$args ) { // phpcs:ignore PHPCompatibility.FunctionNameRestrictions.ReservedFunctionNames.FunctionDoubleUnderscore 1834 _deprecated_function( __FUNCTION__, '2.8.0', '_n_noop()' ); 1835 return _n_noop( ...$args ); 1836 1837 } 1838 1839 /** 1840 * Retrieve all autoload options, or all options if no autoloaded ones exist. 1841 * 1842 * @since 1.0.0 1843 * @deprecated 3.0.0 Use wp_load_alloptions()) 1844 * @see wp_load_alloptions() 1845 * 1846 * @return array List of all options. 1847 */ 1848 function get_alloptions() { 1849 _deprecated_function( __FUNCTION__, '3.0.0', 'wp_load_alloptions()' ); 1850 return wp_load_alloptions(); 1851 } 1852 1853 /** 1854 * Retrieve HTML content of attachment image with link. 1855 * 1856 * @since 2.0.0 1857 * @deprecated 2.5.0 Use wp_get_attachment_link() 1858 * @see wp_get_attachment_link() 1859 * 1860 * @param int $id Optional. Post ID. 1861 * @param bool $fullsize Optional. Whether to use full size image. Default false. 1862 * @param array $max_dims Optional. Max image dimensions. 1863 * @param bool $permalink Optional. Whether to include permalink to image. Default false. 1864 * @return string 1865 */ 1866 function get_the_attachment_link($id = 0, $fullsize = false, $max_dims = false, $permalink = false) { 1867 _deprecated_function( __FUNCTION__, '2.5.0', 'wp_get_attachment_link()' ); 1868 $id = (int) $id; 1869 $_post = get_post($id); 1870 1871 if ( ('attachment' != $_post->post_type) || !$url = wp_get_attachment_url($_post->ID) ) 1872 return __('Missing Attachment'); 1873 1874 if ( $permalink ) 1875 $url = get_attachment_link($_post->ID); 1876 1877 $post_title = esc_attr($_post->post_title); 1878 1879 $innerHTML = get_attachment_innerHTML($_post->ID, $fullsize, $max_dims); 1880 return "<a href='$url' title='$post_title'>$innerHTML</a>"; 1881 } 1882 1883 /** 1884 * Retrieve icon URL and Path. 1885 * 1886 * @since 2.1.0 1887 * @deprecated 2.5.0 Use wp_get_attachment_image_src() 1888 * @see wp_get_attachment_image_src() 1889 * 1890 * @param int $id Optional. Post ID. 1891 * @param bool $fullsize Optional. Whether to have full image. Default false. 1892 * @return array Icon URL and full path to file, respectively. 1893 */ 1894 function get_attachment_icon_src( $id = 0, $fullsize = false ) { 1895 _deprecated_function( __FUNCTION__, '2.5.0', 'wp_get_attachment_image_src()' ); 1896 $id = (int) $id; 1897 if ( !$post = get_post($id) ) 1898 return false; 1899 1900 $file = get_attached_file( $post->ID ); 1901 1902 if ( !$fullsize && $src = wp_get_attachment_thumb_url( $post->ID ) ) { 1903 // We have a thumbnail desired, specified and existing. 1904 1905 $src_file = wp_basename($src); 1906 } elseif ( wp_attachment_is_image( $post->ID ) ) { 1907 // We have an image without a thumbnail. 1908 1909 $src = wp_get_attachment_url( $post->ID ); 1910 $src_file = & $file; 1911 } elseif ( $src = wp_mime_type_icon( $post->ID ) ) { 1912 // No thumb, no image. We'll look for a mime-related icon instead. 1913 1914 /** This filter is documented in wp-includes/post.php */ 1915 $icon_dir = apply_filters( 'icon_dir', get_template_directory() . '/images' ); 1916 $src_file = $icon_dir . '/' . wp_basename($src); 1917 } 1918 1919 if ( !isset($src) || !$src ) 1920 return false; 1921 1922 return array($src, $src_file); 1923 } 1924 1925 /** 1926 * Retrieve HTML content of icon attachment image element. 1927 * 1928 * @since 2.0.0 1929 * @deprecated 2.5.0 Use wp_get_attachment_image() 1930 * @see wp_get_attachment_image() 1931 * 1932 * @param int $id Optional. Post ID. 1933 * @param bool $fullsize Optional. Whether to have full size image. Default false. 1934 * @param array $max_dims Optional. Dimensions of image. 1935 * @return string|false HTML content. 1936 */ 1937 function get_attachment_icon( $id = 0, $fullsize = false, $max_dims = false ) { 1938 _deprecated_function( __FUNCTION__, '2.5.0', 'wp_get_attachment_image()' ); 1939 $id = (int) $id; 1940 if ( !$post = get_post($id) ) 1941 return false; 1942 1943 if ( !$src = get_attachment_icon_src( $post->ID, $fullsize ) ) 1944 return false; 1945 1946 list($src, $src_file) = $src; 1947 1948 // Do we need to constrain the image? 1949 if ( ($max_dims = apply_filters('attachment_max_dims', $max_dims)) && file_exists($src_file) ) { 1950 1951 $imagesize = wp_getimagesize($src_file); 1952 1953 if (($imagesize[0] > $max_dims[0]) || $imagesize[1] > $max_dims[1] ) { 1954 $actual_aspect = $imagesize[0] / $imagesize[1]; 1955 $desired_aspect = $max_dims[0] / $max_dims[1]; 1956 1957 if ( $actual_aspect >= $desired_aspect ) { 1958 $height = $actual_aspect * $max_dims[0]; 1959 $constraint = "width='{$max_dims[0]}' "; 1960 $post->iconsize = array($max_dims[0], $height); 1961 } else { 1962 $width = $max_dims[1] / $actual_aspect; 1963 $constraint = "height='{$max_dims[1]}' "; 1964 $post->iconsize = array($width, $max_dims[1]); 1965 } 1966 } else { 1967 $post->iconsize = array($imagesize[0], $imagesize[1]); 1968 $constraint = ''; 1969 } 1970 } else { 1971 $constraint = ''; 1972 } 1973 1974 $post_title = esc_attr($post->post_title); 1975 1976 $icon = "<img src='$src' title='$post_title' alt='$post_title' $constraint/>"; 1977 1978 return apply_filters( 'attachment_icon', $icon, $post->ID ); 1979 } 1980 1981 /** 1982 * Retrieve HTML content of image element. 1983 * 1984 * @since 2.0.0 1985 * @deprecated 2.5.0 Use wp_get_attachment_image() 1986 * @see wp_get_attachment_image() 1987 * 1988 * @param int $id Optional. Post ID. 1989 * @param bool $fullsize Optional. Whether to have full size image. Default false. 1990 * @param array $max_dims Optional. Dimensions of image. 1991 * @return string|false 1992 */ 1993 function get_attachment_innerHTML($id = 0, $fullsize = false, $max_dims = false) { 1994 _deprecated_function( __FUNCTION__, '2.5.0', 'wp_get_attachment_image()' ); 1995 $id = (int) $id; 1996 if ( !$post = get_post($id) ) 1997 return false; 1998 1999 if ( $innerHTML = get_attachment_icon($post->ID, $fullsize, $max_dims)) 2000 return $innerHTML; 2001 2002 $innerHTML = esc_attr($post->post_title); 2003 2004 return apply_filters('attachment_innerHTML', $innerHTML, $post->ID); 2005 } 2006 2007 /** 2008 * Retrieves bookmark data based on ID. 2009 * 2010 * @since 2.0.0 2011 * @deprecated 2.1.0 Use get_bookmark() 2012 * @see get_bookmark() 2013 * 2014 * @param int $bookmark_id ID of link 2015 * @param string $output Optional. Type of output. Accepts OBJECT, ARRAY_N, or ARRAY_A. 2016 * Default OBJECT. 2017 * @param string $filter Optional. How to filter the link for output. Accepts 'raw', 'edit', 2018 * 'attribute', 'js', 'db', or 'display'. Default 'raw'. 2019 * @return object|array Bookmark object or array, depending on the type specified by `$output`. 2020 */ 2021 function get_link( $bookmark_id, $output = OBJECT, $filter = 'raw' ) { 2022 _deprecated_function( __FUNCTION__, '2.1.0', 'get_bookmark()' ); 2023 return get_bookmark($bookmark_id, $output, $filter); 2024 } 2025 2026 /** 2027 * Checks and cleans a URL. 2028 * 2029 * A number of characters are removed from the URL. If the URL is for displaying 2030 * (the default behaviour) ampersands are also replaced. The 'clean_url' filter 2031 * is applied to the returned cleaned URL. 2032 * 2033 * @since 1.2.0 2034 * @deprecated 3.0.0 Use esc_url() 2035 * @see esc_url() 2036 * 2037 * @param string $url The URL to be cleaned. 2038 * @param array $protocols Optional. An array of acceptable protocols. 2039 * @param string $context Optional. How the URL will be used. Default is 'display'. 2040 * @return string The cleaned $url after the {@see 'clean_url'} filter is applied. 2041 */ 2042 function clean_url( $url, $protocols = null, $context = 'display' ) { 2043 if ( $context == 'db' ) 2044 _deprecated_function( 'clean_url( $context = \'db\' )', '3.0.0', 'esc_url_raw()' ); 2045 else 2046 _deprecated_function( __FUNCTION__, '3.0.0', 'esc_url()' ); 2047 return esc_url( $url, $protocols, $context ); 2048 } 2049 2050 /** 2051 * Escape single quotes, specialchar double quotes, and fix line endings. 2052 * 2053 * The filter {@see 'js_escape'} is also applied by esc_js(). 2054 * 2055 * @since 2.0.4 2056 * @deprecated 2.8.0 Use esc_js() 2057 * @see esc_js() 2058 * 2059 * @param string $text The text to be escaped. 2060 * @return string Escaped text. 2061 */ 2062 function js_escape( $text ) { 2063 _deprecated_function( __FUNCTION__, '2.8.0', 'esc_js()' ); 2064 return esc_js( $text ); 2065 } 2066 2067 /** 2068 * Legacy escaping for HTML blocks. 2069 * 2070 * @deprecated 2.8.0 Use esc_html() 2071 * @see esc_html() 2072 * 2073 * @param string $text Text to escape. 2074 * @param string $quote_style Unused. 2075 * @param false|string $charset Unused. 2076 * @param false $double_encode Whether to double encode. Unused. 2077 * @return string Escaped `$text`. 2078 */ 2079 function wp_specialchars( $text, $quote_style = ENT_NOQUOTES, $charset = false, $double_encode = false ) { 2080 _deprecated_function( __FUNCTION__, '2.8.0', 'esc_html()' ); 2081 if ( func_num_args() > 1 ) { // Maintain back-compat for people passing additional arguments. 2082 return _wp_specialchars( $text, $quote_style, $charset, $double_encode ); 2083 } else { 2084 return esc_html( $text ); 2085 } 2086 } 2087 2088 /** 2089 * Escaping for HTML attributes. 2090 * 2091 * @since 2.0.6 2092 * @deprecated 2.8.0 Use esc_attr() 2093 * @see esc_attr() 2094 * 2095 * @param string $text 2096 * @return string 2097 */ 2098 function attribute_escape( $text ) { 2099 _deprecated_function( __FUNCTION__, '2.8.0', 'esc_attr()' ); 2100 return esc_attr( $text ); 2101 } 2102 2103 /** 2104 * Register widget for sidebar with backward compatibility. 2105 * 2106 * Allows $name to be an array that accepts either three elements to grab the 2107 * first element and the third for the name or just uses the first element of 2108 * the array for the name. 2109 * 2110 * Passes to wp_register_sidebar_widget() after argument list and backward 2111 * compatibility is complete. 2112 * 2113 * @since 2.2.0 2114 * @deprecated 2.8.0 Use wp_register_sidebar_widget() 2115 * @see wp_register_sidebar_widget() 2116 * 2117 * @param string|int $name Widget ID. 2118 * @param callable $output_callback Run when widget is called. 2119 * @param string $classname Optional. Classname widget option. Default empty. 2120 * @param mixed ...$params Widget parameters. 2121 */ 2122 function register_sidebar_widget($name, $output_callback, $classname = '', ...$params) { 2123 _deprecated_function( __FUNCTION__, '2.8.0', 'wp_register_sidebar_widget()' ); 2124 // Compat. 2125 if ( is_array( $name ) ) { 2126 if ( count( $name ) === 3 ) { 2127 $name = sprintf( $name[0], $name[2] ); 2128 } else { 2129 $name = $name[0]; 2130 } 2131 } 2132 2133 $id = sanitize_title( $name ); 2134 $options = array(); 2135 if ( ! empty( $classname ) && is_string( $classname ) ) { 2136 $options['classname'] = $classname; 2137 } 2138 2139 wp_register_sidebar_widget( $id, $name, $output_callback, $options, ...$params ); 2140 } 2141 2142 /** 2143 * Serves as an alias of wp_unregister_sidebar_widget(). 2144 * 2145 * @since 2.2.0 2146 * @deprecated 2.8.0 Use wp_unregister_sidebar_widget() 2147 * @see wp_unregister_sidebar_widget() 2148 * 2149 * @param int|string $id Widget ID. 2150 */ 2151 function unregister_sidebar_widget($id) { 2152 _deprecated_function( __FUNCTION__, '2.8.0', 'wp_unregister_sidebar_widget()' ); 2153 return wp_unregister_sidebar_widget($id); 2154 } 2155 2156 /** 2157 * Registers widget control callback for customizing options. 2158 * 2159 * Allows $name to be an array that accepts either three elements to grab the 2160 * first element and the third for the name or just uses the first element of 2161 * the array for the name. 2162 * 2163 * Passes to wp_register_widget_control() after the argument list has 2164 * been compiled. 2165 * 2166 * @since 2.2.0 2167 * @deprecated 2.8.0 Use wp_register_widget_control() 2168 * @see wp_register_widget_control() 2169 * 2170 * @param int|string $name Sidebar ID. 2171 * @param callable $control_callback Widget control callback to display and process form. 2172 * @param int $width Widget width. 2173 * @param int $height Widget height. 2174 * @param mixed ...$params Widget parameters. 2175 */ 2176 function register_widget_control($name, $control_callback, $width = '', $height = '', ...$params) { 2177 _deprecated_function( __FUNCTION__, '2.8.0', 'wp_register_widget_control()' ); 2178 // Compat. 2179 if ( is_array( $name ) ) { 2180 if ( count( $name ) === 3 ) { 2181 $name = sprintf( $name[0], $name[2] ); 2182 } else { 2183 $name = $name[0]; 2184 } 2185 } 2186 2187 $id = sanitize_title( $name ); 2188 $options = array(); 2189 if ( ! empty( $width ) ) { 2190 $options['width'] = $width; 2191 } 2192 if ( ! empty( $height ) ) { 2193 $options['height'] = $height; 2194 } 2195 2196 wp_register_widget_control( $id, $name, $control_callback, $options, ...$params ); 2197 } 2198 2199 /** 2200 * Alias of wp_unregister_widget_control(). 2201 * 2202 * @since 2.2.0 2203 * @deprecated 2.8.0 Use wp_unregister_widget_control() 2204 * @see wp_unregister_widget_control() 2205 * 2206 * @param int|string $id Widget ID. 2207 */ 2208 function unregister_widget_control($id) { 2209 _deprecated_function( __FUNCTION__, '2.8.0', 'wp_unregister_widget_control()' ); 2210 return wp_unregister_widget_control($id); 2211 } 2212 2213 /** 2214 * Remove user meta data. 2215 * 2216 * @since 2.0.0 2217 * @deprecated 3.0.0 Use delete_user_meta() 2218 * @see delete_user_meta() 2219 * 2220 * @param int $user_id User ID. 2221 * @param string $meta_key Metadata key. 2222 * @param mixed $meta_value Optional. Metadata value. Default empty. 2223 * @return bool True deletion completed and false if user_id is not a number. 2224 */ 2225 function delete_usermeta( $user_id, $meta_key, $meta_value = '' ) { 2226 _deprecated_function( __FUNCTION__, '3.0.0', 'delete_user_meta()' ); 2227 global $wpdb; 2228 if ( !is_numeric( $user_id ) ) 2229 return false; 2230 $meta_key = preg_replace('|[^a-z0-9_]|i', '', $meta_key); 2231 2232 if ( is_array($meta_value) || is_object($meta_value) ) 2233 $meta_value = serialize($meta_value); 2234 $meta_value = trim( $meta_value ); 2235 2236 $cur = $wpdb->get_row( $wpdb->prepare("SELECT * FROM $wpdb->usermeta WHERE user_id = %d AND meta_key = %s", $user_id, $meta_key) ); 2237 2238 if ( $cur && $cur->umeta_id ) 2239 do_action( 'delete_usermeta', $cur->umeta_id, $user_id, $meta_key, $meta_value ); 2240 2241 if ( ! empty($meta_value) ) 2242 $wpdb->query( $wpdb->prepare("DELETE FROM $wpdb->usermeta WHERE user_id = %d AND meta_key = %s AND meta_value = %s", $user_id, $meta_key, $meta_value) ); 2243 else 2244 $wpdb->query( $wpdb->prepare("DELETE FROM $wpdb->usermeta WHERE user_id = %d AND meta_key = %s", $user_id, $meta_key) ); 2245 2246 clean_user_cache( $user_id ); 2247 wp_cache_delete( $user_id, 'user_meta' ); 2248 2249 if ( $cur && $cur->umeta_id ) 2250 do_action( 'deleted_usermeta', $cur->umeta_id, $user_id, $meta_key, $meta_value ); 2251 2252 return true; 2253 } 2254 2255 /** 2256 * Retrieve user metadata. 2257 * 2258 * If $user_id is not a number, then the function will fail over with a 'false' 2259 * boolean return value. Other returned values depend on whether there is only 2260 * one item to be returned, which be that single item type. If there is more 2261 * than one metadata value, then it will be list of metadata values. 2262 * 2263 * @since 2.0.0 2264 * @deprecated 3.0.0 Use get_user_meta() 2265 * @see get_user_meta() 2266 * 2267 * @param int $user_id User ID 2268 * @param string $meta_key Optional. Metadata key. Default empty. 2269 * @return mixed 2270 */ 2271 function get_usermeta( $user_id, $meta_key = '' ) { 2272 _deprecated_function( __FUNCTION__, '3.0.0', 'get_user_meta()' ); 2273 global $wpdb; 2274 $user_id = (int) $user_id; 2275 2276 if ( !$user_id ) 2277 return false; 2278 2279 if ( !empty($meta_key) ) { 2280 $meta_key = preg_replace('|[^a-z0-9_]|i', '', $meta_key); 2281 $user = wp_cache_get($user_id, 'users'); 2282 // Check the cached user object. 2283 if ( false !== $user && isset($user->$meta_key) ) 2284 $metas = array($user->$meta_key); 2285 else 2286 $metas = $wpdb->get_col( $wpdb->prepare("SELECT meta_value FROM $wpdb->usermeta WHERE user_id = %d AND meta_key = %s", $user_id, $meta_key) ); 2287 } else { 2288 $metas = $wpdb->get_col( $wpdb->prepare("SELECT meta_value FROM $wpdb->usermeta WHERE user_id = %d", $user_id) ); 2289 } 2290 2291 if ( empty($metas) ) { 2292 if ( empty($meta_key) ) 2293 return array(); 2294 else 2295 return ''; 2296 } 2297 2298 $metas = array_map('maybe_unserialize', $metas); 2299 2300 if ( count($metas) == 1 ) 2301 return $metas[0]; 2302 else 2303 return $metas; 2304 } 2305 2306 /** 2307 * Update metadata of user. 2308 * 2309 * There is no need to serialize values, they will be serialized if it is 2310 * needed. The metadata key can only be a string with underscores. All else will 2311 * be removed. 2312 * 2313 * Will remove the metadata, if the meta value is empty. 2314 * 2315 * @since 2.0.0 2316 * @deprecated 3.0.0 Use update_user_meta() 2317 * @see update_user_meta() 2318 * 2319 * @param int $user_id User ID 2320 * @param string $meta_key Metadata key. 2321 * @param mixed $meta_value Metadata value. 2322 * @return bool True on successful update, false on failure. 2323 */ 2324 function update_usermeta( $user_id, $meta_key, $meta_value ) { 2325 _deprecated_function( __FUNCTION__, '3.0.0', 'update_user_meta()' ); 2326 global $wpdb; 2327 if ( !is_numeric( $user_id ) ) 2328 return false; 2329 $meta_key = preg_replace('|[^a-z0-9_]|i', '', $meta_key); 2330 2331 /** @todo Might need fix because usermeta data is assumed to be already escaped */ 2332 if ( is_string($meta_value) ) 2333 $meta_value = stripslashes($meta_value); 2334 $meta_value = maybe_serialize($meta_value); 2335 2336 if (empty($meta_value)) { 2337 return delete_usermeta($user_id, $meta_key); 2338 } 2339 2340 $cur = $wpdb->get_row( $wpdb->prepare("SELECT * FROM $wpdb->usermeta WHERE user_id = %d AND meta_key = %s", $user_id, $meta_key) ); 2341 2342 if ( $cur ) 2343 do_action( 'update_usermeta', $cur->umeta_id, $user_id, $meta_key, $meta_value ); 2344 2345 if ( !$cur ) 2346 $wpdb->insert($wpdb->usermeta, compact('user_id', 'meta_key', 'meta_value') ); 2347 elseif ( $cur->meta_value != $meta_value ) 2348 $wpdb->update($wpdb->usermeta, compact('meta_value'), compact('user_id', 'meta_key') ); 2349 else 2350 return false; 2351 2352 clean_user_cache( $user_id ); 2353 wp_cache_delete( $user_id, 'user_meta' ); 2354 2355 if ( !$cur ) 2356 do_action( 'added_usermeta', $wpdb->insert_id, $user_id, $meta_key, $meta_value ); 2357 else 2358 do_action( 'updated_usermeta', $cur->umeta_id, $user_id, $meta_key, $meta_value ); 2359 2360 return true; 2361 } 2362 2363 /** 2364 * Get users for the site. 2365 * 2366 * For setups that use the multisite feature. Can be used outside of the 2367 * multisite feature. 2368 * 2369 * @since 2.2.0 2370 * @deprecated 3.1.0 Use get_users() 2371 * @see get_users() 2372 * 2373 * @global wpdb $wpdb WordPress database abstraction object. 2374 * 2375 * @param int $id Site ID. 2376 * @return array List of users that are part of that site ID 2377 */ 2378 function get_users_of_blog( $id = '' ) { 2379 _deprecated_function( __FUNCTION__, '3.1.0', 'get_users()' ); 2380 2381 global $wpdb; 2382 if ( empty( $id ) ) { 2383 $id = get_current_blog_id(); 2384 } 2385 $blog_prefix = $wpdb->get_blog_prefix($id); 2386 $users = $wpdb->get_results( "SELECT user_id, user_id AS ID, user_login, display_name, user_email, meta_value FROM $wpdb->users, $wpdb->usermeta WHERE {$wpdb->users}.ID = {$wpdb->usermeta}.user_id AND meta_key = '{$blog_prefix}capabilities' ORDER BY {$wpdb->usermeta}.user_id" ); 2387 return $users; 2388 } 2389 2390 /** 2391 * Enable/disable automatic general feed link outputting. 2392 * 2393 * @since 2.8.0 2394 * @deprecated 3.0.0 Use add_theme_support() 2395 * @see add_theme_support() 2396 * 2397 * @param bool $add Optional. Add or remove links. Default true. 2398 */ 2399 function automatic_feed_links( $add = true ) { 2400 _deprecated_function( __FUNCTION__, '3.0.0', "add_theme_support( 'automatic-feed-links' )" ); 2401 2402 if ( $add ) 2403 add_theme_support( 'automatic-feed-links' ); 2404 else 2405 remove_action( 'wp_head', 'feed_links_extra', 3 ); // Just do this yourself in 3.0+. 2406 } 2407 2408 /** 2409 * Retrieve user data based on field. 2410 * 2411 * @since 1.5.0 2412 * @deprecated 3.0.0 Use get_the_author_meta() 2413 * @see get_the_author_meta() 2414 * 2415 * @param string $field User meta field. 2416 * @param false|int $user Optional. User ID to retrieve the field for. Default false (current user). 2417 * @return string The author's field from the current author's DB object. 2418 */ 2419 function get_profile( $field, $user = false ) { 2420 _deprecated_function( __FUNCTION__, '3.0.0', 'get_the_author_meta()' ); 2421 if ( $user ) { 2422 $user = get_user_by( 'login', $user ); 2423 $user = $user->ID; 2424 } 2425 return get_the_author_meta( $field, $user ); 2426 } 2427 2428 /** 2429 * Retrieves the number of posts a user has written. 2430 * 2431 * @since 0.71 2432 * @deprecated 3.0.0 Use count_user_posts() 2433 * @see count_user_posts() 2434 * 2435 * @param int $userid User to count posts for. 2436 * @return int Number of posts the given user has written. 2437 */ 2438 function get_usernumposts( $userid ) { 2439 _deprecated_function( __FUNCTION__, '3.0.0', 'count_user_posts()' ); 2440 return count_user_posts( $userid ); 2441 } 2442 2443 /** 2444 * Callback used to change %uXXXX to &#YYY; syntax 2445 * 2446 * @since 2.8.0 2447 * @access private 2448 * @deprecated 3.0.0 2449 * 2450 * @param array $matches Single Match 2451 * @return string An HTML entity 2452 */ 2453 function funky_javascript_callback($matches) { 2454 return "&#".base_convert($matches[1],16,10).";"; 2455 } 2456 2457 /** 2458 * Fixes JavaScript bugs in browsers. 2459 * 2460 * Converts unicode characters to HTML numbered entities. 2461 * 2462 * @since 1.5.0 2463 * @deprecated 3.0.0 2464 * 2465 * @global $is_macIE 2466 * @global $is_winIE 2467 * 2468 * @param string $text Text to be made safe. 2469 * @return string Fixed text. 2470 */ 2471 function funky_javascript_fix($text) { 2472 _deprecated_function( __FUNCTION__, '3.0.0' ); 2473 // Fixes for browsers' JavaScript bugs. 2474 global $is_macIE, $is_winIE; 2475 2476 if ( $is_winIE || $is_macIE ) 2477 $text = preg_replace_callback("/\%u([0-9A-F]{4,4})/", 2478 "funky_javascript_callback", 2479 $text); 2480 2481 return $text; 2482 } 2483 2484 /** 2485 * Checks that the taxonomy name exists. 2486 * 2487 * @since 2.3.0 2488 * @deprecated 3.0.0 Use taxonomy_exists() 2489 * @see taxonomy_exists() 2490 * 2491 * @param string $taxonomy Name of taxonomy object 2492 * @return bool Whether the taxonomy exists. 2493 */ 2494 function is_taxonomy( $taxonomy ) { 2495 _deprecated_function( __FUNCTION__, '3.0.0', 'taxonomy_exists()' ); 2496 return taxonomy_exists( $taxonomy ); 2497 } 2498 2499 /** 2500 * Check if Term exists. 2501 * 2502 * @since 2.3.0 2503 * @deprecated 3.0.0 Use term_exists() 2504 * @see term_exists() 2505 * 2506 * @param int|string $term The term to check 2507 * @param string $taxonomy The taxonomy name to use 2508 * @param int $parent ID of parent term under which to confine the exists search. 2509 * @return mixed Get the term ID or term object, if exists. 2510 */ 2511 function is_term( $term, $taxonomy = '', $parent = 0 ) { 2512 _deprecated_function( __FUNCTION__, '3.0.0', 'term_exists()' ); 2513 return term_exists( $term, $taxonomy, $parent ); 2514 } 2515 2516 /** 2517 * Determines whether the current admin page is generated by a plugin. 2518 * 2519 * Use global $plugin_page and/or get_plugin_page_hookname() hooks. 2520 * 2521 * For more information on this and similar theme functions, check out 2522 * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ 2523 * Conditional Tags} article in the Theme Developer Handbook. 2524 * 2525 * @since 1.5.0 2526 * @deprecated 3.1.0 2527 * 2528 * @global $plugin_page 2529 * 2530 * @return bool 2531 */ 2532 function is_plugin_page() { 2533 _deprecated_function( __FUNCTION__, '3.1.0' ); 2534 2535 global $plugin_page; 2536 2537 if ( isset($plugin_page) ) 2538 return true; 2539 2540 return false; 2541 } 2542 2543 /** 2544 * Update the categories cache. 2545 * 2546 * This function does not appear to be used anymore or does not appear to be 2547 * needed. It might be a legacy function left over from when there was a need 2548 * for updating the category cache. 2549 * 2550 * @since 1.5.0 2551 * @deprecated 3.1.0 2552 * 2553 * @return bool Always return True 2554 */ 2555 function update_category_cache() { 2556 _deprecated_function( __FUNCTION__, '3.1.0' ); 2557 2558 return true; 2559 } 2560 2561 /** 2562 * Check for PHP timezone support 2563 * 2564 * @since 2.9.0 2565 * @deprecated 3.2.0 2566 * 2567 * @return bool 2568 */ 2569 function wp_timezone_supported() { 2570 _deprecated_function( __FUNCTION__, '3.2.0' ); 2571 2572 return true; 2573 } 2574 2575 /** 2576 * Displays an editor: TinyMCE, HTML, or both. 2577 * 2578 * @since 2.1.0 2579 * @deprecated 3.3.0 Use wp_editor() 2580 * @see wp_editor() 2581 * 2582 * @param string $content Textarea content. 2583 * @param string $id Optional. HTML ID attribute value. Default 'content'. 2584 * @param string $prev_id Optional. Unused. 2585 * @param bool $media_buttons Optional. Whether to display media buttons. Default true. 2586 * @param int $tab_index Optional. Unused. 2587 * @param bool $extended Optional. Unused. 2588 */ 2589 function the_editor($content, $id = 'content', $prev_id = 'title', $media_buttons = true, $tab_index = 2, $extended = true) { 2590 _deprecated_function( __FUNCTION__, '3.3.0', 'wp_editor()' ); 2591 2592 wp_editor( $content, $id, array( 'media_buttons' => $media_buttons ) ); 2593 } 2594 2595 /** 2596 * Perform the query to get the $metavalues array(s) needed by _fill_user and _fill_many_users 2597 * 2598 * @since 3.0.0 2599 * @deprecated 3.3.0 2600 * 2601 * @param array $ids User ID numbers list. 2602 * @return array of arrays. The array is indexed by user_id, containing $metavalues object arrays. 2603 */ 2604 function get_user_metavalues($ids) { 2605 _deprecated_function( __FUNCTION__, '3.3.0' ); 2606 2607 $objects = array(); 2608 2609 $ids = array_map('intval', $ids); 2610 foreach ( $ids as $id ) 2611 $objects[$id] = array(); 2612 2613 $metas = update_meta_cache('user', $ids); 2614 2615 foreach ( $metas as $id => $meta ) { 2616 foreach ( $meta as $key => $metavalues ) { 2617 foreach ( $metavalues as $value ) { 2618 $objects[$id][] = (object)array( 'user_id' => $id, 'meta_key' => $key, 'meta_value' => $value); 2619 } 2620 } 2621 } 2622 2623 return $objects; 2624 } 2625 2626 /** 2627 * Sanitize every user field. 2628 * 2629 * If the context is 'raw', then the user object or array will get minimal santization of the int fields. 2630 * 2631 * @since 2.3.0 2632 * @deprecated 3.3.0 2633 * 2634 * @param object|array $user The user object or array. 2635 * @param string $context Optional. How to sanitize user fields. Default 'display'. 2636 * @return object|array The now sanitized user object or array (will be the same type as $user). 2637 */ 2638 function sanitize_user_object($user, $context = 'display') { 2639 _deprecated_function( __FUNCTION__, '3.3.0' ); 2640 2641 if ( is_object($user) ) { 2642 if ( !isset($user->ID) ) 2643 $user->ID = 0; 2644 if ( ! ( $user instanceof WP_User ) ) { 2645 $vars = get_object_vars($user); 2646 foreach ( array_keys($vars) as $field ) { 2647 if ( is_string($user->$field) || is_numeric($user->$field) ) 2648 $user->$field = sanitize_user_field($field, $user->$field, $user->ID, $context); 2649 } 2650 } 2651 $user->filter = $context; 2652 } else { 2653 if ( !isset($user['ID']) ) 2654 $user['ID'] = 0; 2655 foreach ( array_keys($user) as $field ) 2656 $user[$field] = sanitize_user_field($field, $user[$field], $user['ID'], $context); 2657 $user['filter'] = $context; 2658 } 2659 2660 return $user; 2661 } 2662 2663 /** 2664 * Get boundary post relational link. 2665 * 2666 * Can either be start or end post relational link. 2667 * 2668 * @since 2.8.0 2669 * @deprecated 3.3.0 2670 * 2671 * @param string $title Optional. Link title format. Default '%title'. 2672 * @param bool $in_same_cat Optional. Whether link should be in a same category. 2673 * Default false. 2674 * @param string $excluded_categories Optional. Excluded categories IDs. Default empty. 2675 * @param bool $start Optional. Whether to display link to first or last post. 2676 * Default true. 2677 * @return string 2678 */ 2679 function get_boundary_post_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '', $start = true) { 2680 _deprecated_function( __FUNCTION__, '3.3.0' ); 2681 2682 $posts = get_boundary_post($in_same_cat, $excluded_categories, $start); 2683 // If there is no post, stop. 2684 if ( empty($posts) ) 2685 return; 2686 2687 // Even though we limited get_posts() to return only 1 item it still returns an array of objects. 2688 $post = $posts[0]; 2689 2690 if ( empty($post->post_title) ) 2691 $post->post_title = $start ? __('First Post') : __('Last Post'); 2692 2693 $date = mysql2date(get_option('date_format'), $post->post_date); 2694 2695 $title = str_replace('%title', $post->post_title, $title); 2696 $title = str_replace('%date', $date, $title); 2697 $title = apply_filters('the_title', $title, $post->ID); 2698 2699 $link = $start ? "<link rel='start' title='" : "<link rel='end' title='"; 2700 $link .= esc_attr($title); 2701 $link .= "' href='" . get_permalink($post) . "' />\n"; 2702 2703 $boundary = $start ? 'start' : 'end'; 2704 return apply_filters( "{$boundary}_post_rel_link", $link ); 2705 } 2706 2707 /** 2708 * Display relational link for the first post. 2709 * 2710 * @since 2.8.0 2711 * @deprecated 3.3.0 2712 * 2713 * @param string $title Optional. Link title format. 2714 * @param bool $in_same_cat Optional. Whether link should be in a same category. 2715 * @param string $excluded_categories Optional. Excluded categories IDs. 2716 */ 2717 function start_post_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '') { 2718 _deprecated_function( __FUNCTION__, '3.3.0' ); 2719 2720 echo get_boundary_post_rel_link($title, $in_same_cat, $excluded_categories, true); 2721 } 2722 2723 /** 2724 * Get site index relational link. 2725 * 2726 * @since 2.8.0 2727 * @deprecated 3.3.0 2728 * 2729 * @return string 2730 */ 2731 function get_index_rel_link() { 2732 _deprecated_function( __FUNCTION__, '3.3.0' ); 2733 2734 $link = "<link rel='index' title='" . esc_attr( get_bloginfo( 'name', 'display' ) ) . "' href='" . esc_url( user_trailingslashit( get_bloginfo( 'url', 'display' ) ) ) . "' />\n"; 2735 return apply_filters( "index_rel_link", $link ); 2736 } 2737 2738 /** 2739 * Display relational link for the site index. 2740 * 2741 * @since 2.8.0 2742 * @deprecated 3.3.0 2743 */ 2744 function index_rel_link() { 2745 _deprecated_function( __FUNCTION__, '3.3.0' ); 2746 2747 echo get_index_rel_link(); 2748 } 2749 2750 /** 2751 * Get parent post relational link. 2752 * 2753 * @since 2.8.0 2754 * @deprecated 3.3.0 2755 * 2756 * @param string $title Optional. Link title format. Default '%title'. 2757 * @return string 2758 */ 2759 function get_parent_post_rel_link( $title = '%title' ) { 2760 _deprecated_function( __FUNCTION__, '3.3.0' ); 2761 2762 if ( ! empty( $GLOBALS['post'] ) && ! empty( $GLOBALS['post']->post_parent ) ) 2763 $post = get_post($GLOBALS['post']->post_parent); 2764 2765 if ( empty($post) ) 2766 return; 2767 2768 $date = mysql2date(get_option('date_format'), $post->post_date); 2769 2770 $title = str_replace('%title', $post->post_title, $title); 2771 $title = str_replace('%date', $date, $title); 2772 $title = apply_filters('the_title', $title, $post->ID); 2773 2774 $link = "<link rel='up' title='"; 2775 $link .= esc_attr( $title ); 2776 $link .= "' href='" . get_permalink($post) . "' />\n"; 2777 2778 return apply_filters( "parent_post_rel_link", $link ); 2779 } 2780 2781 /** 2782 * Display relational link for parent item 2783 * 2784 * @since 2.8.0 2785 * @deprecated 3.3.0 2786 * 2787 * @param string $title Optional. Link title format. Default '%title'. 2788 */ 2789 function parent_post_rel_link( $title = '%title' ) { 2790 _deprecated_function( __FUNCTION__, '3.3.0' ); 2791 2792 echo get_parent_post_rel_link($title); 2793 } 2794 2795 /** 2796 * Add the "Dashboard"/"Visit Site" menu. 2797 * 2798 * @since 3.2.0 2799 * @deprecated 3.3.0 2800 * 2801 * @param WP_Admin_Bar $wp_admin_bar WP_Admin_Bar instance. 2802 */ 2803 function wp_admin_bar_dashboard_view_site_menu( $wp_admin_bar ) { 2804 _deprecated_function( __FUNCTION__, '3.3.0' ); 2805 2806 $user_id = get_current_user_id(); 2807 2808 if ( 0 != $user_id ) { 2809 if ( is_admin() ) 2810 $wp_admin_bar->add_menu( array( 'id' => 'view-site', 'title' => __( 'Visit Site' ), 'href' => home_url() ) ); 2811 elseif ( is_multisite() ) 2812 $wp_admin_bar->add_menu( array( 'id' => 'dashboard', 'title' => __( 'Dashboard' ), 'href' => get_dashboard_url( $user_id ) ) ); 2813 else 2814 $wp_admin_bar->add_menu( array( 'id' => 'dashboard', 'title' => __( 'Dashboard' ), 'href' => admin_url() ) ); 2815 } 2816 } 2817 2818 /** 2819 * Checks if the current user belong to a given site. 2820 * 2821 * @since MU (3.0.0) 2822 * @deprecated 3.3.0 Use is_user_member_of_blog() 2823 * @see is_user_member_of_blog() 2824 * 2825 * @param int $blog_id Site ID 2826 * @return bool True if the current users belong to $blog_id, false if not. 2827 */ 2828 function is_blog_user( $blog_id = 0 ) { 2829 _deprecated_function( __FUNCTION__, '3.3.0', 'is_user_member_of_blog()' ); 2830 2831 return is_user_member_of_blog( get_current_user_id(), $blog_id ); 2832 } 2833 2834 /** 2835 * Open the file handle for debugging. 2836 * 2837 * @since 0.71 2838 * @deprecated 3.4.0 Use error_log() 2839 * @see error_log() 2840 * 2841 * @link https://www.php.net/manual/en/function.error-log.php 2842 * 2843 * @param string $filename File name. 2844 * @param string $mode Type of access you required to the stream. 2845 * @return false Always false. 2846 */ 2847 function debug_fopen( $filename, $mode ) { 2848 _deprecated_function( __FUNCTION__, '3.4.0', 'error_log()' ); 2849 return false; 2850 } 2851 2852 /** 2853 * Write contents to the file used for debugging. 2854 * 2855 * @since 0.71 2856 * @deprecated 3.4.0 Use error_log() 2857 * @see error_log() 2858 * 2859 * @link https://www.php.net/manual/en/function.error-log.php 2860 * 2861 * @param mixed $fp Unused. 2862 * @param string $message Message to log. 2863 */ 2864 function debug_fwrite( $fp, $message ) { 2865 _deprecated_function( __FUNCTION__, '3.4.0', 'error_log()' ); 2866 if ( ! empty( $GLOBALS['debug'] ) ) 2867 error_log( $message ); 2868 } 2869 2870 /** 2871 * Close the debugging file handle. 2872 * 2873 * @since 0.71 2874 * @deprecated 3.4.0 Use error_log() 2875 * @see error_log() 2876 * 2877 * @link https://www.php.net/manual/en/function.error-log.php 2878 * 2879 * @param mixed $fp Unused. 2880 */ 2881 function debug_fclose( $fp ) { 2882 _deprecated_function( __FUNCTION__, '3.4.0', 'error_log()' ); 2883 } 2884 2885 /** 2886 * Retrieve list of themes with theme data in theme directory. 2887 * 2888 * The theme is broken, if it doesn't have a parent theme and is missing either 2889 * style.css and, or index.php. If the theme has a parent theme then it is 2890 * broken, if it is missing style.css; index.php is optional. 2891 * 2892 * @since 1.5.0 2893 * @deprecated 3.4.0 Use wp_get_themes() 2894 * @see wp_get_themes() 2895 * 2896 * @return array Theme list with theme data. 2897 */ 2898 function get_themes() { 2899 _deprecated_function( __FUNCTION__, '3.4.0', 'wp_get_themes()' ); 2900 2901 global $wp_themes; 2902 if ( isset( $wp_themes ) ) 2903 return $wp_themes; 2904 2905 $themes = wp_get_themes(); 2906 $wp_themes = array(); 2907 2908 foreach ( $themes as $theme ) { 2909 $name = $theme->get('Name'); 2910 if ( isset( $wp_themes[ $name ] ) ) 2911 $wp_themes[ $name . '/' . $theme->get_stylesheet() ] = $theme; 2912 else 2913 $wp_themes[ $name ] = $theme; 2914 } 2915 2916 return $wp_themes; 2917 } 2918 2919 /** 2920 * Retrieve theme data. 2921 * 2922 * @since 1.5.0 2923 * @deprecated 3.4.0 Use wp_get_theme() 2924 * @see wp_get_theme() 2925 * 2926 * @param string $theme Theme name. 2927 * @return array|null Null, if theme name does not exist. Theme data, if exists. 2928 */ 2929 function get_theme( $theme ) { 2930 _deprecated_function( __FUNCTION__, '3.4.0', 'wp_get_theme( $stylesheet )' ); 2931 2932 $themes = get_themes(); 2933 if ( is_array( $themes ) && array_key_exists( $theme, $themes ) ) 2934 return $themes[ $theme ]; 2935 return null; 2936 } 2937 2938 /** 2939 * Retrieve current theme name. 2940 * 2941 * @since 1.5.0 2942 * @deprecated 3.4.0 Use wp_get_theme() 2943 * @see wp_get_theme() 2944 * 2945 * @return string 2946 */ 2947 function get_current_theme() { 2948 _deprecated_function( __FUNCTION__, '3.4.0', 'wp_get_theme()' ); 2949 2950 if ( $theme = get_option( 'current_theme' ) ) 2951 return $theme; 2952 2953 return wp_get_theme()->get('Name'); 2954 } 2955 2956 /** 2957 * Accepts matches array from preg_replace_callback in wpautop() or a string. 2958 * 2959 * Ensures that the contents of a `<pre>...</pre>` HTML block are not 2960 * converted into paragraphs or line breaks. 2961 * 2962 * @since 1.2.0 2963 * @deprecated 3.4.0 2964 * 2965 * @param array|string $matches The array or string 2966 * @return string The pre block without paragraph/line break conversion. 2967 */ 2968 function clean_pre($matches) { 2969 _deprecated_function( __FUNCTION__, '3.4.0' ); 2970 2971 if ( is_array($matches) ) 2972 $text = $matches[1] . $matches[2] . "</pre>"; 2973 else 2974 $text = $matches; 2975 2976 $text = str_replace(array('<br />', '<br/>', '<br>'), array('', '', ''), $text); 2977 $text = str_replace('<p>', "\n", $text); 2978 $text = str_replace('</p>', '', $text); 2979 2980 return $text; 2981 } 2982 2983 2984 /** 2985 * Add callbacks for image header display. 2986 * 2987 * @since 2.1.0 2988 * @deprecated 3.4.0 Use add_theme_support() 2989 * @see add_theme_support() 2990 * 2991 * @param callable $wp_head_callback Call on the {@see 'wp_head'} action. 2992 * @param callable $admin_head_callback Call on custom header administration screen. 2993 * @param callable $admin_preview_callback Output a custom header image div on the custom header administration screen. Optional. 2994 */ 2995 function add_custom_image_header( $wp_head_callback, $admin_head_callback, $admin_preview_callback = '' ) { 2996 _deprecated_function( __FUNCTION__, '3.4.0', 'add_theme_support( \'custom-header\', $args )' ); 2997 $args = array( 2998 'wp-head-callback' => $wp_head_callback, 2999 'admin-head-callback' => $admin_head_callback, 3000 ); 3001 if ( $admin_preview_callback ) 3002 $args['admin-preview-callback'] = $admin_preview_callback; 3003 return add_theme_support( 'custom-header', $args ); 3004 } 3005 3006 /** 3007 * Remove image header support. 3008 * 3009 * @since 3.1.0 3010 * @deprecated 3.4.0 Use remove_theme_support() 3011 * @see remove_theme_support() 3012 * 3013 * @return null|bool Whether support was removed. 3014 */ 3015 function remove_custom_image_header() { 3016 _deprecated_function( __FUNCTION__, '3.4.0', 'remove_theme_support( \'custom-header\' )' ); 3017 return remove_theme_support( 'custom-header' ); 3018 } 3019 3020 /** 3021 * Add callbacks for background image display. 3022 * 3023 * @since 3.0.0 3024 * @deprecated 3.4.0 Use add_theme_support() 3025 * @see add_theme_support() 3026 * 3027 * @param callable $wp_head_callback Call on the {@see 'wp_head'} action. 3028 * @param callable $admin_head_callback Call on custom background administration screen. 3029 * @param callable $admin_preview_callback Output a custom background image div on the custom background administration screen. Optional. 3030 */ 3031 function add_custom_background( $wp_head_callback = '', $admin_head_callback = '', $admin_preview_callback = '' ) { 3032 _deprecated_function( __FUNCTION__, '3.4.0', 'add_theme_support( \'custom-background\', $args )' ); 3033 $args = array(); 3034 if ( $wp_head_callback ) 3035 $args['wp-head-callback'] = $wp_head_callback; 3036 if ( $admin_head_callback ) 3037 $args['admin-head-callback'] = $admin_head_callback; 3038 if ( $admin_preview_callback ) 3039 $args['admin-preview-callback'] = $admin_preview_callback; 3040 return add_theme_support( 'custom-background', $args ); 3041 } 3042 3043 /** 3044 * Remove custom background support. 3045 * 3046 * @since 3.1.0 3047 * @deprecated 3.4.0 Use add_custom_background() 3048 * @see add_custom_background() 3049 * 3050 * @return null|bool Whether support was removed. 3051 */ 3052 function remove_custom_background() { 3053 _deprecated_function( __FUNCTION__, '3.4.0', 'remove_theme_support( \'custom-background\' )' ); 3054 return remove_theme_support( 'custom-background' ); 3055 } 3056 3057 /** 3058 * Retrieve theme data from parsed theme file. 3059 * 3060 * @since 1.5.0 3061 * @deprecated 3.4.0 Use wp_get_theme() 3062 * @see wp_get_theme() 3063 * 3064 * @param string $theme_file Theme file path. 3065 * @return array Theme data. 3066 */ 3067 function get_theme_data( $theme_file ) { 3068 _deprecated_function( __FUNCTION__, '3.4.0', 'wp_get_theme()' ); 3069 $theme = new WP_Theme( wp_basename( dirname( $theme_file ) ), dirname( dirname( $theme_file ) ) ); 3070 3071 $theme_data = array( 3072 'Name' => $theme->get('Name'), 3073 'URI' => $theme->display('ThemeURI', true, false), 3074 'Description' => $theme->display('Description', true, false), 3075 'Author' => $theme->display('Author', true, false), 3076 'AuthorURI' => $theme->display('AuthorURI', true, false), 3077 'Version' => $theme->get('Version'), 3078 'Template' => $theme->get('Template'), 3079 'Status' => $theme->get('Status'), 3080 'Tags' => $theme->get('Tags'), 3081 'Title' => $theme->get('Name'), 3082 'AuthorName' => $theme->get('Author'), 3083 ); 3084 3085 foreach ( apply_filters( 'extra_theme_headers', array() ) as $extra_header ) { 3086 if ( ! isset( $theme_data[ $extra_header ] ) ) 3087 $theme_data[ $extra_header ] = $theme->get( $extra_header ); 3088 } 3089 3090 return $theme_data; 3091 } 3092 3093 /** 3094 * Alias of update_post_cache(). 3095 * 3096 * @see update_post_cache() Posts and pages are the same, alias is intentional 3097 * 3098 * @since 1.5.1 3099 * @deprecated 3.4.0 Use update_post_cache() 3100 * @see update_post_cache() 3101 * 3102 * @param array $pages list of page objects 3103 */ 3104 function update_page_cache( &$pages ) { 3105 _deprecated_function( __FUNCTION__, '3.4.0', 'update_post_cache()' ); 3106 3107 update_post_cache( $pages ); 3108 } 3109 3110 /** 3111 * Will clean the page in the cache. 3112 * 3113 * Clean (read: delete) page from cache that matches $id. Will also clean cache 3114 * associated with 'all_page_ids' and 'get_pages'. 3115 * 3116 * @since 2.0.0 3117 * @deprecated 3.4.0 Use clean_post_cache 3118 * @see clean_post_cache() 3119 * 3120 * @param int $id Page ID to clean 3121 */ 3122 function clean_page_cache( $id ) { 3123 _deprecated_function( __FUNCTION__, '3.4.0', 'clean_post_cache()' ); 3124 3125 clean_post_cache( $id ); 3126 } 3127 3128 /** 3129 * Retrieve nonce action "Are you sure" message. 3130 * 3131 * Deprecated in 3.4.1 and 3.5.0. Backported to 3.3.3. 3132 * 3133 * @since 2.0.4 3134 * @deprecated 3.4.1 Use wp_nonce_ays() 3135 * @see wp_nonce_ays() 3136 * 3137 * @param string $action Nonce action. 3138 * @return string Are you sure message. 3139 */ 3140 function wp_explain_nonce( $action ) { 3141 _deprecated_function( __FUNCTION__, '3.4.1', 'wp_nonce_ays()' ); 3142 return __( 'Are you sure you want to do this?' ); 3143 } 3144 3145 /** 3146 * Display "sticky" CSS class, if a post is sticky. 3147 * 3148 * @since 2.7.0 3149 * @deprecated 3.5.0 Use post_class() 3150 * @see post_class() 3151 * 3152 * @param int $post_id An optional post ID. 3153 */ 3154 function sticky_class( $post_id = null ) { 3155 _deprecated_function( __FUNCTION__, '3.5.0', 'post_class()' ); 3156 if ( is_sticky( $post_id ) ) 3157 echo ' sticky'; 3158 } 3159 3160 /** 3161 * Retrieve post ancestors. 3162 * 3163 * This is no longer needed as WP_Post lazy-loads the ancestors 3164 * property with get_post_ancestors(). 3165 * 3166 * @since 2.3.4 3167 * @deprecated 3.5.0 Use get_post_ancestors() 3168 * @see get_post_ancestors() 3169 * 3170 * @param WP_Post $post Post object, passed by reference (unused). 3171 */ 3172 function _get_post_ancestors( &$post ) { 3173 _deprecated_function( __FUNCTION__, '3.5.0' ); 3174 } 3175 3176 /** 3177 * Load an image from a string, if PHP supports it. 3178 * 3179 * @since 2.1.0 3180 * @deprecated 3.5.0 Use wp_get_image_editor() 3181 * @see wp_get_image_editor() 3182 * 3183 * @param string $file Filename of the image to load. 3184 * @return resource|GdImage|string The resulting image resource or GdImage instance on success, 3185 * error string on failure. 3186 */ 3187 function wp_load_image( $file ) { 3188 _deprecated_function( __FUNCTION__, '3.5.0', 'wp_get_image_editor()' ); 3189 3190 if ( is_numeric( $file ) ) 3191 $file = get_attached_file( $file ); 3192 3193 if ( ! is_file( $file ) ) { 3194 /* translators: %s: File name. */ 3195 return sprintf( __( 'File “%s” does not exist?' ), $file ); 3196 } 3197 3198 if ( ! function_exists('imagecreatefromstring') ) 3199 return __('The GD image library is not installed.'); 3200 3201 // Set artificially high because GD uses uncompressed images in memory. 3202 wp_raise_memory_limit( 'image' ); 3203 3204 $image = imagecreatefromstring( file_get_contents( $file ) ); 3205 3206 if ( ! is_gd_image( $image ) ) { 3207 /* translators: %s: File name. */ 3208 return sprintf( __( 'File “%s” is not an image.' ), $file ); 3209 } 3210 3211 return $image; 3212 } 3213 3214 /** 3215 * Scale down an image to fit a particular size and save a new copy of the image. 3216 * 3217 * The PNG transparency will be preserved using the function, as well as the 3218 * image type. If the file going in is PNG, then the resized image is going to 3219 * be PNG. The only supported image types are PNG, GIF, and JPEG. 3220 * 3221 * Some functionality requires API to exist, so some PHP version may lose out 3222 * support. This is not the fault of WordPress (where functionality is 3223 * downgraded, not actual defects), but of your PHP version. 3224 * 3225 * @since 2.5.0 3226 * @deprecated 3.5.0 Use wp_get_image_editor() 3227 * @see wp_get_image_editor() 3228 * 3229 * @param string $file Image file path. 3230 * @param int $max_w Maximum width to resize to. 3231 * @param int $max_h Maximum height to resize to. 3232 * @param bool $crop Optional. Whether to crop image or resize. Default false. 3233 * @param string $suffix Optional. File suffix. Default null. 3234 * @param string $dest_path Optional. New image file path. Default null. 3235 * @param int $jpeg_quality Optional. Image quality percentage. Default 90. 3236 * @return mixed WP_Error on failure. String with new destination path. 3237 */ 3238 function image_resize( $file, $max_w, $max_h, $crop = false, $suffix = null, $dest_path = null, $jpeg_quality = 90 ) { 3239 _deprecated_function( __FUNCTION__, '3.5.0', 'wp_get_image_editor()' ); 3240 3241 $editor = wp_get_image_editor( $file ); 3242 if ( is_wp_error( $editor ) ) 3243 return $editor; 3244 $editor->set_quality( $jpeg_quality ); 3245 3246 $resized = $editor->resize( $max_w, $max_h, $crop ); 3247 if ( is_wp_error( $resized ) ) 3248 return $resized; 3249 3250 $dest_file = $editor->generate_filename( $suffix, $dest_path ); 3251 $saved = $editor->save( $dest_file ); 3252 3253 if ( is_wp_error( $saved ) ) 3254 return $saved; 3255 3256 return $dest_file; 3257 } 3258 3259 /** 3260 * Retrieve a single post, based on post ID. 3261 * 3262 * Has categories in 'post_category' property or key. Has tags in 'tags_input' 3263 * property or key. 3264 * 3265 * @since 1.0.0 3266 * @deprecated 3.5.0 Use get_post() 3267 * @see get_post() 3268 * 3269 * @param int $postid Post ID. 3270 * @param string $mode How to return result, either OBJECT, ARRAY_N, or ARRAY_A. 3271 * @return WP_Post|null Post object or array holding post contents and information 3272 */ 3273 function wp_get_single_post( $postid = 0, $mode = OBJECT ) { 3274 _deprecated_function( __FUNCTION__, '3.5.0', 'get_post()' ); 3275 return get_post( $postid, $mode ); 3276 } 3277 3278 /** 3279 * Check that the user login name and password is correct. 3280 * 3281 * @since 0.71 3282 * @deprecated 3.5.0 Use wp_authenticate() 3283 * @see wp_authenticate() 3284 * 3285 * @param string $user_login User name. 3286 * @param string $user_pass User password. 3287 * @return bool False if does not authenticate, true if username and password authenticates. 3288 */ 3289 function user_pass_ok($user_login, $user_pass) { 3290 _deprecated_function( __FUNCTION__, '3.5.0', 'wp_authenticate()' ); 3291 $user = wp_authenticate( $user_login, $user_pass ); 3292 if ( is_wp_error( $user ) ) 3293 return false; 3294 3295 return true; 3296 } 3297 3298 /** 3299 * Callback formerly fired on the save_post hook. No longer needed. 3300 * 3301 * @since 2.3.0 3302 * @deprecated 3.5.0 3303 */ 3304 function _save_post_hook() {} 3305 3306 /** 3307 * Check if the installed version of GD supports particular image type 3308 * 3309 * @since 2.9.0 3310 * @deprecated 3.5.0 Use wp_image_editor_supports() 3311 * @see wp_image_editor_supports() 3312 * 3313 * @param string $mime_type 3314 * @return bool 3315 */ 3316 function gd_edit_image_support($mime_type) { 3317 _deprecated_function( __FUNCTION__, '3.5.0', 'wp_image_editor_supports()' ); 3318 3319 if ( function_exists('imagetypes') ) { 3320 switch( $mime_type ) { 3321 case 'image/jpeg': 3322 return (imagetypes() & IMG_JPG) != 0; 3323 case 'image/png': 3324 return (imagetypes() & IMG_PNG) != 0; 3325 case 'image/gif': 3326 return (imagetypes() & IMG_GIF) != 0; 3327 case 'image/webp': 3328 return (imagetypes() & IMG_WEBP) != 0; 3329 } 3330 } else { 3331 switch( $mime_type ) { 3332 case 'image/jpeg': 3333 return function_exists('imagecreatefromjpeg'); 3334 case 'image/png': 3335 return function_exists('imagecreatefrompng'); 3336 case 'image/gif': 3337 return function_exists('imagecreatefromgif'); 3338 case 'image/webp': 3339 return function_exists('imagecreatefromwebp'); 3340 } 3341 } 3342 return false; 3343 } 3344 3345 /** 3346 * Converts an integer byte value to a shorthand byte value. 3347 * 3348 * @since 2.3.0 3349 * @deprecated 3.6.0 Use size_format() 3350 * @see size_format() 3351 * 3352 * @param int $bytes An integer byte value. 3353 * @return string A shorthand byte value. 3354 */ 3355 function wp_convert_bytes_to_hr( $bytes ) { 3356 _deprecated_function( __FUNCTION__, '3.6.0', 'size_format()' ); 3357 3358 $units = array( 0 => 'B', 1 => 'KB', 2 => 'MB', 3 => 'GB', 4 => 'TB' ); 3359 $log = log( $bytes, KB_IN_BYTES ); 3360 $power = (int) $log; 3361 $size = KB_IN_BYTES ** ( $log - $power ); 3362 3363 if ( ! is_nan( $size ) && array_key_exists( $power, $units ) ) { 3364 $unit = $units[ $power ]; 3365 } else { 3366 $size = $bytes; 3367 $unit = $units[0]; 3368 } 3369 3370 return $size . $unit; 3371 } 3372 3373 /** 3374 * Formerly used internally to tidy up the search terms. 3375 * 3376 * @since 2.9.0 3377 * @access private 3378 * @deprecated 3.7.0 3379 * 3380 * @param string $t Search terms to "tidy", e.g. trim. 3381 * @return string Trimmed search terms. 3382 */ 3383 function _search_terms_tidy( $t ) { 3384 _deprecated_function( __FUNCTION__, '3.7.0' ); 3385 return trim( $t, "\"'\n\r " ); 3386 } 3387 3388 /** 3389 * Determine if TinyMCE is available. 3390 * 3391 * Checks to see if the user has deleted the tinymce files to slim down 3392 * their WordPress installation. 3393 * 3394 * @since 2.1.0 3395 * @deprecated 3.9.0 3396 * 3397 * @return bool Whether TinyMCE exists. 3398 */ 3399 function rich_edit_exists() { 3400 global $wp_rich_edit_exists; 3401 _deprecated_function( __FUNCTION__, '3.9.0' ); 3402 3403 if ( ! isset( $wp_rich_edit_exists ) ) 3404 $wp_rich_edit_exists = file_exists( ABSPATH . WPINC . '/js/tinymce/tinymce.js' ); 3405 3406 return $wp_rich_edit_exists; 3407 } 3408 3409 /** 3410 * Old callback for tag link tooltips. 3411 * 3412 * @since 2.7.0 3413 * @access private 3414 * @deprecated 3.9.0 3415 * 3416 * @param int $count Number of topics. 3417 * @return int Number of topics. 3418 */ 3419 function default_topic_count_text( $count ) { 3420 return $count; 3421 } 3422 3423 /** 3424 * Formerly used to escape strings before inserting into the DB. 3425 * 3426 * Has not performed this function for many, many years. Use wpdb::prepare() instead. 3427 * 3428 * @since 0.71 3429 * @deprecated 3.9.0 3430 * 3431 * @param string $content The text to format. 3432 * @return string The very same text. 3433 */ 3434 function format_to_post( $content ) { 3435 _deprecated_function( __FUNCTION__, '3.9.0' ); 3436 return $content; 3437 } 3438 3439 /** 3440 * Formerly used to escape strings before searching the DB. It was poorly documented and never worked as described. 3441 * 3442 * @since 2.5.0 3443 * @deprecated 4.0.0 Use wpdb::esc_like() 3444 * @see wpdb::esc_like() 3445 * 3446 * @param string $text The text to be escaped. 3447 * @return string text, safe for inclusion in LIKE query. 3448 */ 3449 function like_escape($text) { 3450 _deprecated_function( __FUNCTION__, '4.0.0', 'wpdb::esc_like()' ); 3451 return str_replace( array( "%", "_" ), array( "\\%", "\\_" ), $text ); 3452 } 3453 3454 /** 3455 * Determines if the URL can be accessed over SSL. 3456 * 3457 * Determines if the URL can be accessed over SSL by using the WordPress HTTP API to access 3458 * the URL using https as the scheme. 3459 * 3460 * @since 2.5.0 3461 * @deprecated 4.0.0 3462 * 3463 * @param string $url The URL to test. 3464 * @return bool Whether SSL access is available. 3465 */ 3466 function url_is_accessable_via_ssl( $url ) { 3467 _deprecated_function( __FUNCTION__, '4.0.0' ); 3468 3469 $response = wp_remote_get( set_url_scheme( $url, 'https' ) ); 3470 3471 if ( !is_wp_error( $response ) ) { 3472 $status = wp_remote_retrieve_response_code( $response ); 3473 if ( 200 == $status || 401 == $status ) { 3474 return true; 3475 } 3476 } 3477 3478 return false; 3479 } 3480 3481 /** 3482 * Start preview theme output buffer. 3483 * 3484 * Will only perform task if the user has permissions and template and preview 3485 * query variables exist. 3486 * 3487 * @since 2.6.0 3488 * @deprecated 4.3.0 3489 */ 3490 function preview_theme() { 3491 _deprecated_function( __FUNCTION__, '4.3.0' ); 3492 } 3493 3494 /** 3495 * Private function to modify the current template when previewing a theme 3496 * 3497 * @since 2.9.0 3498 * @deprecated 4.3.0 3499 * @access private 3500 * 3501 * @return string 3502 */ 3503 function _preview_theme_template_filter() { 3504 _deprecated_function( __FUNCTION__, '4.3.0' ); 3505 return ''; 3506 } 3507 3508 /** 3509 * Private function to modify the current stylesheet when previewing a theme 3510 * 3511 * @since 2.9.0 3512 * @deprecated 4.3.0 3513 * @access private 3514 * 3515 * @return string 3516 */ 3517 function _preview_theme_stylesheet_filter() { 3518 _deprecated_function( __FUNCTION__, '4.3.0' ); 3519 return ''; 3520 } 3521 3522 /** 3523 * Callback function for ob_start() to capture all links in the theme. 3524 * 3525 * @since 2.6.0 3526 * @deprecated 4.3.0 3527 * @access private 3528 * 3529 * @param string $content 3530 * @return string 3531 */ 3532 function preview_theme_ob_filter( $content ) { 3533 _deprecated_function( __FUNCTION__, '4.3.0' ); 3534 return $content; 3535 } 3536 3537 /** 3538 * Manipulates preview theme links in order to control and maintain location. 3539 * 3540 * Callback function for preg_replace_callback() to accept and filter matches. 3541 * 3542 * @since 2.6.0 3543 * @deprecated 4.3.0 3544 * @access private 3545 * 3546 * @param array $matches 3547 * @return string 3548 */ 3549 function preview_theme_ob_filter_callback( $matches ) { 3550 _deprecated_function( __FUNCTION__, '4.3.0' ); 3551 return ''; 3552 } 3553 3554 /** 3555 * Formats text for the rich text editor. 3556 * 3557 * The {@see 'richedit_pre'} filter is applied here. If `$text` is empty the filter will 3558 * be applied to an empty string. 3559 * 3560 * @since 2.0.0 3561 * @deprecated 4.3.0 Use format_for_editor() 3562 * @see format_for_editor() 3563 * 3564 * @param string $text The text to be formatted. 3565 * @return string The formatted text after filter is applied. 3566 */ 3567 function wp_richedit_pre($text) { 3568 _deprecated_function( __FUNCTION__, '4.3.0', 'format_for_editor()' ); 3569 3570 if ( empty( $text ) ) { 3571 /** 3572 * Filters text returned for the rich text editor. 3573 * 3574 * This filter is first evaluated, and the value returned, if an empty string 3575 * is passed to wp_richedit_pre(). If an empty string is passed, it results 3576 * in a break tag and line feed. 3577 * 3578 * If a non-empty string is passed, the filter is evaluated on the wp_richedit_pre() 3579 * return after being formatted. 3580 * 3581 * @since 2.0.0 3582 * @deprecated 4.3.0 3583 * 3584 * @param string $output Text for the rich text editor. 3585 */ 3586 return apply_filters( 'richedit_pre', '' ); 3587 } 3588 3589 $output = convert_chars($text); 3590 $output = wpautop($output); 3591 $output = htmlspecialchars($output, ENT_NOQUOTES, get_option( 'blog_charset' ) ); 3592 3593 /** This filter is documented in wp-includes/deprecated.php */ 3594 return apply_filters( 'richedit_pre', $output ); 3595 } 3596 3597 /** 3598 * Formats text for the HTML editor. 3599 * 3600 * Unless $output is empty it will pass through htmlspecialchars before the 3601 * {@see 'htmledit_pre'} filter is applied. 3602 * 3603 * @since 2.5.0 3604 * @deprecated 4.3.0 Use format_for_editor() 3605 * @see format_for_editor() 3606 * 3607 * @param string $output The text to be formatted. 3608 * @return string Formatted text after filter applied. 3609 */ 3610 function wp_htmledit_pre($output) { 3611 _deprecated_function( __FUNCTION__, '4.3.0', 'format_for_editor()' ); 3612 3613 if ( !empty($output) ) 3614 $output = htmlspecialchars($output, ENT_NOQUOTES, get_option( 'blog_charset' ) ); // Convert only '< > &'. 3615 3616 /** 3617 * Filters the text before it is formatted for the HTML editor. 3618 * 3619 * @since 2.5.0 3620 * @deprecated 4.3.0 3621 * 3622 * @param string $output The HTML-formatted text. 3623 */ 3624 return apply_filters( 'htmledit_pre', $output ); 3625 } 3626 3627 /** 3628 * Retrieve permalink from post ID. 3629 * 3630 * @since 1.0.0 3631 * @deprecated 4.4.0 Use get_permalink() 3632 * @see get_permalink() 3633 * 3634 * @param int|WP_Post $post_id Optional. Post ID or WP_Post object. Default is global $post. 3635 * @return string|false 3636 */ 3637 function post_permalink( $post_id = 0 ) { 3638 _deprecated_function( __FUNCTION__, '4.4.0', 'get_permalink()' ); 3639 3640 return get_permalink( $post_id ); 3641 } 3642 3643 /** 3644 * Perform a HTTP HEAD or GET request. 3645 * 3646 * If $file_path is a writable filename, this will do a GET request and write 3647 * the file to that path. 3648 * 3649 * @since 2.5.0 3650 * @deprecated 4.4.0 Use WP_Http 3651 * @see WP_Http 3652 * 3653 * @param string $url URL to fetch. 3654 * @param string|bool $file_path Optional. File path to write request to. Default false. 3655 * @param int $red Optional. The number of Redirects followed, Upon 5 being hit, 3656 * returns false. Default 1. 3657 * @return bool|string False on failure and string of headers if HEAD request. 3658 */ 3659 function wp_get_http( $url, $file_path = false, $red = 1 ) { 3660 _deprecated_function( __FUNCTION__, '4.4.0', 'WP_Http' ); 3661 3662 @set_time_limit( 60 ); 3663 3664 if ( $red > 5 ) 3665 return false; 3666 3667 $options = array(); 3668 $options['redirection'] = 5; 3669 3670 if ( false == $file_path ) 3671 $options['method'] = 'HEAD'; 3672 else 3673 $options['method'] = 'GET'; 3674 3675 $response = wp_safe_remote_request( $url, $options ); 3676 3677 if ( is_wp_error( $response ) ) 3678 return false; 3679 3680 $headers = wp_remote_retrieve_headers( $response ); 3681 $headers['response'] = wp_remote_retrieve_response_code( $response ); 3682 3683 // WP_HTTP no longer follows redirects for HEAD requests. 3684 if ( 'HEAD' == $options['method'] && in_array($headers['response'], array(301, 302)) && isset( $headers['location'] ) ) { 3685 return wp_get_http( $headers['location'], $file_path, ++$red ); 3686 } 3687 3688 if ( false == $file_path ) 3689 return $headers; 3690 3691 // GET request - write it to the supplied filename. 3692 $out_fp = fopen($file_path, 'w'); 3693 if ( !$out_fp ) 3694 return $headers; 3695 3696 fwrite( $out_fp, wp_remote_retrieve_body( $response ) ); 3697 fclose($out_fp); 3698 clearstatcache(); 3699 3700 return $headers; 3701 } 3702 3703 /** 3704 * Whether SSL login should be forced. 3705 * 3706 * @since 2.6.0 3707 * @deprecated 4.4.0 Use force_ssl_admin() 3708 * @see force_ssl_admin() 3709 * 3710 * @param string|bool $force Optional Whether to force SSL login. Default null. 3711 * @return bool True if forced, false if not forced. 3712 */ 3713 function force_ssl_login( $force = null ) { 3714 _deprecated_function( __FUNCTION__, '4.4.0', 'force_ssl_admin()' ); 3715 return force_ssl_admin( $force ); 3716 } 3717 3718 /** 3719 * Retrieve path of comment popup template in current or parent template. 3720 * 3721 * @since 1.5.0 3722 * @deprecated 4.5.0 3723 * 3724 * @return string Full path to comments popup template file. 3725 */ 3726 function get_comments_popup_template() { 3727 _deprecated_function( __FUNCTION__, '4.5.0' ); 3728 3729 return ''; 3730 } 3731 3732 /** 3733 * Determines whether the current URL is within the comments popup window. 3734 * 3735 * For more information on this and similar theme functions, check out 3736 * the {@link https://developer.wordpress.org/themes/basics/conditional-tags/ 3737 * Conditional Tags} article in the Theme Developer Handbook. 3738 * 3739 * @since 1.5.0 3740 * @deprecated 4.5.0 3741 * 3742 * @return false Always returns false. 3743 */ 3744 function is_comments_popup() { 3745 _deprecated_function( __FUNCTION__, '4.5.0' ); 3746 3747 return false; 3748 } 3749 3750 /** 3751 * Display the JS popup script to show a comment. 3752 * 3753 * @since 0.71 3754 * @deprecated 4.5.0 3755 */ 3756 function comments_popup_script() { 3757 _deprecated_function( __FUNCTION__, '4.5.0' ); 3758 } 3759 3760 /** 3761 * Adds element attributes to open links in new tabs. 3762 * 3763 * @since 0.71 3764 * @deprecated 4.5.0 3765 * 3766 * @param string $text Content to replace links to open in a new tab. 3767 * @return string Content that has filtered links. 3768 */ 3769 function popuplinks( $text ) { 3770 _deprecated_function( __FUNCTION__, '4.5.0' ); 3771 $text = preg_replace('/<a (.+?)>/i', "<a $1 target='_blank' rel='external'>", $text); 3772 return $text; 3773 } 3774 3775 /** 3776 * The Google Video embed handler callback. 3777 * 3778 * Deprecated function that previously assisted in turning Google Video URLs 3779 * into embeds but that service has since been shut down. 3780 * 3781 * @since 2.9.0 3782 * @deprecated 4.6.0 3783 * 3784 * @return string An empty string. 3785 */ 3786 function wp_embed_handler_googlevideo( $matches, $attr, $url, $rawattr ) { 3787 _deprecated_function( __FUNCTION__, '4.6.0' ); 3788 3789 return ''; 3790 } 3791 3792 /** 3793 * Retrieve path of paged template in current or parent template. 3794 * 3795 * @since 1.5.0 3796 * @deprecated 4.7.0 The paged.php template is no longer part of the theme template hierarchy. 3797 * 3798 * @return string Full path to paged template file. 3799 */ 3800 function get_paged_template() { 3801 _deprecated_function( __FUNCTION__, '4.7.0' ); 3802 3803 return get_query_template( 'paged' ); 3804 } 3805 3806 /** 3807 * Removes the HTML JavaScript entities found in early versions of Netscape 4. 3808 * 3809 * Previously, this function was pulled in from the original 3810 * import of kses and removed a specific vulnerability only 3811 * existent in early version of Netscape 4. However, this 3812 * vulnerability never affected any other browsers and can 3813 * be considered safe for the modern web. 3814 * 3815 * The regular expression which sanitized this vulnerability 3816 * has been removed in consideration of the performance and 3817 * energy demands it placed, now merely passing through its 3818 * input to the return. 3819 * 3820 * @since 1.0.0 3821 * @deprecated 4.7.0 Officially dropped security support for Netscape 4. 3822 * 3823 * @param string $content 3824 * @return string 3825 */ 3826 function wp_kses_js_entities( $content ) { 3827 _deprecated_function( __FUNCTION__, '4.7.0' ); 3828 3829 return preg_replace( '%&\s*\{[^}]*(\}\s*;?|$)%', '', $content ); 3830 } 3831 3832 /** 3833 * Sort categories by ID. 3834 * 3835 * Used by usort() as a callback, should not be used directly. Can actually be 3836 * used to sort any term object. 3837 * 3838 * @since 2.3.0 3839 * @deprecated 4.7.0 Use wp_list_sort() 3840 * @access private 3841 * 3842 * @param object $a 3843 * @param object $b 3844 * @return int 3845 */ 3846 function _usort_terms_by_ID( $a, $b ) { 3847 _deprecated_function( __FUNCTION__, '4.7.0', 'wp_list_sort()' ); 3848 3849 if ( $a->term_id > $b->term_id ) 3850 return 1; 3851 elseif ( $a->term_id < $b->term_id ) 3852 return -1; 3853 else 3854 return 0; 3855 } 3856 3857 /** 3858 * Sort categories by name. 3859 * 3860 * Used by usort() as a callback, should not be used directly. Can actually be 3861 * used to sort any term object. 3862 * 3863 * @since 2.3.0 3864 * @deprecated 4.7.0 Use wp_list_sort() 3865 * @access private 3866 * 3867 * @param object $a 3868 * @param object $b 3869 * @return int 3870 */ 3871 function _usort_terms_by_name( $a, $b ) { 3872 _deprecated_function( __FUNCTION__, '4.7.0', 'wp_list_sort()' ); 3873 3874 return strcmp( $a->name, $b->name ); 3875 } 3876 3877 /** 3878 * Sort menu items by the desired key. 3879 * 3880 * @since 3.0.0 3881 * @deprecated 4.7.0 Use wp_list_sort() 3882 * @access private 3883 * 3884 * @global string $_menu_item_sort_prop 3885 * 3886 * @param object $a The first object to compare 3887 * @param object $b The second object to compare 3888 * @return int -1, 0, or 1 if $a is considered to be respectively less than, equal to, or greater than $b. 3889 */ 3890 function _sort_nav_menu_items( $a, $b ) { 3891 global $_menu_item_sort_prop; 3892 3893 _deprecated_function( __FUNCTION__, '4.7.0', 'wp_list_sort()' ); 3894 3895 if ( empty( $_menu_item_sort_prop ) ) 3896 return 0; 3897 3898 if ( ! isset( $a->$_menu_item_sort_prop ) || ! isset( $b->$_menu_item_sort_prop ) ) 3899 return 0; 3900 3901 $_a = (int) $a->$_menu_item_sort_prop; 3902 $_b = (int) $b->$_menu_item_sort_prop; 3903 3904 if ( $a->$_menu_item_sort_prop == $b->$_menu_item_sort_prop ) 3905 return 0; 3906 elseif ( $_a == $a->$_menu_item_sort_prop && $_b == $b->$_menu_item_sort_prop ) 3907 return $_a < $_b ? -1 : 1; 3908 else 3909 return strcmp( $a->$_menu_item_sort_prop, $b->$_menu_item_sort_prop ); 3910 } 3911 3912 /** 3913 * Retrieves the Press This bookmarklet link. 3914 * 3915 * @since 2.6.0 3916 * @deprecated 4.9.0 3917 * 3918 */ 3919 function get_shortcut_link() { 3920 _deprecated_function( __FUNCTION__, '4.9.0' ); 3921 3922 $link = ''; 3923 3924 /** 3925 * Filters the Press This bookmarklet link. 3926 * 3927 * @since 2.6.0 3928 * @deprecated 4.9.0 3929 * 3930 * @param string $link The Press This bookmarklet link. 3931 */ 3932 return apply_filters( 'shortcut_link', $link ); 3933 } 3934 3935 /** 3936 * Ajax handler for saving a post from Press This. 3937 * 3938 * @since 4.2.0 3939 * @deprecated 4.9.0 3940 */ 3941 function wp_ajax_press_this_save_post() { 3942 _deprecated_function( __FUNCTION__, '4.9.0' ); 3943 if ( is_plugin_active( 'press-this/press-this-plugin.php' ) ) { 3944 include WP_PLUGIN_DIR . '/press-this/class-wp-press-this-plugin.php'; 3945 $wp_press_this = new WP_Press_This_Plugin(); 3946 $wp_press_this->save_post(); 3947 } else { 3948 wp_send_json_error( array( 'errorMessage' => __( 'The Press This plugin is required.' ) ) ); 3949 } 3950 } 3951 3952 /** 3953 * Ajax handler for creating new category from Press This. 3954 * 3955 * @since 4.2.0 3956 * @deprecated 4.9.0 3957 */ 3958 function wp_ajax_press_this_add_category() { 3959 _deprecated_function( __FUNCTION__, '4.9.0' ); 3960 if ( is_plugin_active( 'press-this/press-this-plugin.php' ) ) { 3961 include WP_PLUGIN_DIR . '/press-this/class-wp-press-this-plugin.php'; 3962 $wp_press_this = new WP_Press_This_Plugin(); 3963 $wp_press_this->add_category(); 3964 } else { 3965 wp_send_json_error( array( 'errorMessage' => __( 'The Press This plugin is required.' ) ) ); 3966 } 3967 } 3968 3969 /** 3970 * Return the user request object for the specified request ID. 3971 * 3972 * @since 4.9.6 3973 * @deprecated 5.4.0 Use wp_get_user_request() 3974 * @see wp_get_user_request() 3975 * 3976 * @param int $request_id The ID of the user request. 3977 * @return WP_User_Request|false 3978 */ 3979 function wp_get_user_request_data( $request_id ) { 3980 _deprecated_function( __FUNCTION__, '5.4.0', 'wp_get_user_request()' ); 3981 return wp_get_user_request( $request_id ); 3982 } 3983 3984 /** 3985 * Filters 'img' elements in post content to add 'srcset' and 'sizes' attributes. 3986 * 3987 * @since 4.4.0 3988 * @deprecated 5.5.0 3989 * 3990 * @see wp_image_add_srcset_and_sizes() 3991 * 3992 * @param string $content The raw post content to be filtered. 3993 * @return string Converted content with 'srcset' and 'sizes' attributes added to images. 3994 */ 3995 function wp_make_content_images_responsive( $content ) { 3996 _deprecated_function( __FUNCTION__, '5.5.0', 'wp_filter_content_tags()' ); 3997 3998 // This will also add the `loading` attribute to `img` tags, if enabled. 3999 return wp_filter_content_tags( $content ); 4000 } 4001 4002 /** 4003 * Turn register globals off. 4004 * 4005 * @since 2.1.0 4006 * @access private 4007 * @deprecated 5.5.0 4008 */ 4009 function wp_unregister_GLOBALS() { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.FunctionNameInvalid 4010 // register_globals was deprecated in PHP 5.3 and removed entirely in PHP 5.4. 4011 _deprecated_function( __FUNCTION__, '5.5.0' ); 4012 } 4013 4014 /** 4015 * Does comment contain disallowed characters or words. 4016 * 4017 * @since 1.5.0 4018 * @deprecated 5.5.0 Use wp_check_comment_disallowed_list() instead. 4019 * Please consider writing more inclusive code. 4020 * 4021 * @param string $author The author of the comment 4022 * @param string $email The email of the comment 4023 * @param string $url The url used in the comment 4024 * @param string $comment The comment content 4025 * @param string $user_ip The comment author's IP address 4026 * @param string $user_agent The author's browser user agent 4027 * @return bool True if comment contains disallowed content, false if comment does not 4028 */ 4029 function wp_blacklist_check( $author, $email, $url, $comment, $user_ip, $user_agent ) { 4030 _deprecated_function( __FUNCTION__, '5.5.0', 'wp_check_comment_disallowed_list()' ); 4031 4032 return wp_check_comment_disallowed_list( $author, $email, $url, $comment, $user_ip, $user_agent ); 4033 } 4034 4035 /** 4036 * Filters out `register_meta()` args based on an allowed list. 4037 * 4038 * `register_meta()` args may change over time, so requiring the allowed list 4039 * to be explicitly turned off is a warranty seal of sorts. 4040 * 4041 * @access private 4042 * @since 4.6.0 4043 * @deprecated 5.5.0 Use _wp_register_meta_args_allowed_list() instead. 4044 * Please consider writing more inclusive code. 4045 * 4046 * @param array $args Arguments from `register_meta()`. 4047 * @param array $default_args Default arguments for `register_meta()`. 4048 * @return array Filtered arguments. 4049 */ 4050 function _wp_register_meta_args_whitelist( $args, $default_args ) { 4051 _deprecated_function( __FUNCTION__, '5.5.0', '_wp_register_meta_args_allowed_list()' ); 4052 4053 return _wp_register_meta_args_allowed_list( $args, $default_args ); 4054 } 4055 4056 /** 4057 * Adds an array of options to the list of allowed options. 4058 * 4059 * @since 2.7.0 4060 * @deprecated 5.5.0 Use add_allowed_options() instead. 4061 * Please consider writing more inclusive code. 4062 * 4063 * @global array $allowed_options 4064 * 4065 * @param array $new_options 4066 * @param string|array $options 4067 * @return array 4068 */ 4069 function add_option_whitelist( $new_options, $options = '' ) { 4070 _deprecated_function( __FUNCTION__, '5.5.0', 'add_allowed_options()' ); 4071 4072 return add_allowed_options( $new_options, $options ); 4073 } 4074 4075 /** 4076 * Removes a list of options from the allowed options list. 4077 * 4078 * @since 2.7.0 4079 * @deprecated 5.5.0 Use remove_allowed_options() instead. 4080 * Please consider writing more inclusive code. 4081 * 4082 * @global array $allowed_options 4083 * 4084 * @param array $del_options 4085 * @param string|array $options 4086 * @return array 4087 */ 4088 function remove_option_whitelist( $del_options, $options = '' ) { 4089 _deprecated_function( __FUNCTION__, '5.5.0', 'remove_allowed_options()' ); 4090 4091 return remove_allowed_options( $del_options, $options ); 4092 } 4093 4094 /** 4095 * Adds slashes to only string values in an array of values. 4096 * 4097 * This should be used when preparing data for core APIs that expect slashed data. 4098 * This should not be used to escape data going directly into an SQL query. 4099 * 4100 * @since 5.3.0 4101 * @deprecated 5.6.0 Use wp_slash() 4102 * 4103 * @see wp_slash() 4104 * 4105 * @param mixed $value Scalar or array of scalars. 4106 * @return mixed Slashes $value 4107 */ 4108 function wp_slash_strings_only( $value ) { 4109 return map_deep( $value, 'addslashes_strings_only' ); 4110 } 4111 4112 /** 4113 * Adds slashes only if the provided value is a string. 4114 * 4115 * @since 5.3.0 4116 * @deprecated 5.6.0 4117 * 4118 * @see wp_slash() 4119 * 4120 * @param mixed $value 4121 * @return mixed 4122 */ 4123 function addslashes_strings_only( $value ) { 4124 return is_string( $value ) ? addslashes( $value ) : $value; 4125 } 4126 4127 /** 4128 * Displays a `noindex` meta tag if required by the blog configuration. 4129 * 4130 * If a blog is marked as not being public then the `noindex` meta tag will be 4131 * output to tell web robots not to index the page content. 4132 * 4133 * Typical usage is as a {@see 'wp_head'} callback: 4134 * 4135 * add_action( 'wp_head', 'noindex' ); 4136 * 4137 * @see wp_no_robots() 4138 * 4139 * @since 2.1.0 4140 * @deprecated 5.7.0 Use wp_robots_noindex() instead on 'wp_robots' filter. 4141 */ 4142 function noindex() { 4143 _deprecated_function( __FUNCTION__, '5.7.0', 'wp_robots_noindex()' ); 4144 4145 // If the blog is not public, tell robots to go away. 4146 if ( '0' == get_option( 'blog_public' ) ) { 4147 wp_no_robots(); 4148 } 4149 } 4150 4151 /** 4152 * Display a `noindex` meta tag. 4153 * 4154 * Outputs a `noindex` meta tag that tells web robots not to index the page content. 4155 * 4156 * Typical usage is as a {@see 'wp_head'} callback: 4157 * 4158 * add_action( 'wp_head', 'wp_no_robots' ); 4159 * 4160 * @since 3.3.0 4161 * @since 5.3.0 Echo `noindex,nofollow` if search engine visibility is discouraged. 4162 * @deprecated 5.7.0 Use wp_robots_no_robots() instead on 'wp_robots' filter. 4163 */ 4164 function wp_no_robots() { 4165 _deprecated_function( __FUNCTION__, '5.7.0', 'wp_robots_no_robots()' ); 4166 4167 if ( get_option( 'blog_public' ) ) { 4168 echo "<meta name='robots' content='noindex,follow' />\n"; 4169 return; 4170 } 4171 4172 echo "<meta name='robots' content='noindex,nofollow' />\n"; 4173 } 4174 4175 /** 4176 * Display a `noindex,noarchive` meta tag and referrer `strict-origin-when-cross-origin` meta tag. 4177 * 4178 * Outputs a `noindex,noarchive` meta tag that tells web robots not to index or cache the page content. 4179 * Outputs a referrer `strict-origin-when-cross-origin` meta tag that tells the browser not to send 4180 * the full URL as a referrer to other sites when cross-origin assets are loaded. 4181 * 4182 * Typical usage is as a {@see 'wp_head'} callback: 4183 * 4184 * add_action( 'wp_head', 'wp_sensitive_page_meta' ); 4185 * 4186 * @since 5.0.1 4187 * @deprecated 5.7.0 Use wp_robots_sensitive_page() instead on 'wp_robots' filter 4188 * and wp_strict_cross_origin_referrer() on 'wp_head' action. 4189 * 4190 * @see wp_robots_sensitive_page() 4191 */ 4192 function wp_sensitive_page_meta() { 4193 _deprecated_function( __FUNCTION__, '5.7.0', 'wp_robots_sensitive_page()' ); 4194 4195 ?> 4196 <meta name='robots' content='noindex,noarchive' /> 4197 <?php 4198 wp_strict_cross_origin_referrer(); 4199 } 4200 4201 /** 4202 * Render inner blocks from the `core/columns` block for generating an excerpt. 4203 * 4204 * @since 5.2.0 4205 * @access private 4206 * @deprecated 5.8.0 Use _excerpt_render_inner_blocks() introduced in 5.8.0. 4207 * 4208 * @see _excerpt_render_inner_blocks() 4209 * 4210 * @param array $columns The parsed columns block. 4211 * @param array $allowed_blocks The list of allowed inner blocks. 4212 * @return string The rendered inner blocks. 4213 */ 4214 function _excerpt_render_inner_columns_blocks( $columns, $allowed_blocks ) { 4215 _deprecated_function( __FUNCTION__, '5.8.0', '_excerpt_render_inner_blocks()' ); 4216 4217 return _excerpt_render_inner_blocks( $columns, $allowed_blocks ); 4218 } 4219 4220 /** 4221 * Renders the duotone filter SVG and returns the CSS filter property to 4222 * reference the rendered SVG. 4223 * 4224 * @since 5.9.0 4225 * @deprecated 5.9.1 Use wp_get_duotone_filter_property() introduced in 5.9.1. 4226 * 4227 * @see wp_get_duotone_filter_property() 4228 * 4229 * @param array $preset Duotone preset value as seen in theme.json. 4230 * @return string Duotone CSS filter property. 4231 */ 4232 function wp_render_duotone_filter_preset( $preset ) { 4233 _deprecated_function( __FUNCTION__, '5.9.1', 'wp_get_duotone_filter_property()' ); 4234 4235 return wp_get_duotone_filter_property( $preset ); 4236 } 4237 4238 /** 4239 * Checks whether serialization of the current block's border properties should occur. 4240 * 4241 * @since 5.8.0 4242 * @access private 4243 * @deprecated 6.0.0 Use wp_should_skip_block_supports_serialization() introduced in 6.0.0. 4244 * 4245 * @see wp_should_skip_block_supports_serialization() 4246 * 4247 * @param WP_Block_Type $block_type Block type. 4248 * @return bool Whether serialization of the current block's border properties 4249 * should occur. 4250 */ 4251 function wp_skip_border_serialization( $block_type ) { 4252 _deprecated_function( __FUNCTION__, '6.0.0', 'wp_should_skip_block_supports_serialization()' ); 4253 4254 $border_support = _wp_array_get( $block_type->supports, array( '__experimentalBorder' ), false ); 4255 4256 return is_array( $border_support ) && 4257 array_key_exists( '__experimentalSkipSerialization', $border_support ) && 4258 $border_support['__experimentalSkipSerialization']; 4259 } 4260 4261 /** 4262 * Checks whether serialization of the current block's dimensions properties should occur. 4263 * 4264 * @since 5.9.0 4265 * @access private 4266 * @deprecated 6.0.0 Use wp_should_skip_block_supports_serialization() introduced in 6.0.0. 4267 * 4268 * @see wp_should_skip_block_supports_serialization() 4269 * 4270 * @param WP_Block_type $block_type Block type. 4271 * @return bool Whether to serialize spacing support styles & classes. 4272 */ 4273 function wp_skip_dimensions_serialization( $block_type ) { 4274 _deprecated_function( __FUNCTION__, '6.0.0', 'wp_should_skip_block_supports_serialization()' ); 4275 4276 $dimensions_support = _wp_array_get( $block_type->supports, array( '__experimentalDimensions' ), false ); 4277 4278 return is_array( $dimensions_support ) && 4279 array_key_exists( '__experimentalSkipSerialization', $dimensions_support ) && 4280 $dimensions_support['__experimentalSkipSerialization']; 4281 } 4282 4283 /** 4284 * Checks whether serialization of the current block's spacing properties should occur. 4285 * 4286 * @since 5.9.0 4287 * @access private 4288 * @deprecated 6.0.0 Use wp_should_skip_block_supports_serialization() introduced in 6.0.0. 4289 * 4290 * @see wp_should_skip_block_supports_serialization() 4291 * 4292 * @param WP_Block_Type $block_type Block type. 4293 * @return bool Whether to serialize spacing support styles & classes. 4294 */ 4295 function wp_skip_spacing_serialization( $block_type ) { 4296 _deprecated_function( __FUNCTION__, '6.0.0', 'wp_should_skip_block_supports_serialization()' ); 4297 4298 $spacing_support = _wp_array_get( $block_type->supports, array( 'spacing' ), false ); 4299 4300 return is_array( $spacing_support ) && 4301 array_key_exists( '__experimentalSkipSerialization', $spacing_support ) && 4302 $spacing_support['__experimentalSkipSerialization']; 4303 } 4304 4305 /** 4306 * Inject the block editor assets that need to be loaded into the editor's iframe as an inline script. 4307 * 4308 * @since 5.8.0 4309 * @deprecated 6.0.0 4310 */ 4311 function wp_add_iframed_editor_assets_html() { 4312 _deprecated_function( __FUNCTION__, '6.0.0' ); 4313 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Sun Dec 22 01:00:02 2024 | Cross-referenced by PHPXref 0.7.1 |