(Wordpress) - PHP 变量,用于显示自定义字段超链接


(Wordpress) - PHP variable to show custom field hyperlink

我有与特定书籍相关的作者,如果有多个作者,我需要用逗号分隔它们。我已经使用 PHP 内爆函数完成了此操作,但我无法让它显示一串作者姓名,超链接(我在正确设置变量时遇到问题)。

这是我最初拥有的代码,它显示了作者姓名,链接到他们各自的页面,但没有逗号分隔(没有内爆)。

<?php if(get_field('author')): ?>
        <?php foreach(get_field('author') as $related): ?>
            <a href="<?php echo get_permalink($related->ID); ?>"><?php echo get_the_title($related->ID) ?></a>&nbsp;
        <?php endforeach; ?>
    <?php endif; ?>

这是我现在拥有的代码,它用逗号分隔有多个值的位置,但不能正确播放作者姓名:

<?php foreach(get_field('author') as $related);
$author = get_post_meta( $post->ID, 'author' ); 
$authorString = implode (',' , $author);
echo $authorString; 
?>

我想我需要编辑"$author = "变量以包含

<a href="<?php echo get_permalink($related->ID); ?>"><?php echo get_the_title($related->ID) ?></a>

位旧代码。任何帮助表示赞赏!

为什么要使用implode?如果计数器大于零,您不能只使用计数器并回显逗号吗?诸如此类:

<?php if(get_field('author')): ?>
    <?php $i = 0; foreach(get_field('author') as $related): ?>
        <?php if($i > 0) { echo ",&nbsp;"; } ?>
        <a href="<?php echo get_permalink($related->ID); ?>"><?php echo get_the_title($related->ID) ?></a>
    <?php ++$i; endforeach;  ?>
<?php endif; ?>

这样你就可以使用你的工作代码了。