我修改了一些代码,但我不是php级别的专家,需要一些帮助:)
<div class="emd-main emd-main-<?php echo $emd_state; ?>">
<?php if ( $userpro->memberlist_in_search_mode($args) ) { ?>
<?php $arr = $userpro_emd->users( $args );
if (isset($arr['users']) && !empty($arr['users']) ) {
?>
<?php if (isset($arr['paginate']) && $args['emd_paginate'] && $args['emd_paginate_top'] == 1) { ?>
<div class="userpro-paginate top"><?php echo $arr['paginate']; ?></div>
<?php } ?>
<div class="emd-list" data-layoutmode="<?php echo $args['emd_layout']; ?>">
<?php foreach($arr['users'] as $user) { $user_id = $user->ID; ?>
<?php $tk_image_1 = get_field('foto_1', 'user_'. $user_id); ?>
<?php if (!empty($tk_image_1)) { ?>
<div class="emd-user">
我有以下问题;我有一个显示成员网格的页面。每页的成员数为20(在插件设置中设置)。 foreach从这开始:
<?php foreach($arr['users'] as $user) { $user_id = $user->ID; ?>
之后我检查值$ tk_image_1是否为空,如果不为空,则继续。到目前为止一切都很好。
现在唯一的事情是;当我在一个页面上有20个成员时,其中8个$ tk_image_1是空的,那么它在该页面上显示12个成员...我认为在检查$ tk_image_1值之前,数组中的某些内容会对它们进行计数。
需要的是每页显示20个成员,如果$ tk_image_1不为空,则只显示一个成员。
有人可以帮我这个吗?
非常感谢!
此致 罗伯特
答案 0 :(得分:-1)
问题的根源在于您正在使用包含您不想展示的用户的一组结果。要正确更正此问题,您需要更改此代码片段中发生的查询:$userpro_emd->users( $args )
->users()
方法可以接受额外的$args
,只允许您说出&#34;只有foto_1
&#34; 的用户。这样你就不会试图在循环中执行魔法,然后留下没有足够的其他人来弥补失踪者foto_1
的问题。