我想在我的产品(在类别页面中)上显示一个自定义属性作为悬停,但我遇到了困难。在我看来,最简单的方法是创建一个简码,但我无法克服它......这就是我所在的地方。这个,使用 [product_description id = '22'] 工作正常,但我需要自动检索 id。
function display_product_description( $atts ){
$atts = shortcode_atts( array(
'id' => get_the_id(),
), $atts, 'product_description' );
global $product;
if ( ! is_a( $product, 'WC_Product') )
$product = wc_get_product($atts['id']);
return $product->get_attribute( 'Profil aromatique' );
}
add_shortcode( 'product_description', 'display_product_description' );
这段代码也很好用,但它显示在我的产品下方,我无法让它悬停。
function woocommerce_after_shop_loop_item_title_short_description2() {
global $product;
if ( ! $product->get_attribute( 'Profil aromatique' ) ) return;
?>
<div itemprop="description" id="hovertest" class="test" >
<?php echo apply_filters( 'woocommerce_short_description', $product->get_attribute( 'Profil aromatique' ) ) ?>
</div>
<?php
}
add_action('woocommerce_after_shop_loop_item_title', 'woocommerce_after_shop_loop_item_title_short_description2', 5);
所以,我想做一个混合...
function display_profil_description(){
global $product;
if ( ! $product->get_attribute( 'Profil aromatique' ) ){ return '';}
else{
return apply_filters( 'woocommerce_short_description', $product->get_attribute( 'Profil aromatique' ) );
}
}
add_shortcode( 'display_profil_description', 'display_profil_description' );
我想使用它 [display_profil_description] 并根据我展示的产品即时找到 ID。我这样显示:
.woocommerce .et_overlay:before {
left: 0;
margin-left: 0;
margin-top:-50px !important;
content: '[display_profil_description]';
/*** YOUR TEXT ***/
font-family: 'Source Sans Pro', Arial !important;
/*** YOUR CHOSEN FONT FAMILY ***/
font-size: 20px;
color: #fff;
/*** COLOR OF YOUR TEXT ***/
text-align: center;
width: 100%;
padding: 5px 0;
}
但它不适用于这个短代码(它适用于 id)......我的页面显示非常糟糕(只有菜单!不是内容,好像它在一切加载之前崩溃了),控制台中没有错误消息和响应 200,没有错误...
你可以帮帮我吗?经过7个小时的搜索,我擦干了...
太感谢了
伊娃
PS:我使用 Divi