【发布时间】:2011-03-09 14:03:38
【问题描述】:
我需要一个可以在 PHPmyadmin 中运行的 SQL 查询,它为所有现有帖子添加一个自定义字段(带有一个值)。 任何人都可以帮忙吗?这甚至可能吗?
【问题讨论】:
我需要一个可以在 PHPmyadmin 中运行的 SQL 查询,它为所有现有帖子添加一个自定义字段(带有一个值)。 任何人都可以帮忙吗?这甚至可能吗?
【问题讨论】:
您可以通过在帖子表上使用选择查询插入到 postmeta 表中来做到这一点。
在下面的示例中,我使用 wp_ 作为表前缀,您的设置可能会有所不同。
insert into wp_postmeta (post_id, meta_key, meta_value)
select ID, 'my-key', 'my-value' from wp_posts where post_type = 'post';
【讨论】:
insert into wp_postmeta (post_id, meta_key, meta_value) select ID, 'my-key', 'my-value' from wp_posts WHERE post_type = 'post'
是的,这是可能的,但不建议这样做。下次升级时,您的数据可能会丢失。如果您不打算升级,那么您将在您的站点中留下巨大的安全漏洞。推荐的方法是使用 postmeta 表。这就是它存在的目的。
编辑
现在我更好地理解了这个问题,忽略上面的部分。有关详细信息,请参阅 cmets。
【讨论】:
postmeta 表),而不是如何将新列添加到帖子表(这似乎是你已经解释过了约翰)。不过,否决票似乎是无情的。至于您的问题 Alex,我认为您不能使用单个 SQL 语句来执行此操作,您需要检索所有帖子 ID,然后为包含您的自定义字段数据的每个帖子添加一行到 postmeta 表。