你的方法很好,你应该对数据进行基本检查。否则,您可能会得到一个数组或序列化对象……这可能会导致意外的后果(包括安全问题!)当您或其他人试图打印值时。
也许这样更容易:
$key = \'_my_meta_key\';
$value = filter_input( INPUT_POST, $key, FILTER_SANITIZE_STRING );
if ( $value )
update_post_meta( $post_id, $key, $value );
else
delete_post_meta( $post_id, $key );
请注意,应该避免多次写入键字符串。如果你想更改它的名称,你应该尽可能少的地方来搜索它。理想情况下,整个代码库中只有一个。