我有代码(将自定义字段添加到后期编辑页面):
case \'text\':
echo \'<input type="text" name="\', $field[\'id\'], \'" id="\', $field[\'id\'], \'" value="\', $meta ? $meta : $field[\'std\'], \'" size="30" style="width:97%" />\', \'<br />\', $field[\'desc\'];
break;
我使用以下功能保存它:
foreach ($meta_box[\'fields\'] as $field) {
$old = get_post_meta($post_id, $field[\'id\'], true);
$new = $_POST[$field[\'id\']];
if ($new && $new != $old) {
update_post_meta($post_id, $field[\'id\'], $new);
} elseif (\'\' == $new && $old) {
delete_post_meta($post_id, $field[\'id\'], $old);
}
一切正常。因此,如果字段值存在,则显示在字段值处,如果不存在,则使用新值更新此字段(添加到DB)。
当我想通过系统增加价值,而用户无法编辑它时,麻烦就来了。所以我把第一个代码改为(add disabled):
<input type="text" disabled name="\'
现在用户无法编辑。
在编辑后加载时,此字段中有默认值(确定),但doesn\'t save value to DB. $new = $_POST[$field[\'id\']];
现在是空的。
有人知道怎么解决吗?
非常感谢。