【发布时间】:2015-07-10 21:49:43
【问题描述】:
我正在为我的 wordpress 网站使用插件 woocommerce,并且需要一个让会员可以查看其订单历史记录的部分。 woocommerce 中是否有任何简码或页面显示会员的订单历史记录?
【问题讨论】:
标签: wordpress plugins woocommerce shortcode
我正在为我的 wordpress 网站使用插件 woocommerce,并且需要一个让会员可以查看其订单历史记录的部分。 woocommerce 中是否有任何简码或页面显示会员的订单历史记录?
【问题讨论】:
标签: wordpress plugins woocommerce shortcode
我的帐户短代码:
[woocommerce_my_account order_count="-1"]
显示“我的帐户”部分,客户可以在其中查看过去的订单并更新他们的信息。您可以指定显示的数量或订单,默认设置为 15(使用 -1 显示所有订单。)
更新
如果您只需要订单,我不知道是否已经有短代码,但我以 woocommerce_my_account 为例:
function shortcode_my_orders( $atts ) {
extract( shortcode_atts( array(
'order_count' => -1
), $atts ) );
ob_start();
wc_get_template( 'myaccount/my-orders.php', array(
'current_user' => get_user_by( 'id', get_current_user_id() ),
'order_count' => $order_count
) );
return ob_get_clean();
}
add_shortcode('my_orders', 'shortcode_my_orders');
将此添加到您的 functions.php 文件中,然后像 [my_orders order_counts=10] 一样使用它(order_counts 是可选的,如果缺少它会列出所有订单)。
【讨论】:
我正在阅读有关 extract 的内容,显然 Wordpress 不再推荐它。 我找到了这个解决方案,希望对您有所帮助:
function shortcode_my_orders( $atts ) {
$args= shortcode_atts(
array(
'order_count' => -1
),
$atts
);
$order_count = esc_attr( $args['order_count'] );
ob_start();
wc_get_template( 'myaccount/my-orders.php', array(
'current_user' => get_user_by( 'id', get_current_user_id() ),
'order_count' => $order_count
) );
return ob_get_clean();
}
【讨论】: