Wordpress:仅适用于Woocommerce Brand页面

时间:2014-10-11 09:56:23

标签: wordpress woocommerce

亲爱的StackOverflow朋友, 在Wordpress电子商店中,我们使用Woocommerce及其扩展插件Woocommerce Brand Addon。

我希望将此代码(位于functions.php中)仅应用于Woocommerce品牌页面:代码在Woocommerce Brands中完成其工作,但它也适用于其他类别/档案

add_action( 'woocommerce_after_shop_loop_item_title', 'lk2_woocommerce_product_excerpt', 35, 2);
if (!function_exists('lk2_woocommerce_product_excerpt'))
{
function lk2_woocommerce_product_excerpt()
{
$content_length = 20;
global $post;
$content = $post->post_excerpt;
$wordarray = explode(' ', $content, $content_length + 1);
if(count($wordarray) > $content_length) :
array_pop($wordarray);
array_push($wordarray, '...');
$content = implode(' ', $wordarray);
$content = force_balance_tags($content);
endif;
echo "<span class='excerpt'><p>$content</p></span>";
}
}

我玩过分类学&#39;和&#39;包括&#39;,插入品牌ID,但没有结果。这是我的最后一次尝试。

add_action( 'woocommerce_after_shop_loop_item_title', 'lk2_woocommerce_product_excerpt', 35, 2);
if (!function_exists('lk2_woocommerce_product_excerpt'))
{
function lk2_woocommerce_product_excerpt()
{
$content_length = 20;
global $post;
$args = array(
'include'            => '120,121,122,123,124,125,126,127',
'taxonomy'           => 'product_brand',
); 
$content = $post->post_excerpt;
$wordarray = explode(' ', $content, $content_length + 1);
if(count($wordarray) > $content_length) :
array_pop($wordarray);
array_push($wordarray, '...');
$content = implode(' ', $wordarray);
$content = force_balance_tags($content);
endif;
echo "<span class='excerpt'><p>$content</p></span>";
}
}

很遗憾,我们还没有购买域名,所以我无法向您显示链接。

我可以用css修复输出,但我更喜欢直接从代码中解决。 你能帮我找到修正错误的方向吗?谢谢你的时间!

2 个答案:

答案 0 :(得分:0)

看起来它可能有答案:If is custom post type

if (is_single() && is_post_type('product_brand')){
  //work magic
}

答案 1 :(得分:0)

感谢您的所有指示!这是代码,感谢大卫

add_action( 'woocommerce_after_shop_loop_item_title', 'lk_woocommerce_product_excerpt', 35, 2);
if (!function_exists('lk_woocommerce_product_excerpt')){
    function lk_woocommerce_product_excerpt(){
        $content_length = 10;
        if(get_query_var('product_brand'))
            $content_length = 20;
        global $post;
        $content = $post->post_excerpt;
        $wordarray = explode(' ', $content, $content_length + 1);
        if(count($wordarray) > $content_length) :
        array_pop($wordarray);
        array_push($wordarray, '...');
        $content = implode(' ', $wordarray);
        $content = force_balance_tags($content);
        endif;
        echo "<span class='excerpt'><p>$content</p></span>";
    }
}