2017-06-02 16 views
3

カートに商品を追加する:カートに追加しますが、チェックアウトページには表示されません。どんなアイデアや解決策もありがとうございます。商品をカートに入れるWoocomerce

function excerpt_in_cart() { 

$excerpt = get_the_excerpt(); 
$excerpt = substr($excerpt, 0, 80); 
return '<br><p class="shortDescription">' . $excerpt .'...' . '</p>'; 
} 
add_action('woocommerce_cart_item_name', 'excerpt_in_cart', 40); 

チェックアウトページのときは、コードからこの部分が表示されません。 $ excerpt。 ' pはクラスでうまく表示されます。

答えて

2
function excerpt_in_cart($cart_item_html, $product_data) { 
global $_product; 

$excerpt = get_the_excerpt($product_data['product_id']); 
$excerpt = substr($excerpt, 0, 80); 

echo $cart_item_html . '<br><p class="shortDescription">' . $excerpt . '...' . '</p>'; 
} 

add_filter('woocommerce_cart_item_name', 'excerpt_in_cart', 40, 2); 

すべてwoocommerce_cart_item_nameフックの第一は、フィルタフックではないアクションフックです。

あなたは正しく、いくつかのマイナーな問題をしたことのほとんどは、あなたがwoocommerce_cart_item_nameフックでADD_FILTER使用する必要が

  • です。
  • あなたの抜粋を連結する代わりに、woocommerceで作成したhtmlを上書きしました。
  • 商品IDを使用して各カートアイテムの抜粋を処理することができませんでした。

追加情報:

これはWordPressのコアファイルからであるadd_action機能

function add_action($tag, $function_to_add, $priority = 10, $accepted_args = 1) { 
    return add_filter($tag, $function_to_add, $priority, $accepted_args); 
} 

plugin.phpは add_filterの単なるラッパー関数です。

関連する問題