Get_Option()过滤和退出递归

时间:2011-05-07 作者:Rarst

get_option() 提供两个筛选器\'pre_option_\'.$option\'option_\'.$option.

然而,大多数时候,我试图利用这些,它通常会爆炸,不值得麻烦-要么我需要检查我的过滤器内的另一个选项,它会触发我的过滤器,它会触发我的过滤器。。。

另一种常见情况是,我需要获取当前正在筛选的选项,但我无法这样做,因为我正在筛选它。

只是好奇——这里有什么实际的逻辑可以遵循吗?我知道我可以调整我的过滤器,但这是我不喜欢的开销,一些人认为删除过滤器不太可靠。。)

对于最近的实际示例,我想筛选posts_per_rss 我的选项,但如果我的选项未设置,请提供WordPress值(我知道建议通过post_limits).

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

通常我把过滤器取下来,然后再加回去;

function _my_custom_option( $option )
{
    remove_filter( \'pre_option_name\', \'_my_custom_option\' );

    // do what you like with $option

    add_filter( \'pre_option_name\', \'_my_custom_option\' );
    return $option;
}
add_filter( \'pre_option_name\', \'_my_custom_option\' );

结束

相关推荐

如何从wp_Options中的多维数组中检索多个值?

我刚刚开始在wp\\U选项中以多维数组存储数据,我需要一些帮助来检索一些数据。。。我的数据位于下面,存储为option\\u name“My\\u category\\u fields”我需要提取一个类别ID字符串,其中my\\u cat\\u hide设置为true。我把我的职能放在这里了。我如何完成它?function get_hidden_cats() { $my_cats = get_option(\'ce4_category_fields\'); //how do