当前位置: 首页 > 知识库问答 >
问题:

使用自定义帖子类型的标题列表作为ACF字段的值

融泓
2023-03-14

我想在我的Wordpress帖子中添加一个“Post Author”选择选项。我不想在Wordpress中创建30个左右不同的用户,而是想用自定义帖子类型(staff)的所有标题填充一个ACF下拉选择字段。

我发现这段代码用于输出自定义帖子类型标题列表。。。

 // query for your post type
$post_type_query  = new WP_Query(  
array (  
    'post_type'      => 'your-post-type',  
    'posts_per_page' => -1  
)  
);   
// we need the array of posts
$posts_array      = $post_type_query->posts;   
// create a list with needed information
// the key equals the ID, the value is the post_title
$post_title_array = wp_list_pluck( $posts_array, 'post_title', 'ID' );

...我从一篇关于动态填充选择框的ACF文章中找到了这段代码...

function acf_load_color_field_choices( $field ) {

// reset choices
$field['choices'] = array();


// get the textarea value from options page without any formatting
$choices = get_field('my_select_values', 'option', false);


// explode the value so that each line is a new array piece
$choices = explode("\n", $choices);


// remove any unwanted white space
$choices = array_map('trim', $choices);


// loop through array and add to field 'choices'
if( is_array($choices) ) {

    foreach( $choices as $choice ) {

        $field['choices'][ $choice ] = $choice;

    }

}


// return the field
return $field;

}

add_filter('acf/load_field/name=color', 'acf_load_color_field_choices');

...但是,我真的不知道如何将这两个字段拼接在一起,以便它能够获取我的自定义字段标题并将它们添加到ACF字段选择器中。

我试过了,但没有任何结果显示。

有什么想法吗?

共有1个答案

钱元徽
2023-03-14

感谢mmmm的评论,我能够在ACF中使用“关系”字段类型来实现我想要的。。。这是我的代码给任何感兴趣的人

“post author”是ACF字段的名称,该字段设置为relationship,并且自定义的职位类型“staff”是从选项中选择的,因此我可以选择任何员工。然后,它们将以缩略图和职务标题输出到帖子中。。。

<?php

$posts = get_field( 'post-author' );

if ( $posts ): ?>

<?php foreach( $posts as $post): // variable must be called $post (IMPORTANT) ?>
<?php setup_postdata($post); ?>

<div class="author">
<?php the_post_thumbnail('small'); ?>
<div class="author-text">
    <a href="<?php the_permalink(); ?>">
        <?php the_title(); ?>
    </a>
    <p>
        <?php the_field('job_title') ?>
    </p>
</div>
<div class="clearfix"></div>
</div>

<?php endforeach; ?>

<?php wp_reset_postdata(); // IMPORTANT - reset the $post object so the rest of the page works correctly ?>
<?php endif; ?>
 类似资料:
  • 我试图创建另一个类使用从ACF PRO的文本字段的值。 我有一个名为“投资组合”的自定义帖子类型,它有4个类别,ACF字段设置被添加到“分类等于类别”。 当我编辑一个类别时,我填写我想要得到的名称,然后显示如下: 如何从类别中获取ACF字段值? 其他信息:我的页面模板page-portfolio.php,我使用的是ACF中继器。 这是我的代码: 这是该类别ACF字段设置的屏幕截图,希望对您有所帮助

  • 我正在尝试使用自定义字段(ACF)的内容向我的自定义帖子类型添加一个新的管理员列。我想添加的字段是“post object”字段,但它只显示文章标题,而不是ACF中的链接文章。我添加了一个截图。 这是我目前掌握的情况:

  • 我使用ACF,有一个名为“关于”的页面模板,我的“关于我们”页面使用该模板。我还有一个主页模板,它使用我的“主页字段组”中的字段。我的“关于我们”页面显示“关于字段组”中的ACF字段以及我的“主页字段组”中的一些字段。 我从我的主页组通过引用以下php代码的ACF字段得到字段: 来自主页上的主页字段组,段落来自我的关于我们页面介绍字段,来自关于字段组。 我想做一些类似的事情,但从自定义帖子类型(不

  • 我可以使用自定义字段值获取数据吗?我的是,字段名是。那么,如何使用获取所有数据呢? 代码如下: 此代码不起作用。

  • 我正在设置一个endpoint,我想用它来更新自定义帖子类型中的ACF字段。 在这里,我注册了字段endpoint和回调 在邮递员中发送此请求:http://localhost:32851/wp-json/responsify/v1/assign_external_writer?写入器=32272 如果我使用“title=my_new_title”而不是writer,它会正确更新。但是使用 ACF

  • 我有一个自定义的帖子类型和一个像这样创建的公文包分类法: 当我在查询中使用它时,它的工作原理应该是这样的。它显示在后端的菜单中,以及此自定义帖子类型的类别。 我的问题是,当我尝试从某个类别检索所有帖子时(通过单击类别名称),我发现