我需要添加一个新的元键和值部分,只有在其他键存在的帖子上(无论其值如何)。
我尝试使用查询来自动化它,但我的SQL非常有限
以下是我尝试的内容:
INSERT INTO wp_postmeta (post_id, meta_key, meta_value)
SELECT
(SELECT meta.post_id
FROM `wp_postmeta` meta
INNER JOIN wp_posts posts ON meta.post_id = posts.id
WHERE meta.meta_key = \'existingkey\'),
(\'newkey\'),
(\'newvalue\')
它返回
#1242 - Subquery returns more than 1 row
错误
最合适的回答,由SO网友:Johannes Pille 整理而成
无需通过原始SQL执行此操作。
利用WordPress的核心功能get_post_meta
和update_post_meta
.
像这样使用它们:
$existing = get_post_meta( $post_id, \'existingkey\', true );
if ( ! empty( $existing ) ) {
update_post_meta( $post_id, \'newkey\', \'newvalue\' );
}
完成。