2017-06-16 23 views
0

我有一個服務於它自己的小部件的插件。我需要對小部件的js文件中的一些事件稍做更改。由於我不想直接編輯0​​文件,我的理解是我需要通過我的主題的functions.php文件取消註冊腳本,然後註冊一個定製版本,該版本位於我的主題目錄中。當在widget.php文件中的腳本的檢查,這是我所看到的:定製小部件的JS腳本的最佳方式是什麼?

function widget($args, $instance) { 
    wp_enqueue_script('berocket_aapf_widget-script', plugins_url('../js/widget.min.js', __FILE__), array('jquery'), BeRocket_AJAX_filters_version); 
} 

所以在我作文的functions.php文件我已經嘗試下面的出列此腳本:

function wpdocs_dequeue_script() { 
    wp_deregister_script('berocket_aapf_widget-script'); 
    wp_dequeue_script('berocket_aapf_widget-script'); 
} 
add_action('wp_print_scripts', 'wpdocs_dequeue_script', 99999999); 

這個不幸沒有做到這一點。我以正確的方式接近這個嗎?

回答

0

首先,我不會推薦放棄插件自己的JS文件。我知道你正在用它複製數據,但仍然如此。

這就是說,你的代碼有一些弱點。您需要先出隊然後註銷腳本/樣式。當wp_print_scripts在wp_enqueu_scripts之後執行時,您應該嘗試在wp_enqueue_scripts鉤子中取出腳本。

編號:Plugin API/Action Reference

除了以上幾點,你這樣做是正確的。

編輯1: 我不建議編輯插件的原始JS文件,而是要掛鉤/綁定自定義JS,並使其與原始文件一起工作。

+0

你是否建議我編輯插件的小部件JS文件?我只關心更新插件時可能會覆蓋編輯。 – Presto

+0

@Presto不,我建議綁定/掛鉤自定義JS以使用原始代碼。如果你可以發送你的網站鏈接和你想添加的JS,也許我可以幫助更多。 – Junaid

+0

我目前在當地工作。你有參考掛鉤到現有的JS? – Presto

相關問題