好的,下面的代码可行。我已经为Rotten Tomatoes的分数创建了一个自定义字段,我可以添加到我的Blu-Ray评论中。根据其得分(60以上将获得“新鲜”评级,低于“烂”),它将显示适当的图像。
这很好用。
但是......它也显示在每一页上;即使那些尚未分配的分数。
<?php
global $wp_query;
$postid = $wp_query->post->ID;
$result = ( get_post_meta($postid, 'ecpt_tomatometer', true));
if ($result >= 60) {
echo '<img src="/images/misc/fresh.png" width="102" height="25"> <span class=tomatometer>' . get_post_meta($postid, 'ecpt_tomatometer', true) . '%</span><br />';
}
else {
echo '<img src="/images/misc/rotten.png" width="102" height="25"> <span class=tomatometer>' . get_post_meta($postid, 'ecpt_tomatometer', true) . '%</span><br />';
}
?>
现在下面是另一段有效的代码片段,但我似乎无法将两者交织在一起。这(下面)基本上说“如果自定义字段中有东西,则显示代码(上图),否则不显示任何内容。”
所以我已经得到了我想要工作的两部分,但我似乎无法让它们一起工作。
<?php
global $wp_query;
$postid = $wp_query->post->ID;
if( get_post_meta($postid, 'tomatometer', true))
{ ?>
This won't show up if there's nothing in the field.
<?php }
elseif( get_post_meta($postid, 'ecpt_tomatometer', true)) {
?>
this will display all of the information I need it to.
<?php } ?>
想法?
答案 0 :(得分:1)
仅当结果具有值时才进行结果比较(假设为null或假,如果没有评级)。
global $wp_query;
$postid = $wp_query->post->ID;
if($result = get_post_meta($postid, 'ecpt_tomatometer', true)){
if ($result >= 60) {
echo '<img src="/images/misc/fresh.png" width="102" height="25"> <span class=tomatometer>' . get_post_meta($postid, 'ecpt_tomatometer', true) . '%</span><br />';
}
else {
echo '<img src="/images/misc/rotten.png" width="102" height="25"> <span class=tomatometer>' . get_post_meta($postid, 'ecpt_tomatometer', true) . '%</span><br />';
}
}
答案 1 :(得分:0)
不确定$ result的可能值,但我会尝试类似:
<?php
global $wp_query;
$postid = $wp_query->post->ID;
$result = ( get_post_meta($postid, 'ecpt_tomatometer', true));
if (!($result===false) && intval($result) > 0)
{
if ($result >= 60) {
echo '<img src="/images/misc/fresh.png" width="102" height="25"> <span class=tomatometer>' . get_post_meta($postid, 'ecpt_tomatometer', true) . '%</span><br />';
}
else {
echo '<img src="/images/misc/rotten.png" width="102" height="25"> <span class=tomatometer>' . get_post_meta($postid, 'ecpt_tomatometer', true) . '%</span><br />';
}
}
?>
这应该有用。