填写您的邮件地址,订阅我们的精彩内容:

WordPress中短代码失效,shortcode失效的解决办法

在wordpress中我们偶尔会使用短代码,形如来代替插入音乐。但是在一些特殊的主题中,我们偶尔会发现,短代码失效了,没有显示为我们想要的音乐播放器,却只显示为原本的字符串。这个时候,你可能需要对主题进行一些简单的处理来实现这个打印效果。

在以前的代码中,我们仅仅使用add_shortcode函数来把短代码注册到wordpress中,在文章页使用the_content来显示文章内容,这样短代码就能显示成为我们想要的效果。但是,正如前文所述,这种方法失效了,用the_content来使短代码生效的愿望破灭,不过我们可以对此进行修改,以此再让它生效。用下面的代码替换你原来主题中的the_content();

$content = apply_filters( 'the_content',get_the_content());
echo do_shortcode( $content );

这段代码即可让短代码生效,原理也很简单,先通过apply_filter让文章的内容格式化,这个效果跟the_content的效果基本相同,只不过以字符串的形式返还,再通过do_shortcode使得$content中的短代码也生效,这样就可以实现我们想要的效果。

下面我简单说几句