Php WordPress插件-获取无冲突的输出内容
我正在写一个WordPress插件来获取HTML内容 我找到了两种获得最终输出的方法:Php WordPress插件-获取无冲突的输出内容,php,wordpress,plugins,output,Php,Wordpress,Plugins,Output,我正在写一个WordPress插件来获取HTML内容 我找到了两种获得最终输出的方法: // first way function __myplugin_callback($buffer) { return $buffer; } function __myplugin_buffer_start() { ob_start("callback"); } function __myplugin__buffer_end() { ob_end_flush(); } add_action('
// first way
function __myplugin_callback($buffer) {
return $buffer;
}
function __myplugin_buffer_start() { ob_start("callback"); }
function __myplugin__buffer_end() { ob_end_flush(); }
add_action('wp_head', 'buffer_start');
add_action('wp_footer', 'buffer_end');
当我只有我的插件处于活动状态时,当我有更多的插件处于活动状态时,比如SEO Yoast,我的插件和我的插件之间会发生冲突,并且不能正常工作
// second way
ob_start();
add_action('shutdown', function() {
$final = '';
$levels = ob_get_level();
for ($i = 0; $i < $levels; $i++)
{
$final .= ob_get_clean();
}
echo apply_filters('final_output', $final);
}, 0);
// call the filter
add_filter('final_output', function($output)
{
return str_replace(.., .., $output);
});
//第二种方式
ob_start();
添加操作('shutdown',function(){
$final='';
$levels=ob_get_level();
对于($i=0;$i<$levels;$i++)
{
$final.=ob_get_clean();
}
回声应用_过滤器('final_output',$final);
}, 0);
//调用过滤器
添加过滤器('final_output',函数($output)
{
返回str_replace(..,..,$输出);
});
这比第一种方法更好,但我也与VisualComposer之类的插件有冲突
有一种安全的方法可以在不与其他插件冲突的情况下获得最终的html输出?输出缓冲似乎是一种奇怪的方法。除非我遗漏了什么,否则您应该能够使用:
输出缓冲似乎是一种奇怪的方法。除非我遗漏了什么,否则您应该能够使用:
我做了这个,我认为这是获得和更改输出的最好方法,没有插件冲突
function myplugin_output_start()
{
ob_start("myplugin_output_parse");
}
add_action("registered_taxonomy", "myplugin_output_start", 0);
function myplugin_output_parse($output)
{
if(ob_get_level() > 1) {
return $output;
}
// statements...
return $output;
}
我做了这个,我认为这是获得和更改输出的最好方法,没有插件冲突
function myplugin_output_start()
{
ob_start("myplugin_output_parse");
}
add_action("registered_taxonomy", "myplugin_output_start", 0);
function myplugin_output_parse($output)
{
if(ob_get_level() > 1) {
return $output;
}
// statements...
return $output;
}
嘿,谢谢,这没关系,但如果我想更改它?您可以对
$page\u content
变量中存储的内容执行任何操作。我想更改wordpress输出权限,谢谢,这没关系,但如果我想更改它,您可以对$page\u content
变量中存储的内容执行任何操作。我的意思是更改wordpress输出