wp_text_diff()


WordPressの関数wp_text_diff()は、2つのテキスト間の差分を表示するために使用されます。この関数は特に、投稿やページの内容の変更を視覚的に確認する場合に便利です。

構文

wp_text_diff( string $left_string, string $right_string, array $args = array() );

引数の説明:

  • $left_string (string) — 比較対象の最初のテキスト。
  • $right_string (string) — 比較対象の2番目のテキスト。
  • $args (array) — オプションの引数。以下のキーを含むことができます:
    • title — 差分ビューのタイトル。
    • show_split_view — 分割ビューを有効にするかどうか (デフォルト: false)。

例 1: 基本的な使用例

2つのテキストの差分を表示します。

<?php
$old_content = 'これは古いテキストです。';
$new_content = 'これは新しいテキストです。';
echo wp_text_diff( $old_content, $new_content );
?>

例 2: タイトルを追加

差分ビューにカスタムタイトルを表示します。

<?php
$old_content = '古いバージョン';
$new_content = '新しいバージョン';
echo wp_text_diff( $old_content, $new_content, array( 'title' => 'コンテンツ変更履歴' ) );
?>

例 3: 分割ビューを有効化

差分を分割ビューで表示します。

<?php
$old_content = 'テキストA';
$new_content = 'テキストB';
echo wp_text_diff( $old_content, $new_content, array( 'show_split_view' => true ) );
?>

例 4: 投稿内容の差分を表示

投稿のリビジョン間の差分を取得します。

<?php
$old_post = get_post( 1 );
$new_post = get_post( 2 );
echo wp_text_diff( $old_post->post_content, $new_post->post_content );
?>

例 5: テキストの差分を条件付きで表示

条件に応じて差分を表示します。

<?php
if ( current_user_can( 'edit_posts' ) ) {
    $text1 = 'こんにちは、世界!';
    $text2 = 'こんにちは、宇宙!';
    echo wp_text_diff( $text1, $text2 );
}
?>

注意事項

wp_text_diff()は、差分ビューのスタイルがテーマによって異なる場合があります。カスタムCSSを使用して表示を調整することを検討してください。


関連機能: