我正在为我的网站编写一个wordpress插件,该插件根据同一帖子下的另一个自定义字段的值替换(或添加,如果它为空)自定义字段的值。
实施例: 我将有一个逗号分隔值的列表:
苹果,红 香蕉,黄色 猕猴桃,绿色 等
当我运行脚本时,它会找到一个包含custom_field_fruit的帖子,其值为“apple”,并且当然会在同一帖子中将custom_field_color的值更改为红色。然后,它将处理列表的第二行并找到包含custom_field_fruit = banana的帖子,并将更改custom_field_color = yellow等。
所以,我需要帮助解决困难的问题。我认为这比Wordpress甚至PHP问题更多是mySQL问题。我分配了两个变量$ VALUE1和$ VALUE2(水果,颜色)。我是否完全使用mySQL查询来替换字段?
如果是这样,有人可以将此转换为mySQL查询吗? 查找custom_field_fruit为$ VALUE1的帖子,并在同一帖子下用$ VALUE2替换custom_field_color的值。
我对如何做到这一点的任何想法表示赞赏。谢谢。
答案 0 :(得分:0)
我认为混合使用PHP和SQL可以更好地解决问题。这是我的尝试。字典应该由其余的键值对填充:
$dict = ["apple" => "red",
"banana" => "yellow"];
foreach ($dict as $fruit => $color)
mysqli_query("UPDATE wp_posts
SET custom_field_color = '$color'
WHERE custom_field_fruit = '$fruit'");
您甚至可以批量处理,而不是逐行处理!