我想插入一个php代码,但放置时出错
主题生成的短代码
[col_grid span="4" span__sm="14" height="1-2" visibility="show-for-medium"]
[ux_banner height="500px" bg="***[banner-picture]***" bg_size="original"]
[text_box width="100" scale="148" position_x="50" position_y="100" bg="rgb(88, 32, 123)"]
[ux_text text_color="rgb(247, 128, 44)" class="uppercase"]
<p><strong>preencha a proposta de adesão</strong></p>
[/ux_text]
[/text_box]
[/ux_banner]
[/col_grid]
我的PHP代码
add_action('foto_banner', 10 );
function foto_banner() { ?>
<?php if(get_field('foto_banner')) { ?>
<?php the_field('foto_banner'); ?>
<?php }else{
echo "Texto não informado";
}
}
add_shortcode( 'banner-picture', 'foto_banner');
3条答案
按热度按时间ee7vknir1#
你可以这样写你的短代码:
确保在
get_field()
第二个参数或option
中添加当前页面ID(如果您从主题选项页面获取)。62o28rlo2#
你不能把PHP函数放在你的短代码中。
但是,您不需要这样做。你可以使用foreach-loop来创建html并将其存储在一个变量中,例如$shortcodehtml。
所以之后你可以打电话
更好的方法是在shortcode函数内部创建输出-从我的Angular 来看,没有必要将整个html传递给shortcode -但这应该可以正常工作。
osh3o9ms3#
你需要创建一个输出缓冲区