WooCommerce 产品简短描述中的自动文本
Automatic text in short description of WooCommerce products
我正在尝试在 WooCommerce 文章的描述中创建一个自动文本并将 "article only available in the store."
我考虑过将它放在这样的函数中:
add_filter ('woocommerce_short_description', 'in_single_product', 10, 2);
function in_single_product () {
echo '<p> article only available in the store. </ p>';
}
但这取代了产品简短描述中已经写入的文字。如果我没有输入文本,则不会出现任何内容。
是否可以在代码文本 "article only available in the store" 中放置产品的简短描述?
谢谢。
所以你可以这样使用它:
add_filter( 'woocommerce_short_description', 'single_product_short_description', 10, 1 );
function single_product_short_description( $post_excerpt ){
global $product;
$product_id = method_exists( $product, 'get_id' ) ? $product->get_id() : $product->id;
if ( is_single( $product_id ) )
$post_excerpt = '<p class="some-class">' . __( "article only available in the store.", "woocommerce" ) . '</p>';
return $post_excerpt;
}
通常此代码将覆盖单个产品页面中现有的简短描述文本,如果存在此简短描述...
(更新)- 与您的评论相关
如果你想在不覆盖摘录(简短描述)的情况下显示它,你可以这样添加:
add_filter( 'woocommerce_short_description', 'single_product_short_description', 10, 1 );
function single_product_short_description( $post_excerpt ){
global $product;
$product_id = method_exists( $product, 'get_id' ) ? $product->get_id() : $product->id;
if ( is_single( $product_id ) )
$post_excerpt = '<div class="product-message"><p>' . __( "Article only available in the store.", "woocommerce" ) . '</p></div>' . $post_excerpt;
return $post_excerpt;
}
因此您将在简短描述之前和之后(如果存在简短描述)收到您的消息……
您可以在您的活动主题 style.css
文件中设置 class 选择器 .product-message
的目标样式,例如这样:
.product-message {
background-color:#eee;
border: solid 1px #666;
padding: 10px;
}
您需要编写自己的样式规则才能按需获取。
我更新说我找到了解决问题的方法:
我在 "products" 中创建了一个 "shipping class",名称为 "article only available in the store",slug "productshop"。
然后在 (mytheme)/woocommerce/single-product/meta.php 我已经包括:
<?php
$clase=$product->get_shipping_class();
if ($clase=="productshop") {
if (get_locale()=='en_US') {echo 'Product only available in store';}
else {echo 'Producte només disponible a la botiga';}
}?>
那我只需要select将产品的运输方法。
就是这样!
感谢您的回答
我正在尝试在 WooCommerce 文章的描述中创建一个自动文本并将 "article only available in the store."
我考虑过将它放在这样的函数中:
add_filter ('woocommerce_short_description', 'in_single_product', 10, 2);
function in_single_product () {
echo '<p> article only available in the store. </ p>';
}
但这取代了产品简短描述中已经写入的文字。如果我没有输入文本,则不会出现任何内容。
是否可以在代码文本 "article only available in the store" 中放置产品的简短描述?
谢谢。
所以你可以这样使用它:
add_filter( 'woocommerce_short_description', 'single_product_short_description', 10, 1 );
function single_product_short_description( $post_excerpt ){
global $product;
$product_id = method_exists( $product, 'get_id' ) ? $product->get_id() : $product->id;
if ( is_single( $product_id ) )
$post_excerpt = '<p class="some-class">' . __( "article only available in the store.", "woocommerce" ) . '</p>';
return $post_excerpt;
}
通常此代码将覆盖单个产品页面中现有的简短描述文本,如果存在此简短描述...
(更新)- 与您的评论相关
如果你想在不覆盖摘录(简短描述)的情况下显示它,你可以这样添加:
add_filter( 'woocommerce_short_description', 'single_product_short_description', 10, 1 );
function single_product_short_description( $post_excerpt ){
global $product;
$product_id = method_exists( $product, 'get_id' ) ? $product->get_id() : $product->id;
if ( is_single( $product_id ) )
$post_excerpt = '<div class="product-message"><p>' . __( "Article only available in the store.", "woocommerce" ) . '</p></div>' . $post_excerpt;
return $post_excerpt;
}
因此您将在简短描述之前和之后(如果存在简短描述)收到您的消息……
您可以在您的活动主题 style.css
文件中设置 class 选择器 .product-message
的目标样式,例如这样:
.product-message {
background-color:#eee;
border: solid 1px #666;
padding: 10px;
}
您需要编写自己的样式规则才能按需获取。
我更新说我找到了解决问题的方法:
我在 "products" 中创建了一个 "shipping class",名称为 "article only available in the store",slug "productshop"。
然后在 (mytheme)/woocommerce/single-product/meta.php 我已经包括:
<?php
$clase=$product->get_shipping_class();
if ($clase=="productshop") {
if (get_locale()=='en_US') {echo 'Product only available in store';}
else {echo 'Producte només disponible a la botiga';}
}?>
那我只需要select将产品的运输方法。
就是这样!
感谢您的回答