プラグインElementorのelementor/tools/replace-urlsフィルタの使用方法・解説

概要

elementor/tools/replace-urls フィルタは、Elementor プラグインの機能の一部で、特定の URL を置き換えるために使用されます。主に、サイトの URL 構造を変更した際や、異なるドメインにコンテンツを移行した際に、旧 URL を新 URL に一括で置き換える処理に利用されます。以下のような状況でよく使われます。

  1. ドメインの移行(例: example.com から example.org への変更)
  2. 旧コンテンツのリンク修正
  3. ステaging サイトから本番サイトへのコンテンツ移行
  4. URL 構造の変更(例: http から https へ)
  5. マルチサイトの環境でのフォルダ名の変更
  6. 特定のファイルやリソースのパスを一括で更新

構文

add_filter( 'elementor/tools/replace-urls', 'your_callback_function' );

パラメータ

  • $urls (array): 置き換える URL の連想配列。旧 URL と新 URL をキーとバリューとして持つ。

戻り値

  • array: 置き換えた後の URL の連想配列。

使用可能なプラグインのバージョン

  • Elementor: 3.0 以上
  • WordPress: 5.0 以上

この関数のアクションでの使用可能性

アクション 使用可能性
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

サンプルコード

サンプル 1: 基本的な URL 置き換え

このサンプルコードでは、特定の古い URL を新しい URL に置き換えます。

add_filter( 'elementor/tools/replace-urls', function( $urls ) {
    $urls['http://old-domain.com'] = 'http://new-domain.com';
    return $urls;
});

サンプル 2: 複数の URL 置き換え

複数の URL を一括で置き換える方法を示しています。

add_filter( 'elementor/tools/replace-urls', function( $urls ) {
    $urls = array_merge( $urls, [
        'http://oldurl1.com' => 'http://newurl1.com',
        'http://oldurl2.com' => 'http://newurl2.com',
    ]);
    return $urls;
});

サンプル 3: URL プレフィックスの変更

URL のプレフィックスを変更する例です。

add_filter( 'elementor/tools/replace-urls', function( $urls ) {
    foreach ( $urls as $old_url => $new_url ) {
        $new_url = str_replace( 'http://old-prefix.com', 'http://new-prefix.com', $new_url );
        $urls[$old_url] = $new_url;
    }
    return $urls;
});

サンプル 4: 条件付きでの URL 置き換え

特定の条件に基づいて URL を置き換える例です。

add_filter( 'elementor/tools/replace-urls', function( $urls ) {
    if ( is_ssl() ) {
        $urls['http://old-domain.com'] = 'https://new-domain.com';
    }
    return $urls;
});

サンプル 5: URL 構造の変更

URL 設計を変更して、セクションを追加する例です。

add_filter( 'elementor/tools/replace-urls', function( $urls ) {
    foreach ( $urls as $old_url => $new_url ) {
        $new_url = str_replace( '/old-section/', '/new-section/', $new_url );
        $urls[$old_url] = $new_url;
    }
    return $urls;
});

各サンプルコードは、Elementorの elementor/tools/replace-urls フィルタを活用して、様々な URL 置き換えの方法を示しています。詳しい情報は公式ドキュメントを参照してください。

この関数について質問する


上の計算式の答えを入力してください