以编程方式在Woocommerce中打开特定产品选项卡
问题描述:
我正在使用woocommerce。提交特定表格后,我想将其发送到产品页面并打开某个选项卡,此处为“添加信息”选项卡...以编程方式在Woocommerce中打开特定产品选项卡
我该如何实现这一目标?
我已经试过像网址的网站/产品/产品-3 /#制表additional_information'
但它并没有奏效。
答
更新时间:
是的,这是可能的的JavaScript在wp_footer
动作钩子钩住一个自定义的PHP函数一点点和jQuery的嵌入代码。
通话预订购是如URL女仆:WEBSITE/product/product-3/?tab=additional_information
下面是功能代码:
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文件(或主题)或者在任何插件文件中。
此代码对Woocommerce 3+测试和工程
可能是你可以自动完成,而不是打开一个产品标签是什么,就是在1档自动将该标签低谷重新排序$_GET
方法(在url中添加一个变量)。
在URL中的通话将需要像:WEBSITE/product/product-3/?tab=additional_information
您将能够在woocommerce_product_tabs
过滤钩子钩住的自定义功能做到这一点:
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;
}
代码进入你活动的儿童主题(或主题)的function.php文件,或者在任何插件文件中。
此代码对Woocommerce 3+测试和工程
感谢您的答复卢瓦克,但我不希望移动/更换标签的位置。 – Alice
@Alice好的这一次,我得到了它的工作,有一点javascript/jQuery ...请检查它。谢谢 – LoicTheAztec
谢谢,它像一个魅力:) – Alice