source

WordPress WXR 사양

lovecheck 2023. 3. 28. 21:53
반응형

WordPress WXR 사양

WordPress WXR Import/export 표준에 대한 사양을 찾고 있는데 WordPress에서 표준에 대한 공식 문서를 찾을 수 없습니다.

WXR 파일이 WordPress.com 또는 WordPress 자체 호스팅 사이트로 자동으로 Import되도록 하는 방법을 정확히 알려 줄 공식 리소스를 알고 있는 사람이 있습니까?

특히 사용자가 WordPress로 쉽게 이동할 수 있도록 기존 CMS용 WXR 내보내기 시스템을 만들려고 합니다.

WordPress의 핵심 개발자인 John O'Nolan에게 이 질문을 했고, John O'Nolan은 핵심 개발자인 Aaron Jorbin에게 제 질문을 보냈습니다.O'Nolan은 WXR 규격에 대한 공식 문서는 없지만 WXR 수출은 필요한 모든 정보를 제공할 것이라고 답변했다.

또한 O'Nolan은 블로그 투고 콘텐츠보다 복잡한 데이터는 Import가 아닌 데이터베이스 변환/이행을 통해 처리하는 것이 가장 좋다고 지적했습니다.나는 여기서 동의하는 경향이 있다.

이 2개의 링크는 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에 대해 궁금한 다른 사람에게 도움이 되었으면 합니다.

샘플을 모방하지 않고 WXR 파일을 작성해야 하는 경우에도 걱정하지 마십시오.WXR 익스포터 코드는 GitHub에 1있습니다.발췌문은 다음에서 재현됩니다.<rss>커플 객체에 대한 노드foreach루프

풀 코드를 사용하면 사용하고 있는 백엔드에서 WXR을 리버스 엔지니어링할 수 있습니다.

<?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; ?>

1 이전에는 WordPress 플러그인 Trac 서버에서 사용되었습니다.새로운 링크에 대한 조작성 덕분에.

언급URL : https://stackoverflow.com/questions/9356099/wordpress-wxr-specification

반응형