使用WPAlChemy MetaBox单选框创建If/Else语句

时间:2011-08-15 作者:Isendra

我正在使用WPAlchemy MetaBox类在我的站点上创建其他MetaBox。其中一个有一个带有一组广播箱的部分。我将其编码如下:

    <?php $mb->the_field(\'docposs\'); ?>
    <input type="radio" name="<?php $mb->the_name(); ?>" value="yes"<?php $mb->the_radio_state(\'yes\')?\' checked="checked"\':\'\'; ?>/>Yes
    <input type="radio" name="<?php $mb->the_name(); ?>" value="no"<?php $mb->the_radio_state(\'no\')?\' checked="checked"\':\'\'; ?>/>No
    <input type="radio" name="<?php $mb->the_name(); ?>" value="unknown"<?php $mb->the_radio_state(\'unknown\')?\' checked="checked"\':\'\'; ?> />Unknown
我想在模板中能够做的是根据框返回选中的字符串进行回显,例如:

if (checkbox == yes) {
    echo "If you wish to make";
} elseif (checkbox == no) {
    echo "an apple pie from scratch,";
} else {
    echo "you must first invent the universe";
}
但我无法做到:(

这个(以及许多荒谬的变体)只是返回“是”,而不是回声。

if ($provenance_mb->the_value(\'docposs\') == yes) {
 echo \'hello world\';
}
任何帮助都将不胜感激。

1 个回复
最合适的回答,由SO网友:farinspace 整理而成

不确定你做错了什么,乍一看你的代码看起来还行。。。确保您代表yesno 作为字符串值。。。

if ( \'yes\' == $provenance_mb->get_the_value( \'docposs\' ) ) {
    echo "If you wish to make";
} else if ( \'no\' == $provenance_mb->get_the_value( \'docposs\' ) ) {
    echo "an apple pie from scratch,";
} else {
    echo "you must first invent the universe";
}

结束