使用WooCommerce产品字幕插件在单个产品页面中未显示字幕

时间:2019-02-11 10:52:28

标签: php wordpress woocommerce

我正在使用带有Flatsome主题的WooCommerce。
我想在产品中添加字幕。
我安装了WooCommerce产品字幕插件,但仅在商店页面上看不到字幕,而在单个产品页面上看不到。

我在互联网上看了很多,但没有成功。
在插件区域,我看到此帮助信息:

F.A.Q.s
1.字幕在单个产品页面中不可见?

此问题可能与您正在使用的主题有关
请确保您的主题在以下文件中具有woocommerce_single_product_summary过滤器

woocommerce_single_product_summary过滤器文件列表:

  1. 您的主题/woocommerce/content-product.php

我该怎么办?这是页面:

<?php
/**
 * The template for displaying product content within loops
 */

defined( 'ABSPATH' ) || exit;

global $product;

// Ensure visibility.
if ( empty( $product ) || ! $product->is_visible() ) {
    return;
}

// Check stock status.
$out_of_stock = get_post_meta( $post->ID, '_stock_status', true ) == 'outofstock';

// Extra post classes.
$classes   = array();
$classes[] = 'product-small';
$classes[] = 'col';
$classes[] = 'has-hover';

if ( $out_of_stock ) $classes[] = 'out-of-stock';

?>

<div <?php fl_woocommerce_version_check( '3.4.0' ) ? wc_product_class( $classes ) : post_class( $classes ); ?>>
    <div class="col-inner">
    <?php do_action( 'woocommerce_before_shop_loop_item' ); ?>
    <div class="product-small box <?php echo flatsome_product_box_class(); ?>">
        <div class="box-image">
            <div class="<?php echo flatsome_product_box_image_class(); ?>">
                <a href="<?php echo get_the_permalink(); ?>">
                    <?php

                        /**
                         *
                         * @hooked woocommerce_get_alt_product_thumbnail - 11
                         * @hooked woocommerce_template_loop_product_thumbnail - 10
                         */
                        do_action( 'flatsome_woocommerce_shop_loop_images' );
                    ?>
                </a>
            </div>
            <div class="image-tools is-small top right show-on-hover">
                <?php do_action( 'flatsome_product_box_tools_top' ); ?>
            </div>
            <div class="image-tools is-small hide-for-small bottom left show-on-hover">
                <?php do_action( 'flatsome_product_box_tools_bottom' ); ?>
            </div>
            <div class="image-tools <?php echo flatsome_product_box_actions_class(); ?>">
                <?php do_action( 'flatsome_product_box_actions' ); ?>
            </div>
            <?php if ( $out_of_stock ) { ?><div class="out-of-stock-label"><?php _e( 'Out of stock', 'woocommerce' ); ?></div><?php } ?>
        </div><!-- box-image -->

        <div class="box-text <?php echo flatsome_product_box_text_class(); ?>">
            <?php
                do_action( 'woocommerce_before_shop_loop_item_title' );

                echo '<div class="title-wrapper">';
                do_action( 'woocommerce_shop_loop_item_title' );
                echo '</div>';


                echo '<div class="price-wrapper">';
                do_action( 'woocommerce_after_shop_loop_item_title' );
                echo '</div>';

                do_action( 'flatsome_product_box_after' );

            ?>
        </div><!-- box-text -->
    </div><!-- box -->
    <?php do_action( 'woocommerce_after_shop_loop_item' ); ?>
    </div><!-- .col-inner -->
</div><!-- col -->

2 个答案:

答案 0 :(得分:0)

也许字幕没有被钩在单个产品页面的任何地方。

您可以尝试将此代码段添加到主题的functions.php文件中吗?

add_action('woocommerce_shop_loop_item_title', 'fc_single_product_subtitle');
function fc_single_product_subtitle() {

    $subtitle = get_product_subtitle( get_the_ID() );

    if( ! empty( $subtitle ) ) echo $subtitle;
}

让我知道,祝你好运!

答案 1 :(得分:0)

很长时间之后……

我的网站与Elementor pro一起使用,所以我只需从插件中编辑单页产品的模板:

  1. 仪表板> Elementor Tamplates(在某些版本上可能会显示不同)。

  2. 单击“编辑”进入我的产品页面模板。

  3. 当元素或构建器加载我的模板模板页面时,我只需插入简码小部件并使用简码[wc-ps]即可与字幕数据配合使用。