说我有这样的功能:
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
}
}
答案 0 :(得分:2)
我会选择你的第一个解决方案,因为过滤器功能只需要在你的Feed中执行。
但是没有“正确的方法”,因为两种解决方案都应该有效......
答案 1 :(得分:1)
我会使用第一个。它会更快,因为在不需要时会忽略过滤器。
另外,在第二个例子中,你还需要退出$ output,从速度的角度来看,这又有点浪费。