条件标签内的功能

时间:2012-09-03 10:47:13

标签: php wordpress

说我有这样的功能:

add_filter("post_gallery", "fix_my_gallery_wpse43558",10,2);
function fix_my_gallery_wpse43558($output, $attr) {

    // blah, blah, blah

}

基本上,上面的功能允许我使用post_gallery过滤器覆盖内置(AKA默认)WordPress图库模板。

问题是,我想在我的自定义Feed中覆盖默认的WordPress图片库模板,我需要使用if ( is_feed( $feeds = 'custom_feed' ) ) { .... }条件标记。

问题是,在条件标签内操作函数的正确方法是什么?

if ( is_feed( $feeds = 'custom_feed' ) ) {

    add_filter("post_gallery", "fix_my_gallery_wpse43558",10,2);
    function fix_my_gallery_wpse43558($output, $attr) {

        // blah, blah, blah

    }

}

add_filter("post_gallery", "fix_my_gallery_wpse43558",10,2);
function fix_my_gallery_wpse43558($output, $attr) {

    if ( is_feed( $feeds = 'custom_feed' ) ) {

        // blah, blah, blah

    }

}

2 个答案:

答案 0 :(得分:2)

我会选择你的第一个解决方案,因为过滤器功能只需要在你的Feed中执行。

但是没有“正确的方法”,因为两种解决方案都应该有效......

答案 1 :(得分:1)

我会使用第一个。它会更快,因为在不需要时会忽略过滤器。

另外,在第二个例子中,你还需要退出$ output,从速度的角度来看,这又有点浪费。