web-dev-qa-db-ja.com

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

WordPressベースのWebサイトで、REST AP​​Iのドキュメントを提供しています。私たちのAPIは絶えず変化しているので、ドキュメントもそうです。しかし、APIのコミットに対して照合できるように、ドキュメントのバージョンを管理したいと思います。 WordPressページのコンテンツをリモートリポジトリ(GitHubなど)から取得する方法はありますか?それとも、あるリポジトリからWordPressにコンテンツをプッシュする方法はありますか?

12
Elliot Cameron

あなたはすでにこのようなものを組み込んでいます: リビジョン

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

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

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']
     )
);
5
kaiser

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

GitHubでもう一つのオプションはemailフックを使うことです:https://github.com/username/projectname/admin/hooksに行き、 Email を選択してブログにメールを送ってください。 メールごとの投稿 機能を有効にします。

5
fuxia