我的问题:
我已经用自定义器中的颜色输入替换了支持alpha通道的输入。 Wordpress的消毒功能仅适用于十六进制颜色,但我获得了rgba()颜色。我写了一个消毒功能,可以完美地适用于任何添加到定制程序的新控件,但是如果我替换现有的控件并将相应设置的sanitize_callback参数更改为我自己的功能($wp_customize->get_setting("background_color")->sanitize_callback = "slug_sanitize_color";
),Wordpress仍然使用其标准sanitize_hex_color。 var_dump($wp_customize->get_setting("background_color")->sanitize_callback);
的输出是string(19) "slug_sanitize_color"
所以我想它应该工作。如果需要更多代码,我可以提供。
我的问题:
为了让Wordpress使用我的消毒功能来控制预先存在的控件而不是使用一个Wordpress,我需要做些什么?
此外:这一切都发生在一个挂钩的功能内customize_register
Wordpress定制器更改sanitize_callback设置没有任何影响
0
A
回答
0
我自己找到了解决方案。 如果要更改sanitize_callback,sanitize_js_callback或validate_callback,您必须手动取消注册旧的回调函数(remove_filter("customize_sanitize_{$settingid}",$wp_customize->get_setting($settingid)->sanitize_callback);
),然后更改对象的值($wp_customize->get_setting($settingid)->sanitize_callback = "my_custom_filter_function";
),最后注册新的过滤器函数(add_filter("customize_sanitize_{$settingid}",my_custom_filter_function,10,2);
)。
相关问题
- 1. 更改android:minSdkVersion没有影响
- 2. 在php.ini中更改设置对性能没有影响
- 3. Magento 1.4.2 + APC:清除缓存对更改设置没有影响
- 4. 构建模板中的TFS2013更改没有任何影响
- 5. 更改Div高度参数对尺寸没有任何影响
- 6. 更改AlfrescoDocument属性没有任何影响
- 7. 的Joomla 25(beez_20)模板更改没有任何影响
- 8. 将videoGravity设置为AVLayerVideoGravityResizeAspectFill对iOS 5.0没有任何影响
- 9. 我的log4j配置更改没有任何影响输出。 (在IntelliJ中)
- 10. 更改Tx蓝牙Linux没有影响
- 11. 更改查询字符没有影响
- 12. 设置ShowInMenus假没有影响
- 13. Perl的环境设置没有影响
- 14. 设置defaultRowPrefetch对查询没有影响
- 15. grails.server.port没有任何影响了在BuildConfig.groovy
- 16. CREATE TABLE没有任何影响JBDC
- 17. Fancybox选项没有任何影响
- 18. Javascript img onclick没有任何影响?
- 19. h2o max_runtime_seconds - 似乎没有任何影响?
- 20. Android:setSelection对Spinner没有任何影响
- 21. 属性覆盖没有任何影响
- 22. 别名没有任何影响
- 23. SingleColumnValueFilter对结果没有任何影响
- 24. FREENECT_DEPTH_REGISTERED对libfreenect没有任何影响
- 25. Solr splitBy没有任何影响
- 26. htaccess中的RewriteRule没有任何影响
- 27. CSS Resize Table没有任何影响
- 28. 为什么.not()没有任何影响?
- 29. ng-show没有任何影响
- 30. 对setViewController没有任何影响:animiated:?