wp_save_post_revision

説明

int | WP_Error | void wp_save_post_revision( int $post_id )
現状の投稿のリビジョンを作成する。

パラメータ

  • $post_id
    投稿IDを指定。

返り値

リビジョンが作成された場合はその投稿IDを、作成されなかった場合は空またはWP_Errorオブジェクトを返す。


注意

本関数は'post_updated'アクションのコールバック関数として登録されており、直接呼び出すことはあまりないと思われる。

[3.6.0]'wp_save_post_revision_check_for_changes'フィルターが追加された。このフィルターでfalseを返すと最新のリビジョン情報と投稿情報との更新チェックされず、現在の投稿情報のリビジョンが作成される。

[4.1.0]'wp_save_post_revision_post_has_changed'フィルターが追加された。このフィルターでfalseを返すと現在の投稿情報は更新されていないとみなされ、リビジョンは作成されない。

[6.2.0]'wp_save_post_revision_revisions_before_deletion'フィルターが追加された。削除したくないリビジョン情報を$revisionsの配列から取り除くことで、制御可能になった。


使用例

  • 現状の投稿のリビジョンを作成する。
    wp_save_post_revision( $post->ID );

フィルター

[3.6.0]最新のリビジョン情報がある場合に'wp_save_post_revision_check_for_changes'フィルターを呼び出す。パラメータ$check_for_changesにはデフォルトでtrueが、$latest_revisionには最新のリビジョン情報が、$postには投稿情報が格納されている。
if ( isset( $latest_revision ) &&
	apply_filters( 'wp_save_post_revision_check_for_changes', $check_for_changes, $latest_revision, $post ) ) {
[4.1.0]最新のリビジョン情報と投稿情報との更新チェック後に'wp_save_post_revision_post_has_changed'フィルターを呼び出す。パラメータ$post_has_changedには更新の有無が、$latest_revisionには最新のリビジョン情報が、$postには投稿情報が格納されている。
$post_has_changed = (bool) apply_filters( 'wp_save_post_revision_post_has_changed', $post_has_changed, $latest_revision, $post );
[6.2.0]リビジョン情報を削除する前に'wp_save_post_revision_revisions_before_deletion'フィルターを呼び出す。パラメータ$revisionsには削除される可能性があるリビジョン情報の配列が、$post_idには本関数が受け取った内容が格納されている。
$revisions = apply_filters(
	'wp_save_post_revision_revisions_before_deletion',
	$revisions,
	$post_id
);

アクション

実行するアクションはありません。

ソースファイル

/wp-includes/revision.php

最終更新 : 2024年01月10日 15:24



お勧め

任意の名前でエラーログファイルを指定する(2019年2月15日 更新)

来週にはWordPress 5.1がリリース。RC1のソースコードを見ていると、 wp_debug_mode関数が変更されており、興味深かった。

Gutenbergでカスタムフィールドを使う(2018年8月10日 更新)

Gutenbergの新エディターではカスタムフィールドのウィジェットが表示されない。既存のカスタムフィールドのデータはなくなるわけでないので、新エディター上で編集・更新できないか調べてみた。

Slightly troublesome permalink:プラグイン作ってみました(2021年4月20日 更新)

カテゴリーを含んだパーマリンクを設定している場合、複数のカテゴリーを指定した投稿記事のパーマリンクのURLに目的のカテゴリーとは異なるカテゴリーが適用された経験はないだろうか。このプラグインは、パーマリンクに適用されるカテゴリーをコントロールし、希望通りのパーマリンクを設定します。

WP_Postオブジェクトで投稿情報を直感的に使う(2012年10月4日 更新)

WordPress 3.5で登場するであろう WP_Postクラス。WordPressの投稿情報は、投稿情報本体のほか、カテゴリーや投稿タグ、カスタムフィールドなど、いくつかに分散して記録され、それぞれの情報を取得する際は、いくつかの関数をしていた。新しいWP_Postクラスにより、その習慣とおさらばできるかもしれない。

テキストエディタの文字を変更する(2018年5月27日 更新)

テキストエディタ(投稿ページの「テキスト」タブのエディタ)に標準では備わっていない機能を追加する自作プラグイン「html entities button」がほぼ1年ぶりにアップデート。ここではバージョン2.0.0で追加したテキストエディタのフォント切り替え機能について紹介する。