将ACF字段添加到WordPress REST API中
在WordPress中,Advanced Custom Fields (ACF)是一个非常流行的插件,可以帮助您创建定制的字段和内容类型。为了使这些字段可用于外部应用程序,您需要将它们添加到REST API中。
以下是如何将ACF字段添加到WordPress REST API的代码示例:
首先,在您的主题或插件的functions.php文件中添加以下代码段:
function rest_api_acf_register_fields() { //在这里列出您想要公开的ACF字段 $acf_fields = array('field_name_1', 'field_name_2', 'field_name_3');
foreach( $acf_fields as $acf_field ) { register_rest_field( 'post', $acf_field, array( 'get_callback' => 'rest_api_acf_get_field', 'update_callback' => null, 'schema' => null, ) ); } }
function rest_api_acf_get_field( $object, $field_name, $request ) { return get_field( $field_name, $object['id'] ); }
add_action( 'rest_api_init', 'rest_api_acf_register_fields' );
这将在REST API中注册您指定的ACF字段,以便它们可以在外部应用程序中访问。
现在,您可以使用以下代码获取文章及其ACF字段:
//获得帖子 $posts = get_posts( array( 'numberposts' => 10, 'post_type' => 'post', ) );
//循环所有帖子 foreach( $posts as $post ) {
//获取ACF字段 $acf_field_1 = get_field('field_name_1', $post->ID); $acf_field_2 = get_field('field_name_2', $post->ID); $acf_field_3 = get_field('field_name_3', $post->ID);
//显示文章及其ACF字段 echo '