0

2 番目の右側のサイドバーが woocommerce の単一製品ページにのみ表示されるという問題があります。それはまったく表示されません。以下は私がやったことです。何が間違っているか、何が欠けていますか?

これをwoocommerceページのsingle-product.phpファイルに追加しました

<?php
        /**
        * woocommerce_sidebar hook
        *
        * @hooked woocommerce_get_sidebar - 10
        */
        /* do_action('woocommerce_sidebar'); */ 
           include("sidebar5.php");
?>

wp-content > themes > theme > includes > sidebars.php ファイルにサイドバーを追加しました。すでに 4 つのサイドバー (右に 1 つ、フッターに 3 つ) がありました。

register_sidebar( array(
        'name' => 'Sidebar Woo',
        'id' => 'sidebar-5',
        'before_widget' => '<div id="%1$s" class="widget %2$s">',
        'after_widget' => '</div> <!-- end .widget -->',
        'before_title' => '<h4 class="widgettitle">',
        'after_title' => '</h4>',
    ) );

sidebar5.php ページを作成しました:

<?php if ( is_active_sidebar( 'sidebar-5' ) ){ ?>
    <div id="sidebar">
        <?php dynamic_sidebar( 'sidebar-5' ); ?>
    </div> <!-- end #sidebar -->
<?php } ?>
4

2 に答える 2

0

他のファイルを作成する代わりに、functions.php に次のコードを追加する必要があると思います。

register_sidebar( array(
        'name' => 'Sidebar Woo',
        'id' => 'sidebar-5',
        'before_widget' => '<div id="%1$s" class="widget %2$s">',
        'after_widget' => '</div> <!-- end .widget -->',
        'before_title' => '<h4 class="widgettitle">',
        'after_title' => '</h4>',
    ) );
于 2013-07-02T16:43:39.303 に答える
0

別の sidebar5.php ページを使用する代わりに、コードを woocommerce single-product.php に直接配置し、インクルードを削除しました。

<?php
        /**
        * woocommerce_sidebar hook
        *
        * @hooked woocommerce_get_sidebar - 10
        */
        /* do_action('woocommerce_sidebar'); */ 
          // include("sidebar5.php");
?>
<?php if ( is_active_sidebar( 'sidebar-5' ) ) : ?>
    <div id="sidebar">
        <?php dynamic_sidebar( 'sidebar-5' ); ?>
    </div>
于 2013-07-16T16:31:49.583 に答える