2016-08-05 68 views
0

我正在開發一個WooCommerce插件,它是一個插件,允許店長爲每個產品頁面定義塊「Magento風格」。WordPress的 - add_filter | apply_fitlers

示例: 對於產品X我希望相關產品塊可見,對於產品Y我只想顯示加售塊和特色產品塊。

我想定義一個過濾器,以便主題開發人員可以掛鉤一些自定義塊。

我有WC_Block_Loader

WICH具有在構造方法這行代碼的類:

$this->blocks = array() 
    $this->blocks = apply_filters('woocommerce_blocks_register', $this->blocks); 
    var_dump($this->blocks); //empty 

在主題的functions.php是一段代碼波紋管:

function hook_my_custom_wc_blocks ($blocks) { 
     $blocks['WC_My_Custom_Block'] = get_template_directory().'/includes/blocks/block-my-custom-block.php'; 
     return $blocks; 
    } 

    add_filter('woocommerce_blocks_register', 'hook_my_custom_blocks', 10, 1); 

我認爲問題在於我使用'plugins_loaded'動作初始化了插件,函數.php在此鉤子後運行,但我不確定。

有什麼建議嗎?感謝和快樂的編程。

回答

0

我解決了這個問題,只需將plugins_loaded鉤子更改爲init鉤子即可。

相關問題