2016-07-13 15 views
1

WooCommerceで、ショップページのショート商品の説明を制限するにはどうすればよいですか?私はこのコードを追加しました:WooCommerce - ショート商品の説明を制限する方法

add_action('woocommerce_after_shop_loop_item_title','woocommerce_template_single_excerpt', 5); 

ただし、40文字に制限することはできません。

ありがとうございました!

答えて

3

それを追加する代わりに、プラグイン内で直接ファイルを編集する(一度プラグインを更新し、変更のすべてのために非常に悪い考えであります失われます!)

add_filter('woocommerce_short_description', 'limit_woocommerce_short_description', 10, 1); 
function limit_woocommerce_short_description($post_excerpt){ 
    if (!is_product()) { 
     $post_excerpt = substr($post_excerpt, 0, 20); 
    } 
    return $post_excerpt; 
} 

その後、あなたのテーマのごのfunctions.phpファイルでこれを貼り付けます。

とあなたが製品の説明を表示するこのラインを使用 - ショップページでない製品-詳細ページ上変更制限に

<?php echo apply_filters('woocommerce_short_description', $post->post_excerpt); ?> 

使用このコードを。

+0

ありがとうございます!単語数を制限する解決策はありますか? charachtersではない。 – Menachem

+0

私の次の投稿を確認してください。使用する - $個= explode( ""、$ post_excerpt); $ post_excerpt = implode( ""、array_splice($ pieces、0、10)); – Swapnali

+0

今後、明確な帰属がない場合は、他の場所からコンテンツをコピーしないでください。それは盗作とみなされます。 http://stackoverflow.com/help/referencingを参照してください。 – Matt

2

私が使用します。

function et_excerpt_length($length) { 
    global $post; 
    if($post->post_type=="product") return 40; 
     return 20; /*Your default excerpt length*/ 
} 
add_filter('excerpt_length', 'et_excerpt_length'); 

function.phpに

1

あなたは制限のために言葉のないこのコードを使用することはできません -

add_filter('woocommerce_short_description', 'limit_woocommerce_short_description', 10, 1); 
function limit_woocommerce_short_description($post_excerpt){ 
    if (!is_product()) { 
     $pieces = explode(" ", $post_excerpt); 
     $post_excerpt = implode(" ", array_splice($pieces, 0, 20)); 

    } 
    return $post_excerpt; 
} 

をarray_spliceは、あなたがそれらの単語の特定の範囲を取得することができます、単語の配列に休憩元の文字列を爆発し、その後範囲をまとめて単一の文字列にします。

このコードを使用して、ショップページの制限を変更します。製品詳細ページではありません。

関連する問題