删除美元符号和自定义字段之间的空白“;价格”;


Remove white space between dollar sign and custom field "price"

我使用自定义字段来显示价格(美元符号除外)。我的目标是在主题中对美元符号进行编码,但我遇到了一个问题。

我使用这种方法的原因是,如果我在自定义字段中输入美元符号,我将无法使用'orderby' => 'meta_value_num'
我需要使用一个条件语句来显示美元符号,因为并不是所有的帖子都有价格。

以下代码导致

9.75美元/年

注意美元符号和数字"9"之间的空白。如何删除空白?或者有没有其他方法可以使用条件语句对美元符号进行编码?

<?php if( get_post_meta($post->ID, 'price', true) ) { ?>
$
<?php } ?>
<?php echo get_post_meta( get_the_ID(), 'price', true); ?>

删除了代码中的空白,并对其进行了一点优化(不明白为什么你有美元符号的条件,但没有价格本身的条件),这应该有效:

<?php if( get_post_meta($post->ID, 'price', true) ) {
   echo '$', get_post_meta( get_the_ID(), 'price', true);
} ?>

原始代码中的空间来自哪里:

<?php if( get_post_meta($post->ID, 'price', true) ) { ?>
$<!- HERE ->
<?php } ?>   <!- HERE ->
<!- AND HERE ->
<?php echo get_post_meta( get_the_ID(), 'price', true); ?>

请在此处查看想法:http://jsfiddle.net/93mcu7sj/