5

商品をカートに追加した後、「商品がカートに追加されました」という文言と領域を削除したいと考えています。私はただ何も、メッセージも、メッセージのためのスペースもないことを望んでいます.

サイトは次のとおりです: http://www.tinytreasurehunts.com コードは woocommerece-functions.php にあります。

何かご意見は?

4

7 に答える 7

7

これを PHP レベルで解決するには、次のテンプレート ファイル (および構造) をテーマに追加します
/wp-content/themes/YOUR-THEME/woocommerce/shop/messages.php

<?php
/**
 * Show messages
 *
 * @author      brasofilo
 * @package     WooCommerce/Templates
 * @version     1.6.4
 */

if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly

if ( ! $messages ) return;

foreach ( $messages as $message ) : 
    // The message does not contain the "add to cart" string, so print the message
    // http://stackoverflow.com/q/4366730/1287812
    if ( strpos( $message, 'added to your cart' ) === false ) :
        ?>
            <div class="woocommerce-message"><?php echo wp_kses_post( $message ); ?></div>
        <?php 
    endif;
endforeach;

参照:テンプレート構造 + テーマによるテンプレートのオーバーライド

于 2013-08-22T14:35:08.187 に答える
7

次のいずれかを使用します。

古いバージョン

$woocommerce->clear_messages(); 

バージョン 2.3

wc_clear_notices();
于 2015-02-12T07:35:01.860 に答える
3

CSS を使用して、ID または関連するクラスの表示を none に設定します。

 
.page-id-522 .woocommerce_message {
     display: none;
}

これはページ ID 522 に固有のものです。これにより、クレジット カードの拒否などの他の有用なメッセージも隠されないようにしてください。

于 2012-12-24T18:06:33.720 に答える
3

このコードをテーマの functions.php ファイルに追加します。そのメッセージだけを削除します。発生する可能性が高いページのみでトリガーする必要があります。

function remove_added_to_cart_notice()
{
    $notices = WC()->session->get('wc_notices', array());

    foreach( $notices['success'] as $key => &$notice){
        if( strpos( $notice, 'has been added' ) !== false){
            $added_to_cart_key = $key;
            break;
        }
    }
    unset( $notices['success'][$added_to_cart_key] );

    WC()->session->set('wc_notices', $notices);
}
add_action('woocommerce_before_single_product','remove_added_to_cart_notice',1);
add_action('woocommerce_shortcode_before_product_cat_loop','remove_added_to_cart_notice',1);
add_action('woocommerce_before_shop_loop','remove_added_to_cart_notice',1);

この回答を自分の回答から貼り付けました カートに追加されたWoocommerceメッセージを削除/非表示にしますが、クーポン適用メッセージを保持/表示します

于 2016-01-07T14:28:46.043 に答える
1

WooCommerce バージョン 2.1.6 の更新

テンプレートは新しいディレクトリとファイルにあります。上記と同じコードとソリューション。

/wp-content/plugins/woocommerce/templates/notices/success.php

于 2014-03-28T04:06:17.200 に答える