ページのコンテンツをバージョン管理するにはどうすればよいですか?


13

REST APIのドキュメントを提供するWordPressベースのWebサイトがあります。APIは常に変化しているため、ドキュメントも変化しています。ただし、APIのコミットと照合できるように、ドキュメントのバージョンを管理しておきたいと思います。WordPressページにコンテンツをリモートリポジトリ(GitHubなど)から取得させる方法はありますか?または、あるリポジトリからWordPressにコンテンツをプッシュする方法はありますか?

回答:


6

このようなものが既に組み込まれています:リビジョン

// Define the nr of saved revisions in your wp-config.php
define( 'WP_POST_REVISIONS', 30 );

あなたは単に呼び出すことによってそれらをつかむことができます get_posts()post_typerevision

2つのリビジョンの違いを表示するには、単に使用します wp_text_diff()

// Example
$revisions = get_posts( array(
    'post_type' => 'revision'
) );
echo wp_text_diff(
     $revisions[0]['post_content']
    ,$revisions[1]['post_content']
    ,array(
         'title'       => 'Revision diff'
        ,'title_left'  => $revisions[0]['post_title']
        ,'title_right' => $revisions[1]['post_title']
     )
);

たとえば、最後のバージョンと前のバージョンを比較するには、を使用end( $revisions )['post_content']してdiffを使用し$revisions[ count( $revisions ) -2 ]['post_content']ます。(注:-2配列のインデックスは0から始まり、最後より前のバージョンが必要です。)


改訂のアイデアが好きです。そして、WP Document Revisionsは、リビジョンの管理を改善するのに役立つ人気のあるプラグインがあります。
アントラン

@Rilwisはそのとき答えであるはずです:)
kaiser

5

Gitフックを使用して、XML-RPCごとにWordPressに投稿できます。Gitフックには、PHPを含む任意の実行可能ファイルを使用できます。

GitHubの別のオプションは、メールフックを使用することです:に移動しhttps://github.com/username/projectname/admin/hooks、[ メール]を選択して、ブログにメールを送信します。メールごと投稿機能を有効にします。


2
+1今、両方の機能の組み合わせが必要です(OPによってソリッドプラグインとして構築されます):)
kaiser
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.