ขอบคุณสำหรับข้อมูลที่ยอดเยี่ยมชิ้นนี้
ฉันต้องการขยายสิ่งที่อีกสองเขียนไว้แล้ว ... เพื่อให้การตรวจสอบนี้คุณต้องมีเนมสเปซที่กำหนดเอง นี่คือวิธีที่คุณทำ:
/* IN ORDER TO VALIDATE you must add namespace */
add_action('rss2_ns', 'my_rss2_ns');
function my_rss2_ns(){
echo 'xmlns:mycustomfields="'. get_bloginfo('wpurl').'"'."\n";
}
จากนั้นนำหน้ารายการชื่อฟิลด์ด้วยเนมสเปซที่กำหนดเองในตัวอย่างนี้ฉันใช้ "mycustomfields" ดูด้านล่าง:
/* add elements */
add_action('rss2_item', 'yoursite_rss2_item');
function yoursite_rss2_item() {
if (get_post_type()=='my_custom_post_type') {
$fields = array( 'field1', 'field2', 'field3' );
$post_id = get_the_ID();
foreach($fields as $field)
if ($value = get_post_meta($post_id,$field,true))
echo "<mycustomfields:{$field}>{$value}</mycustomfields:{$field}>\n";
}
}
ในหมายเหตุด้านคุณสามารถใช้การกระทำเพื่อขอเข้า 3 ใด ๆ
rss2_ns : to add a specific namespace
add_action('rss2_ns', 'my_rss2_ns');
rss2_head : to add tags in the feed header
add_action('rss2_head', 'my_rss2_head');
rss2_item : to add tags in each feed items
add_action('rss2_item', 'my_rss2_item');