私はwoocommerceを使用しています。特定のフォームを送信した後、特定のタブを開いて製品ページに送信したい場合は、ここで「追加情報」タブ...Woocommerceで特定の商品タブをプログラムで開く
どうすればいいですか?
私は '#タブ-additional_information /ウェブサイト/製品/製品-3' のようなURLを試してみました
しかし、それは働いていませんでした。
私はwoocommerceを使用しています。特定のフォームを送信した後、特定のタブを開いて製品ページに送信したい場合は、ここで「追加情報」タブ...Woocommerceで特定の商品タブをプログラムで開く
どうすればいいですか?
私は '#タブ-additional_information /ウェブサイト/製品/製品-3' のようなURLを試してみました
しかし、それは働いていませんでした。
更新:
はい、これはwp_footer
アクションフックに引っかけカスタムPHP関数はJavaScriptを少しとjQuery埋め込まれたコードで可能です。
コールのようなURLでメイドもwilll:
add_action('wp_footer', 'custom_reordering_product_tabs_action');
function custom_reordering_product_tabs_action() {
// Only in single product pages and a specific url (using GET method)
if(isset($_GET['tab']) && is_product()) :
?>
<script type="text/javascript">
(function($){
setTimeout(function() {
$('ul.tabs.wc-tabs > li.active').removeClass("active");
$('div#tab-description').hide();
$('ul.tabs.wc-tabs > li.<?php echo $_GET['tab']; ?>_tab').addClass("active");
$('div#tab-<?php echo $_GET['tab']; ?>').show();
}, 500);
})(jQuery);
</script>
<?php
endif;
}
コードは、あなたのアクティブな子テーマのfunction.phpファイルになります(またはテーマ:ここWEBSITE/product/product-3/?tab=additional_information
は、その関数のコードです)または任意のプラグインファイルでも使用できます。
このコードはWoocommerce 3+でテストおよび
を動作しますが、あなたが自動的に開い製品]タブの代わりに何ができるかであってもよいし、そのタブに自動的に第一位置にトラフをの順序を変更することです$_GET
メソッド(URLに変数を追加する)。
あなたのURL内のコールは次のようにする必要があります。
add_filter('woocommerce_product_tabs', 'custom_reordering_product_tabs_action', 98);
function custom_reordering_product_tabs_action($tabs) {
if(empty($_GET['tab'])) return $tabs;
$tabs[$_GET['tab']]['priority'] = 2;
return $tabs;
}
コード:あなたはwoocommerce_product_tabs
フィルターフックに引っ掛けられているカスタム関数でそれを行うことができるようになりますWEBSITE/product/product-3/?tab=additional_information
あなたのアクティブな子供のテーマ(またはテーマ)のfunction.phpファイル、またはすべてのプラグインファイルに入ります。
このコードはWoocommerce 3+上でテストし、応答ロイックため
おかげで動作します、しかし、私は/変更]タブの位置を移動したくないです。 – Alice
@アリスオクラホマこの時間に、javascript/jQueryのビットを使って、うまくいきました。確認してください。おかげで – LoicTheAztec
ありがとう、それは魅力のように動作します:) – Alice