概要
elementor/extended_allowed_html_tags/{$tag}
は、WordPressのElementorプラグインで使用されるフィルターフックです。このフィルターは、特定のHTMLタグに対して許可される属性を拡張するために利用されます。これにより、デフォルトで許可されていない属性を追加することができ、Elementorのカスタマイズ性が高まります。以下のような機能を実装する際によく使われます:
- カスタムHTML要素の属性の制御
- セキュリティ強化のための特定属性の削除
- レイアウトに必要なCSSクラスの追加
- 特定のプラグインとの互換性を持たせるための属性追加
- SEOに配慮した属性の設定
- フロントエンドスタイリングのためのカスタム属性の導入
構文
add_filter('elementor/extended_allowed_html_tags/{$tag}', 'your_function_name');
function your_function_name($allowed_html) {
// ここで変更を加える
return $allowed_html;
}
パラメータ
$tag
: 拡張を行うHTMLタグ$allowed_html
: 許可されているHTML属性を含む配列
戻り値
このフィルターは、変更を加えた$allowed_html
配列を返します。
使用可能なプラグインとバージョン
- 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: ボタン要素にクラスを追加する
add_filter('elementor/extended_allowed_html_tags/a', function($allowed_html) {
$allowed_html['a']['class'] = true; // 'class'属性を許可
return $allowed_html;
});
このコードは、<a>
タグにCSSクラスを許可します。これにより、スタイリングの自由度が高まります。
サンプル2: imgタグに追加属性を許可する
add_filter('elementor/extended_allowed_html_tags/img', function($allowed_html) {
$allowed_html['img']['data-custom'] = true; // 'data-custom'属性を許可
return $allowed_html;
});
このコードは、<img>
タグにカスタムデータ属性を追加できるようにします。
サンプル3: iframeタグの属性をカスタマイズする
add_filter('elementor/extended_allowed_html_tags/iframe', function($allowed_html) {
$allowed_html['iframe']['allowfullscreen'] = true; // 'allowfullscreen'属性を許可
return $allowed_html;
});
このコードは、<iframe>
タグにフルスクリーンを許可する属性を追加します。
サンプル4: divタグに機能を追加する
add_filter('elementor/extended_allowed_html_tags/div', function($allowed_html) {
$allowed_html['div']['data-role'] = true; // 'data-role'属性を許可
return $allowed_html;
});
このコードは、<div>
タグにdata-role
属性を追加できるようにします。
サンプル5: spanタグにスタイル属性を許可する
add_filter('elementor/extended_allowed_html_tags/span', function($allowed_html) {
$allowed_html['span']['style'] = true; // 'style'属性を許可
return $allowed_html;
});
このコードは、<span>
タグにインラインスタイルを許可します。