2016-10-27 92 views
0

我正在開發一個插件,它可以正常工作,當我從我的插件的主php文件中調用我的代碼但我只想運行一次我的外部文件在插件中調用。我的意思是我想把我的功能放在包含文件夾和一個文件中。像插件文件夾/包括/ file.php ...這裏是我的代碼add_filter鉤子不能在插件的php文件中工作

add_filter('wp_nav_menu_items',',my_custom_function'); 
function my_custom_function ($nav){ 
return $nav."<li class='menu-header-search'><a href='#'>Icon</a></li>"; 
} 

請讓我知道我可以使它工作,它工作在端插件的主要PHP文件,但不會從其他PHP文件工作內部插件包含文件夾。

+0

是否包含具有上述代碼的文件嗎? – Noman

+0

該文件實際上是海狸生成器的front-end.php文件...它不包括但只有一次把數據放到前端,一旦該文件調用....希望你現在得到它......? – laraib

+0

請添加插件代碼 – Noman

回答

0

它應該工作,如果你從插件主文件中包含你的文件,只要確保它包含正確。

include plugin_dir_path(__FILE__) . 'includes/file.php; 

這將包含文件在自定義插件文件夾中的includes文件夾中,並且會包含名爲「file.php」的文件。如果你想知道,如果它被正確加載,只是在包含文件添加一個模具()語句:

die('my include file has been loaded correctly'); 

只需卸下模具()語句,你有它的工作:)最後,你需要一個確認後複製回調函數代碼並將其粘貼到包含的文件中。如果你的鉤子仍然不能工作,那麼你的回調函數可能會出錯。

爲您所使用的過濾器鉤的文檔: https://developer.wordpress.org/reference/hooks/wp_nav_menu_items/

+0

但它在其他文件中需要和主插件文件中不需要...再次閱讀問題 –