Exemple #1
0
/**
 * HTML dropdown list of post types
 *
 * @since deTube 1.2.6
 */
function dp_dropdown_post_types($args = '')
{
    $defaults = array('name' => '', 'selected' => '', 'echo' => true);
    $args = wp_parse_args($args, $defaults);
    extract($args);
    $post_types = get_post_types(array('public' => true), 'objects');
    unset($post_types['page']);
    unset($post_types['attachment']);
    if (count($post_types) < 2) {
        return;
    }
    $post_type_options = array('all' => __('All', 'dp'));
    foreach ($post_types as $type_name => $type_object) {
        $post_type_options[$type_name] = $type_object->labels->singular_name;
    }
    $dropdown = dp_form_field(array('echo' => 0, 'type' => 'select', 'options' => $post_type_options, 'name' => $name, 'value' => $selected));
    if ($echo) {
        echo $dropdown;
    } else {
        return $dropdown;
    }
}
Exemple #2
0
function dp_form_row($args = '')
{
    $defaults = array('before_row' => '<tr>', 'before_title' => '<th scope="row">', 'title' => '', 'after_title' => '</th><td>', 'after_row' => '</td></tr>', 'label_for' => '', 'id' => '', 'tip' => '', 'req' => '', 'desc' => '', 'prepend' => '', 'append' => '', 'field' => '');
    $args = wp_parse_args($args, $defaults);
    extract($args);
    if (empty($id) && !empty($name)) {
        $id = $args['id'] = sanitize_field_id($name);
    }
    if (empty($label_for) && !empty($id)) {
        $label_for = ' for="' . $id . '"';
    }
    echo $before_row;
    /* Title */
    if ($args['type'] != 'checkbox' || $args['type'] == 'checkboxes') {
        $title = '<label' . $label_for . '>' . $args['title'] . '</label> ';
    }
    /* Tip */
    if ($tip) {
        $tip = ' <span class="tip">(?)</span><div style="display:none;">' . $tip . '</div>';
    }
    /* Required */
    $req = '';
    if ($args['req'] === true || $args['req'] === 1) {
        $req = '*';
    } elseif (isset($args['req'])) {
        $req = $args['req'];
    }
    if (!empty($req)) {
        $req = ' <span class="required">' . $req . '</span>';
    }
    /* Output */
    echo $before_title . $title . $req . $tip . $after_title . ' ';
    if (!empty($args['prepend'])) {
        echo $args['prepend'] . ' ';
    }
    if (empty($args['field'])) {
        dp_form_field($args);
    }
    if ($args['type'] == 'custom' && !empty($args['custom'])) {
        echo $args['custom'];
    }
    if (!empty($args['append'])) {
        echo ' ' . $args['append'] . ' ';
    }
    if (!empty($desc)) {
        echo ' <div class="description">' . $desc . '</div>';
    }
    echo $after_row;
}