由于您的数据目前是结构化的,所以不能使用SQL来实现这一点(至少不能以高性能的方式)。您有两种选择:
获取所有帖子并在内存中循环查找正确的帖子元数据,或者单独存储元数据在两者之间,我建议后者。WordPress允许您为单个帖子存储同一帖子元的多行,因此您可以获得一个数据数组,而无需序列化它并将其存储在一个键中。要做到这一点,您需要稍微改变这里与post meta api交互的方式。这就是你想要的:
当你拿到博文元时
get_post_meta($ID, \'enterprise_on_page\', false);
更新将是最不同的。如果只想附加一个值,请执行以下操作
add_post_meta($ID, \'enterprise_on_page\', $value);
要更新值,
update_post_meta($ID, \'enterprise_on_page\', $new_value, $old_value);
并删除一个值:
delete_post_meta($ID, \'enterprise_on_page\', $value_to_delete);