在 WordPress 的显示中,我使用了该esc_html__()方法来转义字符串并添加变量以便在 HTML 输出中安全使用。
我的代码如下:
<?php
global $product, $post;
$posts_id = $product->get_id();
$reserve_price = get_post_meta($posts_id, '_auction_reserved_price', true);
if ($product->is_reserved() === true && $product->is_reserve_met() === false) : ?>
<p class="reserve hold" data-auction-id="<?php echo esc_attr( $product->get_id() ); ?>">
<?php echo apply_filters('reserve_bid_text', esc_html__('Reserve price has not been met, needed to enter $ %s or more', 'wc_simple_auctions', $reserve_price)); ?>
</p>
<?php endif; ?>
Run Code Online (Sandbox Code Playgroud)
但是我的变量没有输出到最终值,我得到的输出字符串是这样的:
我之前尝试过$reserve_price是一个非空变量,但是 esc_html__() 没有将正确的信息输出到页面。
我不太确定这个原因。
我正在尝试向 WooCommerce Analytics -> 订单提供的表中添加一列,并且该订单的商品名称(不是产品名称)显示在其上。
我添加了一个钩子并尝试提取订单中商品的所有名称(这个钩子是我之前使用过的,它在 WooCommerce -> Orders 表中很有用)
/**
* Adds 'Item Name' column header to 'Orders' page immediately after 'Customer Type' column.
*
* @param string[] $columns
* @return string[] $new_columns
*/
function sv_wc_reps_add_order_item_name_column_header( $columns ) {
$new_columns = array();
foreach ( $columns as $column_name => $column_info ) {
$new_columns[ $column_name ] = $column_info;
if ( 'customer_type' === $column_name ) {
$new_columns['order_item_name'] = __( 'Item Name', 'my-textdomain' );
}
}
return $new_columns;
}
add_filter( 'woocommerce_report_orders_export_columns', 'sv_wc_reps_add_order_item_name_column_header', 20 …Run Code Online (Sandbox Code Playgroud)