bp_register_member_type (字符串member_type美元数组args美元数组()

注册一个概要文件类型。

描述

参数

member_type美元

字符串(必需)配置文件类型的唯一字符串标识符。

args美元

数组(可选)描述概要文件类型的参数数组。

  • “标签”
    (数组)要在界面的各个部分使用的标签数组。
    • “名字”
      (字符串)缺省名称。通常应该是复数形式。
    • “singular_name”
      (字符串)奇异的名字。
  • “has_directory”
    (bool |字符串)概要文件类型是否应该有自己的特定于类型的目录。通过真正的使用member_type美元字符串作为类型的蛞蝓。传递一个字符串来定制代码段。通过禁用。默认值:真的。

默认值:数组()

返回

(对象| WP_Error)profile类型对象,失败时WP_Error对象。

文件:bp-members / bp-members-functions.php

函数bp_register_member_type($member_type, $args = array()) {$bp = buddypress();if (isset($bp->members->types[$member_type]) {return new WP_Error('bp_member_type_exists', __('配置文件类型已经存在。', 'buddyboss'), $member_type);} $r = bp_parse_args($args, array('labels' => array(), 'has_directory' => true,), 'register_member_type');$member_type = sanitize_key($member_type);/** *过滤非法配置文件类型名称列表。* * - 'any'是一个特殊的伪类型,表示与任何配置文件类型不关联的项。* - 'null'是一种特殊的伪类型,表示没有任何类型的用户。* - '_none'在内部用于表示不应该应用于任何配置文件类型的项。* * @since BuddyPress 2.4.0 * * @param array $illegal_names非法名称数组。*/ $illegal_names = apply_filters('bp_member_type_illegal_names', array('any', 'null', '_none')); if ( in_array( $member_type, $illegal_names, true ) ) { return new WP_Error( 'bp_member_type_illegal_name', __( 'You may not register a profile type with this name.', 'buddyboss' ), $member_type ); } // Store the post type name as data in the object (not just as the array key). $r['name'] = $member_type; // Make sure the relevant labels have been filled in. $default_name = isset( $r['labels']['name'] ) ? $r['labels']['name'] : ucfirst( $r['name'] ); $r['labels'] = array_merge( array( 'name' => $default_name, 'singular_name' => $default_name, ), $r['labels'] ); // Directory slug. if ( $r['has_directory'] ) { // A string value is intepreted as the directory slug. Otherwise fall back on profile type. if ( is_string( $r['has_directory'] ) ) { $directory_slug = $r['has_directory']; } else { $directory_slug = $member_type; } // Sanitize for use in URLs. $r['directory_slug'] = sanitize_title( $directory_slug ); $r['has_directory'] = true; } else { $r['directory_slug'] = ''; $r['has_directory'] = false; } $bp->members->types[ $member_type ] = $type = (object) $r; /** * Fires after a profile type is registered. * * @since BuddyPress 2.2.0 * * @param string $member_type profile type identifier. * @param object $type profile type object. */ do_action( 'bp_registered_member_type', $member_type, $type ); return $type; }

更新日志

更新日志
版本 描述
BuddyPress 2.2.0 介绍了。

问题吗?

我们总是很乐意帮助您解决代码或其他问题!搜索我们的开发人员文档联络支持,或与我们联系销售团队