首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WordPress WXR规范

WordPress WXR规范
EN

Stack Overflow用户
提问于 2012-02-20 12:14:16
回答 2查看 7.9K关注 0票数 23

我正在尝试寻找WordPress WXR导入/导出标准的规范,但是我找不到来自WordPress的任何关于该标准的官方文档。

有谁知道官方资源可以告诉我如何生成WXR文件,以便它自动导入到WordPress.com或WordPress自托管网站?

我特别想为现有的内容管理系统创建一个WXR导出系统,这样用户就可以很容易地迁移到WordPress。

EN

回答 2

Stack Overflow用户

发布于 2012-02-22 06:36:36

我向WordPress核心开发人员John O‘’Nolan提出了这个问题,他将我的问题转发给了核心提交者Aaron Jorbin。O‘’Nolan回应说(我是转述)说,没有任何关于WXR标准的官方文档,但是逆向工程WXR导出应该可以为我提供所需的所有信息。

O‘’Nolan还指出,比博客文章内容更复杂的数据可能最好通过数据库转换/迁移来处理,而不是导入。我倾向于同意这一点。

我发现这两个链接对我对WXR标准进行逆向工程有一定的帮助:

http://ipggi.wordpress.com/2011/03/16/the-wordpress-extended-rss-wxr-exportimport-xml-document-format-decoded-and-explained/

http://olalindberg.com/2008/write-your-own-wxr-file-to-migrate-custom-cms-to-wordpress/

后一个链接专门处理附件,这对我当前的项目至关重要。

我希望这对其他对WXR感兴趣的人有所帮助。

票数 29
EN

Stack Overflow用户

发布于 2018-08-09 03:07:59

对于那些没有WordPress导出但仍然需要制作WXR文件的人,the code for the exporter位于WordPress插件的Trac服务器上。下面摘录,从<rss>节点到一对对象foreach循环:

代码语言:javascript
复制
<?php the_generator( 'export' ); ?>
<rss version="2.0"
    xmlns:excerpt="http://wordpress.org/export/<?php echo WXR_VERSION; ?>/excerpt/"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:wfw="http://wellformedweb.org/CommentAPI/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:wp="http://wordpress.org/export/<?php echo WXR_VERSION; ?>/"
>

<channel>
    <title><?php bloginfo_rss( 'name' ); ?></title>
    <link><?php bloginfo_rss( 'url' ); ?></link>
    <description><?php bloginfo_rss( 'description' ); ?></description>
    <pubDate><?php echo date( 'D, d M Y H:i:s +0000' ); ?></pubDate>
    <language><?php bloginfo_rss( 'language' ); ?></language>
    <wp:wxr_version><?php echo WXR_VERSION; ?></wp:wxr_version>
    <wp:base_site_url><?php echo wxr_site_url(); ?></wp:base_site_url>
    <wp:base_blog_url><?php bloginfo_rss( 'url' ); ?></wp:base_blog_url>

<?php wxr_authors_list( $post_ids ); ?>

<?php foreach ( $cats as $c ) : ?>
    <wp:category>
        <wp:term_id><?php echo intval( $c->term_id ); ?></wp:term_id>
        <wp:category_nicename><?php echo wxr_cdata( $c->slug ); ?></wp:category_nicename>
        <wp:category_parent><?php echo wxr_cdata( $c->parent ? $cats[$c->parent]->slug : '' ); ?></wp:category_parent>
        <?php wxr_cat_name( $c );
        wxr_category_description( $c );
        wxr_term_meta( $c ); ?>
    </wp:category>
<?php endforeach; ?>
<?php foreach ( $tags as $t ) : ?>
    <wp:tag>
        <wp:term_id><?php echo intval( $t->term_id ); ?></wp:term_id>
        <wp:tag_slug><?php echo wxr_cdata( $t->slug ); ?></wp:tag_slug>
        <?php wxr_tag_name( $t );
        wxr_tag_description( $t );
        wxr_term_meta( $t ); ?>
    </wp:tag>
<?php endforeach; ?>
<?php foreach ( $terms as $t ) : ?>
    <wp:term>
        <wp:term_id><?php echo wxr_cdata( $t->term_id ); ?></wp:term_id>
        <wp:term_taxonomy><?php echo wxr_cdata( $t->taxonomy ); ?></wp:term_taxonomy>
        <wp:term_slug><?php echo wxr_cdata( $t->slug ); ?></wp:term_slug>
        <wp:term_parent><?php echo wxr_cdata( $t->parent ? $terms[$t->parent]->slug : '' ); ?></wp:term_parent>
        <?php wxr_term_name( $t );
        wxr_term_description( $t );
        wxr_term_meta( $t ); ?>
    </wp:term>
<?php endforeach; ?>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9356099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档