显示前端用户配置文件中的WordPress-ACF值

时间:2014-01-08 10:53:24

标签: php wordpress frontend advanced-custom-fields

我想创建一个包含所有用户个人资料的页面,但我只想在他们的用户个人资料中显示他们在高级自定义字段中定义的图像。

我试着这样做:

<?php if (is_page(9)){ ?>   
<section class="pageContent contentWidth">
<ul class="profilePictures">
<?php
    $blogusers = get_users('orderby=nicename&role=subscriber');
    foreach ($blogusers as $user) {
        echo '<li><div class="image_wrapper"><img class="profile1" src="';
        $user->the_field('profilbild');
        echo '"/></div><img class="profile2 hoverShow" src="';
        $user->the_field('funbild');
        echo '"/><div class="imageOverlay"><p>';
        $user->the_field('nickname');
        echo '</p></div></li>';
    }
?>
</ul>
</section>
<?php } ?>

但我在前端得到的只是:

<section class="pageContent contentWidth">
<ul class="profilePictures">
<li><div class="image_wrapper"><img class="profile1" src="

然后结束。

编辑:错误是:

  

致命错误:调用未定义的方法WP_User :: the_field()   ...... / index.php在第208行

这是

的一行
  

$用户&GT; the_field( 'profilbild');

所以我好像不能从那里调用这个方法。 但是我怎么能这样做呢?

EDIT2: 所以我找到了找不到方法的解决方案错误。我现在只是回应字段的短代码:

echo '<li><div class="image_wrapper"><img class="profile1" src="
[acf field="profilbild"]
"/></div><img class="profile2 hoverShow" src="
[acf field="funbild"]
"/><div class="imageOverlay"><p>
[acf field="nickname"]
</p></div></li>';

但我认为找不到合适的用户却失败了。 ACF不知道要去哪个用户。

对此有什么解决方法?

1 个答案:

答案 0 :(得分:1)

解决方案如下:

$image1 = get_field('profilbild', $user);
$image2 = get_field('funbild', $user);
$name = get_field('nickname', $user);
echo '<li><div class="image_wrapper"><img class="profile1" src="';
echo $image1['url'];
echo '"/></div><img class="profile2 hoverShow" src="';
echo $image2['url'];
echo '"/><div class="imageOverlay"><p>';
echo "$name";
echo '</p></div></li>';

我希望这会有所帮助!