Установка параметра по умолчанию с использованием типа поля выбора CMB2Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Установка параметра по умолчанию с использованием типа поля выбора CMB2

Сообщение Anonymous »

Я использую функцию выбора CMB2, чтобы получить список сообщений, которые пользователь может выбрать в пользовательском мета-поле.

Я добавил «пустой» параметр в массив параметров, но не могу понять, как сделать его параметром по умолчанию (т. е. Я пуст).

Мне нужно сделать это, чтобы я мог использовать оператор if, который говорит если поле пустое, не отображайте поле вывода на сайте. Прямо сейчас, даже если пользователь не выбрал опцию конкретно, передается опция со значением.

Вот код мета-поля:

Код: Выделить всё

$link_post_types = array('charter', 'page');

$meta_boxes['ms_metabox'] = array(
'id'            => 'ms_metabox',
'title'         => __( 'Page Links', 'cmb2' ),
'object_types'  => array( 'page' ),
'context'       => 'normal',
'priority'      => 'high',
'show_names'    => true,
'fields'        => array(
array(
'name'    => __( 'Page Link', 'cmb2' ),
'desc'    => __( 'Choose the page this will link to', 'cmb2' ),
'id'      => $prefix . 'page_link',
'type'    => 'select',
'options' => ms_get_posttype_options($link_post_types),
),

),
);

function ms_get_posttype_options($argument) {

$get_post_args = array(
'post_type' => $argument,
'posts_per_page'   => -1,
'orderby' => 'type',
'order' => ASC
);

$options = array();
foreach ( get_posts( $get_post_args ) as $post ) {
$post_type = get_post_type( $post->ID);
$title = get_the_title( $post->ID );
$permalink = get_permalink( $post->ID);

$options[] = array(
'name'  => $title . ' : ' . $post_type,
'value' => $permalink,
);
}
$empty_option[] = array(
'name' => 'Please select an option',
'value' => '',
);
$options = array_merge($empty_option, $options);

return $options;
}
Существует аргумент по умолчанию, но когда я попытался применить его, как в примере, он не сработал.

Спасибо за любую помощь!

Подробнее здесь: https://stackoverflow.com/questions/262 ... field-type
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»