Changeset 14108 for trunk/wp-includes/post.php
- Timestamp:
- 04/16/2010 02:08:58 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-includes/post.php
r14087 r14108 632 632 * @see get_post_status_object 633 633 * 634 * @param array|string $args An array of key => value arguments to match against the post statuses. 635 * Only post statuses having attributes that match all arguments are returned. 634 * @param array|string $args An array of key => value arguments to match against the post status objects. 636 635 * @param string $output The type of output to return, either post status 'names' or 'objects'. 'names' is the default. 637 * @param string $operator Whether the elements in $args should be logicallly 'or'ed or 'and'ed together. 'or' means only one element from the array needs to match. 'and' means all elements must match. The default is 'or'. 636 * @param string $operator The logical operation to perform. 'or' means only one element 637 * from the array needs to match; 'and' means all elements must match. The default is 'and'. 638 638 * @return array A list of post type names or objects 639 639 */ 640 function get_post_stati( $args = array(), $output = 'names', $operator = ' or' ) {640 function get_post_stati( $args = array(), $output = 'names', $operator = 'and' ) { 641 641 global $wp_post_statuses; 642 642 643 $do_names = false; 644 if ( 'names' == $output ) 645 $do_names = true; 646 647 if ( 'and' == $operator ) 648 $arg_count = count($args); 649 else 650 $arg_count = 0; 651 652 $post_statuses = array(); 653 foreach ( (array) $wp_post_statuses as $post_status ) { 654 if ( empty($args) ) { 655 if ( $do_names ) 656 $post_statuses[] = $post_status->name; 657 else 658 $post_statuses[] = $post_status; 659 } elseif ( $intersect = array_intersect_assoc((array) $post_status, $args) ) { 660 if ( $arg_count && ( $arg_count != count($intersect) ) ) 661 continue; 662 if ( $do_names ) 663 $post_statuses[] = $post_status->name; 664 else 665 $post_statuses[] = $post_status; 666 } 667 } 668 669 return $post_statuses; 643 $field = ('names' == $output) ? 'name' : false; 644 645 return wp_filter_object_list($wp_post_statuses, $args, $operator, $field); 670 646 } 671 647 … … 702 678 * @return bool|string post type or false on failure. 703 679 */ 704 function get_post_type( $the_post = false) {680 function get_post_type( $the_post = false ) { 705 681 global $post; 706 682 … … 746 722 * @uses $wp_post_types 747 723 * @see register_post_type 748 * @see get_post_types 749 * 750 * @param array|string $args An array of key => value arguments to match against the post types. 751 * Only post types having attributes that match all arguments are returned. 724 * 725 * @param array|string $args An array of key => value arguments to match against the post type objects. 752 726 * @param string $output The type of output to return, either post type 'names' or 'objects'. 'names' is the default. 727 * @param string $operator The logical operation to perform. 'or' means only one element 728 * from the array needs to match; 'and' means all elements must match. The default is 'and'. 753 729 * @return array A list of post type names or objects 754 730 */ 755 function get_post_types( $args = array(), $output = 'names' ) {731 function get_post_types( $args = array(), $output = 'names', $operator = 'and' ) { 756 732 global $wp_post_types; 757 733 758 $do_names = false; 759 if ( 'names' == $output ) 760 $do_names = true; 761 762 $post_types = array(); 763 foreach ( (array) $wp_post_types as $post_type ) { 764 if ( empty($args) ) { 765 if ( $do_names ) 766 $post_types[] = $post_type->name; 767 else 768 $post_types[] = $post_type; 769 } elseif ( array_intersect_assoc((array) $post_type, $args) ) { 770 if ( $do_names ) 771 $post_types[] = $post_type->name; 772 else 773 $post_types[] = $post_type; 774 } 775 } 776 777 return $post_types; 734 $field = ('names' == $output) ? 'name' : false; 735 736 return wp_filter_object_list($wp_post_types, $args, $operator, $field); 778 737 } 779 738
Note: See TracChangeset
for help on using the changeset viewer.