我一直在使用添加的函数加载修改后的rss模板。工作正常,但现在我需要为CPT添加一个自定义模板。
我为每一个都编写了代码,可以正常工作,但不能一起使用,因为一个凌驾于另一个之上。
我对php了解不够,无法修改。
这是我正在使用的代码。。。
remove_all_actions( \'do_feed_rss2\' );
add_action( \'do_feed_rss2\', function() {
if ( $rss_template = locate_template( \'/feeds/notes-feed.php\' ) )
load_template( $rss_template );
else
do_feed_rss2(); // Call default function
}, 10, 1 );
以及
remove_all_actions( \'do_feed_rss2\' );
add_action( \'do_feed_rss2\', \'item_feed_rss2\', 10, 1 );
function item_feed_rss2() {
$rss_template = get_template_directory() . \'/feeds/item-feed.php\';
if( get_query_var( \'post_type\' ) == \'item\' and file_exists( $rss_template ) )
load_template( $rss_template );
else
do_feed_rss2(); // Call default function
知道的还不够,我想知道我是否可以用这个。。。
remove_all_actions( \'do_feed_rss2\' );
add_action( \'do_feed_rss2\', \'item_feed_rss2\', 10, 1 );
function item_feed_rss2() {
$rss_template = get_template_directory() . \'/feeds/item-feed.php\';
$rss_template_notes = get_template_directory() . \'/feeds/notes-feed.php\';
if( get_query_var( \'post_type\' ) == \'item\' and file_exists( $rss_template ) )
load_template( $rss_template );
elseif( get_query_var( \'post\' ) and file_exists( $rss_template_notes ) )
load_template( $rss_template_notes );
else
do_feed_rss2(); // Call default function