Answers_Query::__construct( array $args = array() )
Description #
Initialize class
Parameters #
- $argsarray (Optional) Query arguments. Default value: array()
Source #
File: includes/answer-loop.php
public function __construct( $args = array() ) { global $answers; $paged = (int) max( 1, get_query_var( 'ap_paged', 1 ) ); $defaults = array( 'question_id' => get_question_id(), 'ap_query' => true, 'ap_current_user_ignore' => false, 'ap_answers_query' => true, 'showposts' => ap_opt( 'answers_per_page' ), 'paged' => $paged, 'only_best_answer' => false, 'ignore_selected_answer' => false, 'post_status' => array( 'publish' ), 'ap_order_by' => ap_opt( 'answers_sort' ), ); if ( get_query_var( 'answer_id' ) ) { $defaults['p'] = get_query_var( 'answer_id' ); } $this->args = wp_parse_args( $args, $defaults ); $this->args['ap_order_by'] = sanitize_title( $this->args['ap_order_by'] ); // Check if user can read private post. if ( ap_user_can_view_private_post() ) { $this->args['post_status'][] = 'private_post'; } // Check if user can read moderate posts. if ( ap_user_can_view_moderate_post() ) { $this->args['post_status'][] = 'moderate'; } // Show trash posts to super admin. if ( is_super_admin() ) { $this->args['post_status'][] = 'trash'; } if ( isset( $this->args['question_id'] ) ) { $question_id = $this->args['question_id']; } if ( ! isset( $this->args['author'] ) && empty( $question_id ) && empty( $this->args['p'] ) ) { $this->args = array(); } else { if ( ! empty( $question_id ) ) { $this->args['post_parent'] = $question_id; } $this->args['post_type'] = 'answer'; $args = $this->args; /** * Initialize parent class */ parent::__construct( $args ); } }
Expand full source code Collapse full source code View on GitHub: includes/answer-loop.php:42
Add your comment