你好,我有一个问题。
如果我从管理员更改了订单的状态,则客户需要在我的订单的myaccount页面上获取上次更改状态的日期。
您对如何实现此目标有任何想法吗?
答案 0 :(得分:0)
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
?>
<p><?php
/* translators: 1: order number 2: order changed date 3: order status */
printf(
__( 'Ihre Bestellung #%1$s vom %4$s ist %3$s.<br> Letzte Statusänderung am %2$s.<br><br>', 'woocommerce' ),
'<mark class="order-number">' . $order->get_order_number() . '</mark>',
'<mark class="order-date">' . wc_format_datetime( $order->get_date_modified() ) . '</mark>',
'<mark class="order-status">' . wc_get_order_status_name( $order->get_status() ) . '</mark>',
'<mark class="order-date">' . wc_format_datetime( $order->get_date_created() ) . '</mark>'
);
?></p>
<?php if ( $notes = $order->get_customer_order_notes() ) : ?>
<h2><?php _e( '<br>Order updates', 'woocommerce' ); ?></h2>
<ol class="woocommerce-OrderUpdates commentlist notes">
<?php foreach ( $notes as $note ) : ?>
<li class="woocommerce-OrderUpdate comment note">
<div class="woocommerce-OrderUpdate-inner comment_container">
<div class="woocommerce-OrderUpdate-text comment-text">
<p class="woocommerce-OrderUpdate-meta meta"><?php echo date_i18n( __( 'l jS \o\f F Y, h:ia', 'woocommerce' ), strtotime( $note->comment_date ) ); ?></p>
<div class="woocommerce-OrderUpdate-description description">
<?php echo wpautop( wptexturize( $note->comment_content ) ); ?>
</div>
<div class="clear"></div>
</div>
<div class="clear"></div>
</div>
</li>
<?php endforeach; ?>
</ol>
<?php endif; ?>
<?php do_action( 'woocommerce_view_order', $order_id ); ?>
我添加了带有get_date_modified的新标记类。
然后它显示了我修改状态的最后日期。 如果所选状态为“ wc-completed”,我只想看到带有日期的文本“ LetzteStatusänderungam%2 $ s”。
所以我需要代码,仅在订单状态为wc-completed时才显示修改状态的文本和日期。
我不知道如何以另一种方式实现它。 我附加了一个屏幕快照,以可视化要创建的内容。Screenshot