我的問題:
我已經用自定義器中的顏色輸入替換了支持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. Magento 1.4.2 + APC:清除緩存對更改設置沒有影響
- 2. 在php.ini中更改設置對性能沒有影響
- 3. 的Joomla 25(beez_20)模板更改沒有任何影響
- 4. 構建模板中的TFS2013更改沒有任何影響
- 5. 將videoGravity設置爲AVLayerVideoGravityResizeAspectFill對iOS 5.0沒有任何影響
- 6. 我的log4j配置更改沒有任何影響輸出。 (在IntelliJ中)
- 7. 更改查詢字符沒有影響
- 8. Perl的環境設置沒有影響
- 9. 設置ShowInMenus假沒有影響
- 10. 設置defaultRowPrefetch對查詢沒有影響
- 11. ng-show沒有任何影響
- 12. Javascript img onclick沒有任何影響?
- 13. CSS Resize Table沒有任何影響
- 14. 爲什麼.not()沒有任何影響?
- 15. Android:setSelection對Spinner沒有任何影響
- 16. jQuery .ajax請求沒有任何影響
- 17. 別名沒有任何影響
- 18. htaccess中的RewriteRule沒有任何影響
- 19. Fancybox選項沒有任何影響
- 20. h2o max_runtime_seconds - 似乎沒有任何影響?
- 21. 更改web瀏覽器設置是否會影響Internet Explorer?
- 22. 更改applicationHost.config中的設置爲允許對500.19錯誤沒有影響
- 23. 使用powercfg修改PROCTHROTTLEMAX在2008 R2沒有任何影響
- 24. SceneKit:更改着色器參數對對象沒有影響
- 25. requestLocationUpdates對薑餅設備沒有任何影響的參數
- 26. 更新聲明對我的表沒有任何影響
- 27. 在eclipse.ini中更新eclipse max堆大小沒有任何影響
- 28. 運行更新MSI沒有任何影響
- 29. CKEditor的配置文件沒有任何影響
- 30. 使用angularjs修改代碼時在瀏覽器中沒有任何影響