将Wordpress Meta Box保存的表单输入添加到Wordpress RSS feed

时间:2018-11-15 14:19:41

标签: wordpress plugins rss

我正在自学如何构建Wordpress插件。我找到了一个很棒的指南来创建Wordpress Meta Box并保存其中的表单输入。

https://themefoundation.com/wordpress-meta-boxes-guide/

我想将输入和保存的表单输入从Wordpress的Post编辑视图中的Meta Box发送到其自身标签中的Wordpress RSS。因此,当用户发布帖子时,Meta Box表单数据将保存,并将保存的输入添加到Wordpress RSS帖子中。

这是保存表单输入的代码:

function prfx_meta_save( $post_id ) {

// Checks save status
$is_autosave = wp_is_post_autosave( $post_id );
$is_revision = wp_is_post_revision( $post_id );
$is_valid_nonce = ( isset( $_POST[ 'prfx_nonce' ] ) && wp_verify_nonce( $_POST[ 'prfx_nonce' ], basename( __FILE__ ) ) ) ? 'true' : 'false';

// Exits script depending on save status
if ( $is_autosave || $is_revision || !$is_valid_nonce ) {
    return;
}

// Checks for input and sanitizes/saves if needed
if( isset( $_POST[ 'meta-text' ] ) ) {
    update_post_meta( $post_id, 'meta-text', sanitize_text_field( $_POST[ 'meta-text' ] ) );
}

}
add_action( 'save_post', 'prfx_meta_save' );

1 个答案:

答案 0 :(得分:0)

我想出了添加到上述教程文章中的代码,这些代码有关创建保存值的Meta Box。此代码将post meta放入RSS中的自己的标签中。我在以下代码中添加了元数据“元文本”,以使用本教程。

add_action('rss2_item', 'add_my_custom_field_node');

function add_my_custom_field_node() {
global $post;
$metaValue = get_post_meta($post->ID, 'meta-text', true);
if(!empty($metaValue)):
echo("<my-custom-field>{$metaValue}</my-custom-field>");
endif;
}