0

我正在为我的网站编写一个 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 的帖子,并将同一帖子下 custom_field_color 的值替换为 $VALUE2。

任何关于我如何做到这一点的想法都值得赞赏。谢谢你。

4

1 回答 1

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'");

您甚至可以批量处理,而不是逐行处理!

于 2012-06-22T21:11:03.367 回答