WordPress WXR中的自定义字段是导入,但不显示?

时间:2011-10-30 23:49:32

标签: wordpress import export custom-fields

我正在将网站从旧的CMS迁移到WordPress,我正在利用WXR格式。

我已经能够将帖子放到WordPress中,其中包含特色图片,类别,标签和评论,但我对自定义字段感兴趣。

此特定网站的条目使用字幕,我在WP安装中为其创建了自定义字段。它在WXR中显示如下:

<wp:postmeta>
    <wp:meta_key>subtitle</wp:meta_key>
    <wp:meta_value><![CDATA[Subtitle Goes Here]]></wp:meta_value>
</wp:postmeta>

我在我用于此导出的类中重复了这个,并且我已经验证信息正保存在数据库的wp_postmeta表中:

meta_id | post_id | meta_key | meta_value
  447   |    2    | subtitle | Subtitle Goes Here

然而,当我拉起帖子时,字幕不会显示。当我编辑帖子时,它也不存在。

当我编辑帖子并使用WordPress添加字幕时,它会在wp_postmeta中添加第二行,然后正确显示。

我无法在网络上找到任何可以解决此问题的内容,所以我想知道是否:

  1. 是否有其他人有将值导入自定义字段的经验?
  2. 如果是这样,有没有人遇到(并希望克服)这个问题?
  3. 提前致谢!

1 个答案:

答案 0 :(得分:1)

以防任何人需要这个问题的答案:问题来自使用Advanced Custom Fields插件。

罪魁祸首是ACF创建的get_field()功能。

解决问题,而不是使用:

<?php get_field('custom-field'); ?>

使用:

<?php echo get_post_meta($post->ID, 'custom-field', TRUE); ?>

有关get_post_meta()的更多信息,请查看WordPress Codex

希望将来能帮助别人一些头痛。