概要
フィルタ acf/fields/google_map/api
は、Advanced Custom Fields(ACF)プラグインを使用してGoogleマップフィールドを実装する際に、そのGoogle Maps JavaScript APIを読み込むために使用されるURLパラメータをフィルタリングすることができます。このフィルタを利用することで、APIキーやその他の設定をカスタマイズし、特定の要件に応じた動作を実現できます。
よく使われる機能としては、以下の6つがあります:
- APIキーの動的設定
- ライブラリの追加(例:placesライブラリ)
- 地図の初期設定の調整
- コールバック関数の指定
- 地図のスタイルの適用
- 読み込み時のパラメータ制御
このフィルタは、Advanced Custom Fieldsのバージョン5以上で使用可能です。また、WordPressのバージョン4.0以上が必要です。
構文
add_filter('acf/fields/google_map/api', 'custom_acf_google_map_api');
パラメータ
$api
:Google Maps JavaScript APIの設定を含む配列$field
:ACFフィールドに関する情報
戻り値
- フィルタリングされたAPI設定の配列
サンプルコード
サンプルコード 1
add_filter('acf/fields/google_map/api', function($api) {
$api['key'] = 'YOUR_API_KEY';
return $api;
});
このサンプルコードでは、Google Maps JavaScript APIのAPIキーを設定します。適切なAPIキーをコードに挿入することで、地図機能が正常に動作します。
引用元: https://www.advancedcustomfields.com/resources/google-map/
サンプルコード 2
add_filter('acf/fields/google_map/api', function($api) {
$api['libraries'] = 'places';
return $api;
});
このコードは、Google Maps APIにplaces
ライブラリを追加します。これにより、地図上で場所検索機能を利用できるようになります。
引用元: https://www.advancedcustomfields.com/resources/google-map/
サンプルコード 3
add_filter('acf/fields/google_map/api', function($api) {
$api['sensor'] = 'false';
return $api;
});
このサンプルは、APIのsensor
パラメータをfalse
に設定します。これにより、センサーに依存する機能が無効になります。
引用元: https://www.advancedcustomfields.com/resources/google-map/
サンプルコード 4
add_filter('acf/fields/google_map/api', function($api) {
$api['region'] = 'us';
return $api;
});
このサンプルでは、地図の表示地域をus
(アメリカ)に設定しています。地域の初期設定を制御するために使用します。
引用元: https://www.advancedcustomfields.com/resources/google-map/
サンプルコード 5
add_filter('acf/fields/google_map/api', function($api) {
$api['v'] = '3.exp';
return $api;
});
このコードは、APIのバージョンを3.exp
に指定しています。これにより、特定のAPI機能のバージョンを指定することが可能になります。
引用元: https://www.advancedcustomfields.com/resources/google-map/
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
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 | 〇 |