概要
wp_get_post_revisions_url
関数は、指定された投稿のリビジョン比較ページのURLを取得します。この関数は、投稿のバージョン管理を効率化するために非常に便利です。特に以下のような機能を実装する際に活用されます。
- 投稿の過去のバージョンを表示する管理画面の作成
- 自動保存機能を持つエディターにおいて過去の変更を比較する機能の提供
- 投稿の履歴を表示するプラグインの開発
- 投稿の変更内容をユーザーに示すダッシュボードウィジェットの作成
- 特定の投稿のリビジョンを比較するカスタムページの作成
- ユーザーに対して安全に投稿の履歴を確認してもらう機能の提供
- ドキュメントやノートにおけるバージョン管理システムの実装
- その他のカスタムデータのリビジョン管理の実装
この関数の構文は以下の通りです。
wp_get_post_revisions_url( int $post_id )
パラメータ
post_id
(int): リビジョンを取得したい投稿のID。
戻り値
- (string): 指定された投稿のリビジョン比較ページのURL。
関連する関数
使用可能なバージョン
- WordPress 3.6 以降で利用可能です。
コアファイルのパス
wp-includes/revision.php
この関数のアクションでの使用可能性
アクション名 | 使用例 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | |
get_header | |
wp_head |
続いて、この関数を使用した5つのサンプルコードを以下に示します。サンプルは著作権フリーであり、各サンプルに何を実装しているかの説明を付け加えています。
サンプルコード1
$post_id = 42; // リビジョンを取得したい投稿のID
$revisions_url = wp_get_post_revisions_url( $post_id );
echo $revisions_url; // リビジョン比較ページのURLを表示
このコードは、指定された投稿IDのリビジョン比較ページのURLを取得し、表示します。
サンプルコード2
function my_revisions_link( $post_id ) {
$url = wp_get_post_revisions_url( $post_id );
return '<a href="' . esc_url( $url ) . '">リビジョンを比較</a>';
}
この関数は、投稿IDを引数に取り、そのリビジョン比較ページへのリンクを生成します。
サンプルコード3
if ( is_single() ) {
$revisions_url = wp_get_post_revisions_url( get_the_ID() );
printf( '<a href="%s">過去のリビジョンを見る</a>', esc_url( $revisions_url ) );
}
このコードは、シングル投稿ページでリビジョン比較ページへのリンクを表示します。
サンプルコード4
function add_revisions_menu_item() {
global $post;
if ( $post && post_type_supports( $post->post_type, 'revisions' ) ) {
$url = wp_get_post_revisions_url( $post->ID );
echo '<li><a href="' . esc_url( $url ) . '">リビジョン比較</a></li>';
}
}
add_action( 'admin_menu', 'add_revisions_menu_item' );
このコードは、管理画面のメニューにリビジョン比較へのリンクを追加します。
サンプルコード5
function custom_revisions_button() {
if ( is_single() ) {
echo '<button onclick="window.location='' . esc_url( wp_get_post_revisions_url( get_the_ID() ) ) . ''">リビジョンを見る</button>';
}
}
add_action( 'wp_footer', 'custom_revisions_button' );
このコードは、投稿ページにリビジョン比較を表示するボタンを追加します。クリックすると、リビジョン比較ページにリダイレクトされます。