web-dev-qa-db-ja.com

メンバーループにシリアル化されていないプロフィールフィールドを追加する

私はチェックボックスとドロップダウンを使ってメンバーディレクトリループにプロフィールフィールドを表示しようとしています。

例:ディレクトリ内の各メンバーの横に、選択した性別を表示したい

このコードはテキストフィールドに対して機能します。

echo xprofile_get_field_data('Full Name', bp_get_member_user_id());

しかしドロップダウンやチェックボックスのプロファイルフィールドをエコーするにはどうすればよいですか(シリアル化されていないデータ)

1
Androliyah

Xprofile_get_field_dataはデータのシリアル化を解除していると思いますが、それでも配列に入っています。

xprofile_get_field_dataは、配列またはコンマ区切りの文字列を返すことができます。

xprofile_get_field_data( $field, $user_id = 0, $multi_format = 'array' )

@param string $ multi_format

  • 配列データはどのように返されるべきですか?
  • カンマ区切りの文字列が必要な場合は 'comma'
  • 配列が必要な場合は 'array'
2
shanebp

うまくいった。プロファイルフィールドをメンバーループ内のプロファイルループで囲むと、データはプロファイルループ内と同じように正しく出力されます。

<?php while ( bp_members() ) : bp_the_member(); ?>
<?php bp_member_profile_data( 'field=Gender' );?>
<?php endwhile; ?>
0
Androliyah

新しいプラグイン「Buddypress Xprofileカスタムフィールドタイプ」 http://wordpress.org/extend/plugins/buddypress-xprofile-custom-fields-type/ をご覧ください。

0
mirage