我有一个特定自定义帖子类型的自定义元框,元框中的一个字段是下拉列表。
我正确地提供了字段,保存了信息,甚至正确地调用了它(因此我知道它保存得很好),但是,当您返回编辑帖子或更新时,下拉列表中总是有第一个<select>
选项列表,我担心这会让将来编辑这些帖子类型的人感到困惑。
例如,如果编辑器选择“选项2”,然后单击“发布”或“更新”,则会保存“选项2”,并在循环中调用,但下拉列表会立即再次显示“选项1”。
是否有办法将保存的“选定”选项显示在列表的顶部或顶部,以便编辑器将其显示为已保存?
我的功能代码:
function meta_options(){
global $post;
$custom = get_post_custom($post->ID);
$price = $custom["price"][0];
$selected = isset( $values[\'location\'] ) ? esc_attr( $values[\'location\'][0] ) :\'\';
?>
<label>Price:</label><input name="price" value="<?php echo $price; ?>" />
<label>Location : </label> <br />
<select name="location" id="location">
<option value="Option 1" <?php selected( $selected, \'Option 1\' ); ?>>Option 1</option>
<option value="Option 2" <?php selected( $selected, \'Option 2\' ); ?>>Option 2</option>
</select>
<?php } ?>
然后保存该信息:
function save_price(){
global $post;
update_post_meta($post->ID, "price", $_POST["price"]);
update_post_meta( $post->ID, \'location\', esc_attr( $_POST[\'location\'] ));
}
我这样做对吗?有没有一种简单的方法来实现这一点?
非常感谢。