function save_details( $post_id ){
if ( wp_is_post_revision( $post_id ) )
$post_id = wp_is_post_revision( $post_id );
update_post_meta( $post_id, "testimonyname", $_POST["testimonyname"] );
}
add_action(\'save_post\', \'save_details\', 10, 1);
我有一个带有自定义字段的自定义帖子类型,但添加了几个后,我注意到自定义字段中的数据在以前的一些条目中丢失了。
我又填了一遍,看起来不错。
然后,我只点击了一次添加新按钮,我的一篇文章就删除了它的自定义元数据。
但是,并不是每次单击“添加新内容”时都会发生这种情况。
我尝试过这个解决方案,但没有效果
if ( defined(\'DOING_AUTOSAVE\') && DOING_AUTOSAVE )
非常感谢您的帮助,谢谢,Ashley
最合适的回答,由SO网友:Ashley Staggs 整理而成
if(isset($_POST["testimonyname"]))
将此代码放在update\\u post\\u meta行之前非常有效。
SO网友:Ryan
我认为这不会奏效——至少在所有情况下不会。这将测试$_POST[\'some_custom_variable\']
为空,如果为空,则不会更新。如果自定义字段始终包含一个值,那么这很好,但是您无法使用此代码清空自定义字段的值。
我遇到了一个类似的问题,发现更改了以下操作调用:
add_action(\'save_post\', \'save_details\', 10, 1);
到
add_action(\'post_updated\', \'save_details\', 10, 1);
在我的情况下工作过。