我如何才能只在短代码内或仅在外部获取内容

时间:2011-06-16 作者:JM at Work

假设我有这样的内容

[xxx]
Here is some content in xxx 
[/xxx]

Here is content outside xxx ...
我能不能就这样

内部内容[xxx] 仅外部内容[xxx] 仅限

1 个回复
最合适的回答,由SO网友:John P Bloch 整理而成

取决于短代码。如果您有权访问短代码的处理程序函数,则该函数的第二个参数是短代码内的内容:

function wpse20136_shortcode( $atts, $content ){
  // $content has the content inside xxx
}

register_shortcode( \'xxx\', \'wpse20136_shortcode\' );
要获取所有非短代码的内容,这很容易。strip_shortcodes() 是否:

strip_shortcodes( get_the_content() );
例如,将为您提供当前帖子的内容,其中仅包含不在短代码内的内容。

结束

相关推荐

Nested Shortcode Detection

如果您熟悉此代码<?php $pattern = get_shortcode_regex(); preg_match(\'/\'.$pattern.\'/s\', $posts[0]->post_content, $matches); if (is_array($matches) && $matches[2] == \'YOURSHORTCODE\') { //shortcode is being used }&#