Мне нравится делать простую вещь с моим пользовательским метабоксом, но я не нахожу (легкого) решения этой проблемы.
Я сделал пользовательский тип записи с некоторыми мета-боксами => text, textarea, select fields, ect.
все работает просто отлично. Теперь, если я установлю кнопку на продажу (см. Выдержку из радиомассива ниже), текст (div) должен быть красным; если я установлю его на for_sale, он должен быть зеленым.
но я понятия не имею, как это сделать, я имею в виду, что возможны эти два состояния. ничего больше.
и это то, что я хочу.
но вывод html только текст. или текст в html-тэге, это я могу стилизовать с помощью css, но это будет красный, или синий, зеленый, что еще я бы установил.
Есть ли простая вещь, например, класс для каждого значения? я не могу найти ответ. Я надеюсь, что объяснил это понятно. Большое спасибо, что нашли время для этого.
array(
'label' => 'Status',
'desc' => 'product status',
'id' => $prefix.'radio_status',
'type' => 'radio',
'options' => array (
'one' => array (
'label' => 'Product for sale',
'value' => 'for_sale'
),
'two' => array (
'label' => 'Product is sold',
'value' => 'is_sold'
),
),
),
РЕДАКТИРОВАТЬ 🙂
<span class="saleBox"><span class="noBox"><?php echo $post_meta_data['custom_radio_status'][0]; ?></span></span>
Вот HTML, и что я получаю, это значение, которое установлено.
<span class="saleBox"><span class="noBox">for sale</span></span>
или тогда: * подошва
Поэтому мне нужен выход с истинным значением или класс, ID, … что-то, что я могу адресовать с помощью CSS.
Хорошая идея, которая работает. Единственное, что я не понимаю, это то, что должен вызывать массив.
<?php $post_meta_data = get_post_custom($post->ID); ?>
если я вызываю только конкретные данные:
<?php get_post_meta($post->ID, 'custom_radio_status', true) ?>
для меня это не так. или я сделал опечатку. это не имеет значения, я работаю!
спасибо мистер. Maguire
Положите условное утверждение, что-то вроде:
<span class = "<?php
if ($post_meta_data['custom_radio_status'][0] == "is_sold"){
echo "red_class";
}else{
echo "green_class";
}
?>
">
Других решений пока нет …