如果变量$credit
不为空,我正在尝试使用IF语句。但是,我得到一个解析错误。有人可以帮我解释一下我的语法吗?
$credit = get_field('fl_credit', $image['id']);
return '<div class="kalim"><img title="' .
esc_attr( sprintf( the_title_attribute( 'echo=0' ) ) ) .
'" alt="' . esc_attr( sprintf( the_title_attribute( 'echo=0' ) ) ) .
'" src="' . $image['url'] . '" /><div class="kalca">' .
$image['caption'] . '</div>' .
if($credit) {'<div class="kalcr">Credit:' . $credit . '</div></div>' };
答案 0 :(得分:3)
在不知道错误的情况下,我建议做一个简短的if,所以:
$credit = get_field('fl_credit', $image['id']);
return '<div class="kalim"><img title="' .
esc_attr( sprintf( the_title_attribute( 'echo=0' ) ) ) .
'" alt="' . esc_attr( sprintf( the_title_attribute( 'echo=0' ) ) ) .
'" src="' . $image['url'] . '" /><div class="kalca">' .
$image['caption'] . '</div>' .
(!empty($credit) ? '<div class="kalcr">Credit:' . $credit . '</div></div>': '' ) ;
您可以看到更多here
答案 1 :(得分:0)
检查这是否对您有帮助
<?php
$credit = get_field('fl_credit', $image['id']);
$return_data = '<div class="kalim"><img title="'.esc_attr( sprintf( the_title_attribute( 'echo=0' ) ) ) . '" alt="' . esc_attr( sprintf( the_title_attribute( 'echo=0' ) ) ) . '" src="' . $image['url'] . '" /><div class="kalca">' . $image['caption'] . '</div>';
if(!empty($credit)){
$return_data .= '<div class="kalcr">Credit:' . $credit . '</div>';
}
$return_data .= '</div>';
return $return_data;
?>