您必须更仔细地查看旧主题如何显示Posteta。此时,您有几个选项:
为新主题创建一个子主题,并在其PHP文件中显示单个帖子,将子主题设置为显示postmeta,就像旧主题一样。(您还必须设置Posteta框,以便新帖子也可以包含此Posteta。)这样,如果您想要切换回旧主题,就不必更改数据。
按照您的要求,将数据移动到帖子中。这可能是更好的选择,因为它应该适用于任何主题,而不是保留Posteta。诀窍是找出旧主题显示数据的确切方式,部分取决于您使用的是块编辑器还是经典编辑器(或页面生成器)。
对于第二个选项,您需要执行以下操作:
查看旧主题,了解它是如何显示Posteta的。您可以查看代码本身(可能在single.php
)
<?php
if(get_post_meta($post->ID, \'tie_video_url\', true)) {
// The code you\'re looking for: how the URL gets output
}
?>
或者,您可以查看前端,查看HTML的最终外观。这将是继续下一步的关键。
一旦您知道HTML需要什么样的外观,我猜您将需要使用PHP,因为您不仅需要将URL添加到帖子内容中,还需要完整的HTML。然而,如果HTML很简单,您的MySQL查询可能是这样的。(请记住,您将需要使用自己数据库的前缀,它可能不是“wp\\u0”。)
UPDATE wp_posts INNER JOIN wp_postmeta ON wp_posts.ID = wp_postmeta.post_id SET post_content = CONCAT(wp_postmeta.meta_value, wp_posts.post_content) WHERE wp_postmeta.meta_key = \'tie_video_url\');
这个简化的查询只需获取每个具有“tie\\u video\\u url”meta\\u键的帖子的postmeta值(该值可能是url),并将其放在每个帖子内容的开头。由于URL不会转换为完全嵌入,因此您可能需要确定HTML需要包装哪些内容,并使用PHP方法。