Wordpress嵌套短代码/插件无法正常工作

时间:2016-04-04 14:03:30

标签: wordpress wordpress-plugin wordpress-theming shortcode

我目前正在使用带有一组短代码的主题。

我想在短代码中包含一个短代码。一个来自名为ShareThis的社交分享插件,另一个是主题的一部分。

然而,当我嵌套短代码时,它只是不起作用。

我也试过了this plug-in,但它也没有用。我想添加的短代码如下。 [st_buttons]我试图嵌套的短代码。

[flip_image animate='flip' delay='' flip_on_appear=''     front_image_link='' back_image_link='' background_color='#f2f2f2' back_text='[st_buttons]' link='' target='']

更新短代码功能

if (!function_exists('flip_image')) {
function flip_image($atts, $content = null) {
extract(shortcode_atts(array("animate" => "", "flip_on_appear" => "",     "delay" =>"", "front_image_link" => "", "back_image_link" => "", "background_color" => "", "back_text" => "", "link" => "", "target" => ""), $atts));
$html = "";  

if($front_image_link != "" && $back_image_link != ""){
    $html .=  '<div class="flip_image_holder '.$animate.' '.$flip_on_appear.'" data-delay="'.$delay.'"><a href="'.$link.'" target="'.$target.'"><div class="flip_image front"><img src="'.$front_image_link.'" alt="'.getImageAltFromURL($front_image_link).'" /></div><div class="flip_image back"><div class="flip_image_text"><div class="flip_image_text_inner"><img src="'.$back_image_link.'" alt="'.getImageAltFromURL($back_image_link).'" /></div></div></div></a></div>';
} else {
    $html .=  '<div class="flip_image_holder '.$animate.' '.$flip_on_appear.'" data-delay="'.$delay.'"><a href="'.$link.'" target="'.$target.'"><div class="flip_image front"><img src="'.$front_image_link.'" alt="'.getImageAltFromURL($front_image_link).'" /></div><div class="flip_image back" style="background-color: '.$background_color.';"><div class="flip_image_text"><div class="flip_image_text_inner"><h4>'.$back_text.'</h4></div></div></div></a></div>';
}

return $html;
 }
 }
 add_shortcode('flip_image', 'flip_image');

1 个答案:

答案 0 :(得分:0)

如果您能够更新该短代码,则需要在引用back_text并添加do_shortcode()函数时进行更改:

<h4>'.do_shortcode($back_text).'</h4>

那应该运行你需要的第二个[st_buttons]短代码函数。