/** * Populates the parameter selectbox conditionally for the logic shortcode. * * @since 1.1-beta-2 * @access private * @param array $atts The dependent attributes. * @return array The selectbox options. */ function _render_sc_logic_param_populate($atts) { $response = array('options' => array(), 'no_options_text' => false, 'description' => false); switch ($atts['arg1']) { case 'single': $response['options'] = render_sc_post_list(array('post_type' => 'post')); $response['no_options_text'] = __('No posts available.', 'Render'); $response['description'] = __('Leave blank to just check if this is any post.', 'Render'); break; case 'page': $response['options'] = render_sc_post_list(array('post_type' => 'page')); $response['no_options_text'] = __('No pages available.', 'Render'); $response['description'] = __('Leave blank to just check if this is any page.', 'Render'); break; case 'category': $response['options'] = render_sc_term_list(array('taxonomies' => array('category'))); $response['no_options_text'] = __('No categories available.', 'Render'); $response['description'] = __('Leave blank to just check if this is any category page.', 'Render'); break; case 'tag': $response['options'] = render_sc_term_list(array('taxonomies' => array('post_tag'))); $response['no_options_text'] = __('No tags available.', 'Render'); $response['description'] = __('Leave blank to just check if this is any tag page.', 'Render'); break; case 'tax': $response['options'] = render_sc_term_list(); $response['no_options_text'] = __('No taxonomies available.', 'Render'); $response['description'] = __('Leave blank to just check if this is any taxonomy page.', 'Render'); break; case 'author': $response['options'] = render_sc_user_list('edit_posts'); $response['no_options_text'] = __('No authors available.', 'Render'); $response['description'] = __('Leave blank to just check if this is any author archive.', 'Render'); break; } // Convert the options to HTML $response['options'] = !empty($response['options']) ? render_build_options_html($response['options']) : ''; return $response; }
/** * Returns a dynamic list of posts based on the supplied post_type. * * @since 1.1-beta-2 * * @param array|null $atts The attributes this output depends on. * @return array The new options list */ function render_sc_populate_post_type($atts) { $options = render_sc_post_list(array('post_type' => isset($atts['post_type']) ? $atts['post_type'] : 'any', 'public' => true)); return array('options' => render_build_options_html($options), 'no_options_text' => __('No posts available.', 'Render')); }