web-dev-qa-db-ja.com

商品ページのWooCommerceの「カートに追加」の位置をカスタマイズする方法

商品ページを並べ替えるには、どのファイルを編集する必要がありますか。

デフォルトのWoocommerce商品ページにいくつかの基本的なレイアウト変更を加えたい。具体的には、Orderのものを価格のすぐ下に配置して、説明を下に押します。言い換えれば、Short DescriptionをOrder Stuff(属性、カートに入れる、SKUなど)と入れ替えます。これが私がやりたいことのスクリーンショットです: http://d.pr/i/YGAY

2
Blake Miller

あなたはwoocommerce_single_product_summaryアクションにフックすることによってあなたが望むことをすることができます。アクションは次のようにcontent-single-product.php内で実行されます。

    <?php
        /**
         * woocommerce_single_product_summary hook
         *
         * @hooked woocommerce_template_single_title - 5
         * @hooked woocommerce_template_single_price - 10
         * @hooked woocommerce_template_single_excerpt - 20
         * @hooked woocommerce_template_single_add_to_cart - 30
         * @hooked woocommerce_template_single_meta - 40
         * @hooked woocommerce_template_single_sharing - 50
         */
        do_action( 'woocommerce_single_product_summary' );
    ?>

あなたが上で部品のフックについての説明/ドキュメンテーションを持っている上で、数は優先順位および/または順序を表します。

次のように、位置を変更したい部分を削除してから追加することで、優先順位/順序を変更できます。

    /** woocommerce: change position of add-to-cart on single product **/
    remove_action( 'woocommerce_single_product_summary', 
               'woocommerce_template_single_add_to_cart', 30 );
    add_action( 'woocommerce_single_product_summary', 
            'woocommerce_template_single_add_to_cart', 9 );

有効にするには、このコードをfunctions.phpにドロップしてください。カートに追加する部分は、タイトルの後、価格の前に表示する必要があります。たとえば、価格の後に表示する場合は - 数字を選択します - 上記のコードのadd_action()行に - 11から19確かにあなたは今までに原理を得ています。

8
Nicolai