Last active
May 5, 2017 04:14
-
-
Save enqtran/97c0362936ab74719d909699f241551c to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* WordPress Query Reference | |
* CODEX: http://codex.wordpress.org/Class_Reference/WP_Query | |
*/ | |
$args = array( | |
/** | |
* Author | |
*/ | |
'author' => 1,2,3, // lấy dữ liệu theo author id | |
'author_name' => 'enqtran', // lấy dữ liệu theo tên author | |
/** | |
* Categories | |
*/ | |
'cat' => 5, // lấy dữ liệu theo category id | |
'category_name' => 'staff', 'news', // lấy dữ liệu theo tên category | |
'category__and' => array( 2, 6 ), // lấy dữ liệu trong 1 mảng chứa id category | |
'category__in' => array( 2, 6 ), // lấy dữ liệu trong 1 mảng chứa id category | |
'category__not_in' => array( 2, 6 ), // lấy dữ liệu theo id category không có trong mảng | |
/** | |
* Tags | |
*/ | |
'tag' => 'cooking', // lấy dữ liệu theo 1 tag slug | |
'tag_id' => 5, // lấy dữ liệu theo tag id | |
'tag__and' => array( 2, 6), // lấy dữ liệu theo nhiều tag id - mảng chứa id | |
'tag__in' => array( 2, 6), // lấy dữ liệu theo nhiều tag id - mảng chứa id | |
'tag__not_in' => array( 2, 6), // lấy dữ liệu không có tag id - mảng chứa id | |
'tag_slug__and' => array( 'red', 'blue'), // lấy dữ liệu theo nhiều tag slug - mảng chứa slug | |
'tag_slug__in' => array( 'red', 'blue'), // lấy dữ liệu theo nhiều tag slug - mảng chứa slug | |
/** | |
* Taxonomy query | |
*/ | |
'tax_query' => array( // mảng các điều kiện query taxonomy | |
'relation' => 'AND', // quan hệ AND hoặc OR | |
array( | |
'taxonomy' => 'color', // Tên taxonomy | |
'field' => 'slug', // trường cần lấy trong table term | |
'terms' => array( 'red', 'blue' ), // giá trị so sánh | |
'include_children' => true, // mặc định là true | |
'operator' => 'IN' // quan hệ với giá trị so sánh ở trên -- 'IN', 'NOT IN', 'AND'. | |
), | |
array( | |
'taxonomy' => 'actor', | |
'field' => 'id', | |
'terms' => array( 103, 115, 206 ), | |
'include_children' => false, | |
'operator' => 'NOT IN' | |
) | |
), | |
/** | |
* Post & Page | |
*/ | |
'p' => 1, // id post | |
'name' => 'hello-world', // slug của post | |
'page_id' => 1, // id page | |
'pagename' => 'sample-page', // page slug | |
'pagename' => 'contact_us/canada', // page child slug | |
'post_parent' => 1, // page id parent | |
'post__in' => array(1,2,3), // mảng id post cần lấy | |
'post__not_in' => array(1,2,3), // mảng id post ko cần lấy | |
/** | |
* PostType & Status | |
*/ | |
'post_type' => array( | |
'any', // - all | |
'post', // - a post. | |
'page', // - a page. | |
'revision', // - a revision. | |
'attachment', // - a attachment. | |
'my-post-type', // - Custom Post Types (e.g. movies) | |
), | |
'post_status' => array( | |
'publish', // - a published post or page. | |
'pending', // - post is pending review. | |
'draft', // - a post in draft status. | |
'auto-draft', // - a newly created post, with no content. | |
'future', // - a post to publish in the future. | |
'private', // - not visible to users who are not logged in. | |
'inherit', // - a revision. see get_children. | |
'trash' // - post is in trashbin (available with Version 2.9). | |
), | |
'post_type' => 'any', // - retrieves any type except revisions and types with 'exclude_from_search' set to true. | |
'post_status' => 'any', // - retrieves any status except those from post types with 'exclude_from_search' set to true. | |
/** | |
* Limit | |
*/ | |
'posts_per_page' => 10, // giới hạn số post lấy ra. không giới hạn: posts_per_page=> -1 | |
'posts_per_archive_page' => 10, // giới hạn cho trang archive | |
'nopaging' => false, // hiển thị phân trang | |
'paged' => get_query_var('page'), // trang hiển thị hiện tại trong phân trang | |
/** | |
* Offset | |
*/ | |
'offset' => 3, // hiển thị từ phần thứ 3 | |
// Sắp xếp | |
'order' => 'DESC', //'ASC' - ascending order from lowest to highest values (1, 2, 3; a, b, c). | |
//'DESC' - descending order from highest to lowest values (3, 2, 1; c, b, a). | |
// field sắp xếp | |
'orderby' => 'date', // Defaults to 'date'. | |
//Possible Values:// | |
//'none' - No order (available with Version 2.8). | |
//'ID' - Order by post id. Note the captialization. | |
//'author' - Order by author. | |
//'title' - Order by title. | |
//'date' - Order by date. | |
//'modified' - Order by last modified date. | |
//'parent' - Order by post/page parent id. | |
//'rand' - Random order. | |
//'comment_count' - Order by number of comments (available with Version 2.9). | |
//'menu_order' - Order by Page Order. | |
//'meta_value' - Note that a 'meta_key=keyname' must also be present in the query. | |
//'meta_value_num' - Order by numeric meta value (available with Version 2.8). | |
//'post__in' - post ID | |
'ignore_sticky_posts' => false, //(bool) - ignore sticky posts or not. Default value is false, don't ignore. Ignore/excludsticky posts being included at the beginning of posts returned, but the sticky post will still be returned in the natural order othat list of posts returned. | |
//NOTE: For more info on sticky post queries see: http://codex.wordpress.org/Class_Reference/WP_Query#Sticky_Post_Parameters | |
/** | |
* Time | |
*/ | |
'year' => 2012, //(int) - 4 digit year (e.g. 2011). | |
'monthnum' => 3, //(int) - Month number (from 1 to 12). | |
'w' => 25, //(int) - Week of the year (from 0 to 53). | |
'day' => 17, //(int) - Day of the month (from 1 to 31). | |
'hour' => 13, //(int) - Hour (from 0 to 23). | |
'minute' => 19, //(int) - Minute (from 0 to 60). | |
'second' => 30, //(int) - Second (0 to 60). | |
/** | |
* Metabox - custom field | |
*/ | |
'meta_key' => 'key', //(string) - Custom field key. | |
'meta_value' => 'value', //(string) - Custom field value. | |
'meta_value_num' => 10, //(number) - Custom field value. | |
'meta_compare' => '=', //(string) - Operator '!=', '>', '>=', '<', or ='. Default value is '='. | |
'meta_query' => array( | |
array( | |
'key' => 'color', //(string) - Custom field key. | |
'value' => 'blue', //(string/array) - support compare value of ( 'IN', 'NOT IN', 'BETWEEN', or 'NOT BETWEEN') | |
'type' => 'CHAR', //(string) - Custom field type. Possible values are 'NUMERIC', 'BINARY', 'CHAR', 'DATE', 'DATETIME', 'DECIMAL', 'SIGNED', 'TIME', 'UNSIGNED'. Default value is 'CHAR'. | |
'compare' => '=', //(string) - Operator to test. Possible values are '=', '!=', '>', '>=', '<', '<=', 'LIKE', 'NOT LIKE', 'IN', 'NOT IN', 'BETWEEN', 'NOT BETWEEN'. Default value is '='. | |
), | |
array( | |
'key' => 'price', | |
'value' => array( 1,200 ), | |
'compare' => 'NOT LIKE' | |
) | |
/** | |
* Capabiliti | |
*/ | |
'perm' => 'readable' //(string) Possible values are 'readable', 'editable' | |
/** | |
* Cache | |
*/ | |
'no_found_rows' => false, //(bool) Default is false. | |
'cache_results' => true, //(bool) Default is true | |
'update_post_term_cache' => true, //(bool) Default is true | |
'update_post_meta_cache' => true, //(bool) Default is true | |
/** | |
* Search | |
*/ | |
's' => $s, // keyword | |
'exact' => true //(bool) - flag to make it only match whole titles/posts - Default value is false. | |
'sentence' => true //(bool) - flag to make it do a phrase search - Default value is false. | |
); | |
$the_query = new WP_Query( $args ); | |
if ( $the_query->have_posts() ) : | |
while ( $the_query->have_posts() ) : $the_query->the_post(); | |
// Do Stuff | |
endwhile; | |
wp_reset_query(); | |
endif; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment