如何使用短码显示特定组中的用户名?

时间:2013-01-26 作者:Iurie

数据库中有一个表user_id 和相应的group_id 值,因此每行包含作为组成员的用户ID和相关组ID。The question is: 如何显示特定组中的用户名,以及一些元数据,例如,使用短代码[group_members group_id=1]? 使用下面的函数,我尝试适应它,但没有成功,我可以只显示用户ID或组ID。

add_shortcode( \'group_members\',  \'group_members_shortcode_handler\' );

function group_members_shortcode_handler ( $atts, $content = null ) {    

  global $wpdb;
  $querystr = "SELECT * FROM wp_groups_user_group";
  $users = $wpdb->get_results($querystr, OBJECT);

  foreach ($users as $user) {
    $output .= $user->group_id;
  }

 return $output;
}

1 个回复
最合适的回答,由SO网友:Iurie 整理而成

下面是我自己对这个问题的回答。如有任何建设性意见,我将不胜感激。

add_shortcode( \'group_members\',  \'group_members_shortcode_handler\' );

function group_members_shortcode_handler ( $atts, $content = null ) {    

  global $wpdb;
  $querystr = "SELECT * FROM wp_groups_user_group";
  $users = $wpdb->get_results($querystr, OBJECT);

  $output=\'\';
  foreach ($users as $user) {
    if($user->group_id == $atts[\'group_id\']){
      $firstName = esc_html(get_user_meta($user->user_id, \'first_name\', true));
      $lastName = esc_html(get_user_meta($user->user_id, \'last_name\', true));
      $output .= \'<li>\' . $firstName . \' \' . $lastName . \' - \' . esc_html(get_user_meta($user->user_id, \'teaching_position\', true)) . \'</li>\' . PHP_EOL;
    }
  }

  return $output;
}

结束

相关推荐

Use AJAX in shortcode

我有以下代码来显示随机引用的快捷码。问题:如何使按钮显示新的随机报价?我的意思是,这会点击按钮并显示一个新的报价(当然不会刷新页面)。function random_quote() { // quotes file $array = file(\"/path to txt file\"); // generate a random number between 0 and the total count of $array minus