-1

我试图在 jquery 轮播中显示我网站的作者,但由于某种原因,我的图像输出时带有li标签,我不知道为什么。

代码

functions.php

function contributors() {
    global $wpdb;

    $authors = $wpdb->get_results("SELECT ID, user_nicename from $wpdb->users ORDER BY display_name");

    foreach($authors as $author) {
        // display user image for each author
        echo '<li class="author" id="author-'.$author->ID.'">'.userphoto($author->ID).'</li>';
    }
}

模板文件

<?php while ( have_posts() ) : the_post(); ?>

    <div id="authorlist"><ul id="authorcarousel"><?php contributors(); ?></ul></div>

<?php endwhile; // end of the loop. ?>

输出

<div id="authorlist">
    <ul id="authorcarousel">
        <img src="/wordpress/wp-content/uploads/userphoto/1.jpg" alt="admin" width="143" height="150" class="photo" />
        <li class="author" id="author-1"></li>
        <img src="/wordpress/wp-content/uploads/userphoto/3.png" alt="" width="128" height="128" class="photo" />
        <li class="author" id="author-3"></li>
        <img src="/wordpress/wp-content/uploads/userphoto/2.png" alt="" width="128" height="128" class="photo" />
        <li class="author" id="author-2"></li>
    </ul>
</div>

我的目标是在li标签之间输出的图像。

如果有人知道答案,这是一个额外的问题 - 如何编辑查询以便只显示作者而不显示站点管理员?我尝试WHERE在查询中添加一个子句,但它不起作用。

非常感谢任何帮助,因为我是 WordPress n00b。

4

1 回答 1

1

userphoto函数回显图像 HTML,而不是返回它。因此,请尝试以下操作:

foreach($authors as $author) {
    echo '<li class="author" id="author-'.$author->ID.'">';
    userphoto($author->ID);
    echo '</li>';
}
于 2012-07-23T17:06:35.847 回答