从单个产品页面上的单独图标打开Woocommerce选项卡



我需要向woocommerce单个产品页面添加自定义功能。用户需要能够单击简短描述下方的图标,这会将它们弹出到选项卡部分,然后打开相关选项卡。

让它向下滚动到底部没有问题,但是打开相关选项卡我无法弄清楚。我尝试通过 URL (http://www.remicorson.com/access-woocommerce-product-tabs-directly-via-url/) 访问该选项卡,但问题是页面需要重新加载。我能得到的任何帮助将不胜感激。

这是我正在使用的选项卡的代码:

function product_icon_set(){
    echo "<div class='info-panel'>
        <div class='learn_more img__wrap'>
            <a href='#description_tab'><img class='icon_product img__img' src='http://webdev/rbo/wp-content/uploads/2017/09/Icon_MoreInformation_On.png.png' /></a>
            <p class='img__description'>Desc.</p>   
        </div>
        <div class='specs img__wrap'>
            <a href='#specifications'><img class='icon_product img__img' src='http://webdev/rbo/wp-content/uploads/2017/09/Icon_Specifications_On.png.png' /></a>
            <p class='img__description'>Specs.</p>  
        </div>
        <div class='dimension img__wrap'>
            <a rel='prettyPhoto' title='My Picture 1' href='https://webdev/rbo/wp-content/uploads/2017/09/ITD1013-Hanging-Hose-Rack-Dimensions.jpg'><img class='icon_product img__img' src='http://webdev/rbo/wp-content/uploads/2017/09/Icon_Demensions_On.png.png' /></a>
            <p class='img__description'>Dimen.</p>
        </div>
        <div class='product_manual img__wrap'>
            <a href='#tabs_product'><img class='icon_product img__img' src='http://webdev/rbo/wp-content/uploads/2017/09/Icon_OpsManual_On.png.png' /></a>
            <p class='img__description'>Manual</p>
        </div>
        <div class='tech_tips img__wrap'>
            <a href='#tabs_product'><img class='icon_product img__img' src='https://webdev/rbo/wp-content/uploads/2017/09/Icon_Tech-Tips_On.png-copy.png' /></a>
            <p class='img__description'>Tech Tips</p>
        </div>
        <div class='instal_video img__wrap'>
            <a href='#tabs_product'><img class='icon_product img__img' src='https://webdev/rbo/wp-content/uploads/2017/09/Installation_videos.png' /></a>
            <p class='img__description'>Instal.</p>
        </div>
    </div>";
}

回顾一下,用户将单击一个选项卡,将他们带到选项卡部分,并打开相关选项卡。 例如,单击规格图标,向下弹出到该部分,然后打开规格选项卡。

我实际上是通过jquery弄清楚的。您需要创建一个函数,从当前 Li 中删除类"active",然后将其添加到要激活的 Li(具有正确类的选项卡)中,然后对内容的相应div ID 执行相同的操作。这是函数,以及我正在使用的选项卡代码。

function wc_change_tab() {
if( is_product() ) {
?>
<script type="text/javascript">
    jQuery(document).ready(function($) {
            // Activate Description Tab
            $('.desc_tab_button').on('click', function () {
                //disable active tab
                $( 'li.active' ).removeClass( 'active' );
                //enable desired tab
                $( 'li.' + 'description' + '_tab' ).addClass( 'active' );
                //disable active tab contents
                $( 'div.active' ).removeClass( 'active' );
                //enable desired tab contents
                $( 'div#' + 'tab-description' ).addClass( 'active' );
              });
            // Activate Specs Tab
            $('.specs_tab_button').on('click', function () {
                //disable active tab
                $( 'li.active' ).removeClass( 'active' );
                //enable desired tab
                $( 'li.' + 'additional_information' + '_tab' ).addClass( 'active' );
                //disable active tab contents
                $( 'div.active' ).removeClass( 'active' );
                //enable desired tab contents
                $( 'div#' + 'tab-additional_information' ).addClass( 'active' );

            /*///// TEMPLATE FOR NEW ICON /// CHANGE OUT CLASS NAMES// Activate Specs Tab
            $('.CHANGE_TO_ICON_CLASS').on('click', function () {
                //disable active tab
                $( 'li.active' ).removeClass( 'active' );
                //enable desired tab
                $( 'li.' + 'CHANGE_TO_TAB_CLASS_NAME' + '_tab' ).addClass( 'active' );
                //disable active tab contents
                $( 'div.active' ).removeClass( 'active' );
                //enable desired tab contents
                $( 'div#' + 'CHANGE_TO_TAB_ID_NAME' ).addClass( 'active' );*/
              });
    });
    </script>
<?php
}

}add_action( 'wp_footer', 'wc_change_tab', 26 );

// Icon Set

函数 product_icon_set(){

echo "<div class='info-panel'>
    <div class='learn_more img__wrap'>
        <a href='#tabs_product' class='desc_tab_button'><img class='icon_product img__img' src='http://webdev/rbo/wp-content/uploads/2017/09/Icon_MoreInformation_On.png.png' /></a>
        <p class='img__description'>Desc.</p>   
    </div>
    <div class='specs img__wrap'>
        <a href='#tabs_product' class='specs_tab_button'><img class='icon_product img__img' src='http://webdev/rbo/wp-content/uploads/2017/09/Icon_Specifications_On.png.png' /></a>
        <p class='img__description'>Specs.</p>  
    </div>
    <div class='dimension img__wrap'>
        <a rel='prettyPhoto' title='My Picture 1' href='https://webdev/rbo/wp-content/uploads/2017/09/ITD1013-Hanging-Hose-Rack-Dimensions.jpg'><img class='icon_product img__img' src='http://webdev/rbo/wp-content/uploads/2017/09/Icon_Demensions_On.png.png' /></a>
        <p class='img__description'>Dimen.</p>
    </div>
    <div class='product_manual img__wrap'>
        <a href='#tabs_product'><img class='icon_product img__img' src='http://webdev/rbo/wp-content/uploads/2017/09/Icon_OpsManual_On.png.png' /></a>
        <p class='img__description'>Manual</p>
    </div>
    <div class='tech_tips img__wrap'>
        <a href='#tabs_product'><img class='icon_product img__img' src='https://webdev/rbo/wp-content/uploads/2017/09/Icon_Tech-Tips_On.png-copy.png' /></a>
        <p class='img__description'>Tech Tips</p>
    </div>
    <div class='instal_video img__wrap'>
        <a href='#tabs_product'><img class='icon_product img__img' src='https://webdev/rbo/wp-content/uploads/2017/09/Installation_videos.png' /></a>
        <p class='img__description'>Instal.</p>
    </div>
</div>";

}

最新更新