在另一个metabox中使用WPAlChemy metabox值

时间:2011-05-31 作者:Sinklar

我正在构建一个非常复杂的自定义帖子类型结构,我需要一些关于我的元盒的帮助。

我想做什么:

谢谢have_fields_and_multi() 功能,用户在简单的文本输入字段中输入数据(使用“添加新”按钮)

  • 应使用以前文本输入的值来构建select 另一个元框中的下拉列表http://idzr.org/0c95

    我有第一部分工作,很简单。但我不知道如何让第二部分发挥作用。如果我使用while($mb->have_fields_and_multi(\'aaa\')) 在另一个while($mb->have_fields_and_multi(\'bbb\')) 页面是无限的(循环没有结束。如果我使用foreach 我还有其他问题。

    你对我如何做到这一点有什么想法吗?谢谢

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

    好吧,我终于自己解决了这个问题。这是因为:

    创建第一个字段:

    <?php
        while($mb->have_fields_and_multi(\'types\')):
        $mb->the_group_open();
        $mb->the_field(\'type\');
    ?>
    <input type="text" id="<?php $mb->the_name(); ?>" name="<?php $mb->the_name(); ?>" value="<?php $mb->the_value(); ?>" />
    <a href="#" class="dodelete button">Remove</a>
    <?php
        $mb->the_group_close();
        endwhile;
    ?>
    <a href="#" class="docopy-types button" style="float: left">Add new</a>
    <a href="#" class="dodelete-types button" style="float: right">Delete all</a>
    
    使用时创建第二批字段foreach 从第一个字段获取数据并将其放入select :

    <?php
        while($mb->have_fields_and_multi(\'details\')):
        $mb->the_group_open();
        $mb->the_field(\'detail_select\');
    ?>
    <select name="<?php $mb->the_name(); ?>">
        <option value="">Choose...</option>
        <?php foreach ($meta[\'types\'] as $types) { ?>
        <option value="<?php echo $types[\'type\']; ?>"<?php $mb->the_select_state($types[\'type\']); ?>><?php echo $types[\'type\']; ?></option>
        <?php } ?>
    </select>
    <?php $mb->the_field(\'detail_title\'); ?>
    <label>Description</label>
    <input type="text" id="<?php $mb->the_name(); ?>" name="<?php $mb->the_name(); ?>" value="<?php $mb->the_value(); ?>" /><br />
    <a href="#" class="dodelete button">Remove</a>
    <?php
        $mb->the_group_close();
        endwhile;
    ?>
    <a href="#" class="docopy-estate_details button">Add new</a>
    <a href="#" class="dodelete-estate_details button">Delete all</a>
    

    结束