作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以我一直在努力寻找关于这方面的任何信息,但看不到任何明显的做法。我想在产品说明中有一个表格,列出我设置的某些属性。
因此,例如在描述中,我会在标题 A 后跟一些文本和一个具有属性 1、2 和 3 的表格,然后在标题 B 下有一些文本和属性 4、5 和 6。
我认为做到这一点的简单方法是创建一个短代码,所以我尝试过但显然错过了一些重要的东西,因为当我使用它时它根本没有显示任何东西。
add_action( 'woocommerce_single_product_summary', 'show_attribute_group_a', 45 );
add_shortcode( 'show_attributes_a', 'show_attribute_group_a' );
function show_attribute_group_a() {
global $product;
$attribute1 = $product->get_attribute('attribute1');
$attribute2 = $product->get_attribute('attribute2');
?>
<table class="">
<tr class="">
<th class="">Attribute 1</th>
<td class=""><?php echo $attribute1; ?></td>
</tr>
<tr class="">
<th class="">Attribute 2</th>
<td class=""><?php echo $attribute2; ?></td>
</tr>
</table>
<?php
}
那么我在哪里尝试提取我使用过的属性的slug的属性是正确的吗?但是,即使那部分是错误的,我仍然希望看到一张空 table 。显然有一些根本性的错误,我看不出是什么。
最佳答案
构建短代码时,输出永远不会回显而是返回。请尝试以下操作:
// The shortcode
add_shortcode( 'show_attributes_a', 'attribute_group_a_shortcode' );
function attribute_group_a_shortcode() {
global $product;
$attribute1 = $product->get_attribute('attribute1');
$attribute2 = $product->get_attribute('attribute2');
$output_html = ''; // Initializing
if ( ! empty($attribute1) || ! empty($attribute2) ) {
$output_html .= '<table class="">';
if ( ! empty($attribute1) ) {
$output_html .= '<tr class="">
<th class="">' . __("Attribute 1", "woocommerce") . '</th>
<td class="">' . $attribute1 . '</td>
</tr>';
}
if ( ! empty($attribute2) ) {
$output_html .= '<tr class="">
<th class="">' . __("Attribute 2", "woocommerce") . '</th>
<td class="">' . $attribute2 . '</td>
</tr>';
}
$output_html .= '</table>';
}
return $output_html; // Always use "return" in a shortcode, never use "echo"
}
代码位于事件子主题(或事件主题)的 functions.php 文件中。测试和工作。
[show_attributes_a]
在产品描述或简短描述的文本编辑器中,在单个产品页面上显示产品属性的自定义表。
// Display the shortcode output in Single product pages
add_action( 'woocommerce_single_product_summary', 'display_table_attribute_group_a', 45 );
function display_table_attribute_group_a() {
echo do_shortcode('[show_attributes_a]');
}
代码位于事件子主题(或事件主题)的 functions.php 文件中。测试和工作。
关于php - 在 WooCommerce 单个产品中显示产品属性列表的简码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64381691/
我正在使用 Bootstrap 日期时间选择器。我想要 datetimepicker 格式作为短月份名称,例如。 一月。我的代码在下面,它现在显示完整的月份名称为 January。如何让它成为 Jan
注意:这篇博客已经和当前的分页插件完全不一样了,所以建议大家通过上面项目地址查看最新的源码和文档来了解。 以前为Mybatis分页查询发愁过,而且在网上搜过很多相关的文章,最后一个都没采用。在分页
我是一名优秀的程序员,十分优秀!