2016-08-10 6 views
1

これはおそらく私にはドアが開きます。Woocommerceフックからの機能の削除

WooCommerceテンプレートの一部archive-product.phpにはコードが含まれています。

<?php 
      /** 
      * woocommerce_before_shop_loop hook. 
      * 
      * @hooked woocommerce_result_count - 20 
      * @hooked woocommerce_catalog_ordering - 30 
      */ 
      do_action('woocommerce_before_shop_loop'); 
     ?> 

これを読んで、これを意味します。

remove_action('woocommerce_before_shop_loop', 'woocommerce_result_count', 20); 

は、返された製品カテゴリから結果数を削除する必要があります。それだけではありません。

どういうところが間違っていますか?

+0

1.どのようにフックを理解し、 (私は商業のテンプレートの基本的な部分のようです) –

答えて

2

私はあなたがdocumentationを読むべきだと言っていましたが、それは重要な部分を残しています。

remove_action()を直接呼び出すことはできません。それ自体、アクションフックに追加する必要があります。アクションフックは、アクションが削除される前に来る必要があります。この場合、私はちょうど同じフックを使用していますが、以前の優先順位(デフォルトは10で、私は1を使用しました)Woocommerceから

function so_38878702_remove_hook(){ 
    remove_action('woocommerce_before_shop_loop', 'woocommerce_result_count', 20); 
} 
add_action('woocommerce_before_shop_loop', 'so_38878702_remove_hook', 1); 
+0

ありがとう、私は今この重要な技術を理解し始めています。 Wordpressのドキュメントには言及されていないことは事実です。 –

+0

これをCodexに追加しました。私は彼らがdeveloper.wordpress.orgに移っていると思う。 – helgatheviking

1

remove result countにアクションう -

add_action('woocommerce_before_shop_loop', 'remove_result_count'); 
    function remove_result_count() 
    { 
     remove_action('woocommerce_before_shop_loop', 'woocommerce_result_count', 20); 

    } 

でこのコードを使用しますあなたのfunction.phpファイル。

重要:フック、$のfunction_to_removeとフックが追加されたときに 引数が一致しなければなりません$優先順位を削除するには。これは、フィルタとアクションの両方に適用されます( )。削除に失敗すると警告は表示されません。

http://codex.wordpress.org/Function_Reference/remove_action

ここでは、 WooCommerce アクションとフィルターフックを得ることができます - アーカイブ - 製品ページ 2から結果数を削除

https://docs.woothemes.com/wc-apidocs/hook-docs.html

関連する問題