钩子文档

customize_dynamic_setting_class

💡 云策文档标注

概述

本文档介绍了 WordPress 自定义器中的 customize_dynamic_setting_class 过滤器,允许开发者使用自定义的 WP_Customize_Setting 子类来动态创建设置。这增强了自定义器在处理非静态设置时的灵活性和可扩展性。

关键要点

  • customize_dynamic_setting_class 是一个过滤器,用于指定动态设置使用的 WP_Customize_Setting 子类。
  • 参数包括 $setting_class(设置类名)、$setting_id(动态设置ID)和 $setting_args(设置参数数组)。
  • 该过滤器在 WP_Customize_Manager::add_dynamic_settings() 中被调用,用于注册来自 $_POST['customized'] 的动态设置。
  • 自 WordPress 4.2.0 版本引入此功能。

代码示例

$setting_class = apply_filters( 'customize_dynamic_setting_class', $setting_class, $setting_id, $setting_args );

注意事项

  • 确保自定义的 WP_Customize_Setting 子类正确实现,以兼容自定义器的工作流程。
  • 动态设置通常用于处理用户通过 AJAX 提交的自定义数据,需注意安全性和验证。

📄 原文内容

Allow non-statically created settings to be constructed with custom WP_Customize_Setting subclass.

Parameters

$setting_classstring
WP_Customize_Setting or a subclass.
$setting_idstring
ID for dynamic setting, usually coming from $_POST['customized'].
$setting_argsarray
WP_Customize_Setting or a subclass.

Source

$setting_class = apply_filters( 'customize_dynamic_setting_class', $setting_class, $setting_id, $setting_args );

Changelog

Version Description
4.2.0 Introduced.