wordpress 自定义_如何为WordPress用户注册自定义分类法

本文介绍了如何在WordPress中为用户注册自定义分类法,以实现类似于为帖子分配分类的功能。通过User Taxonomies插件和自定义代码,可以创建用户分类并用于组织和查询用户,例如按照职业或职位划分。
摘要由CSDN通过智能技术生成

自WordPress 2.9起引入了自定义分类功能。 它允许您为帖子,页面以及自定义帖子类型创建自定义组。

假设您正在建立一个图书目录网站,并且已经创建了一个自定义帖子类型来发布图书 。 通过使用自定义分类法,您可以为其创建一个自定义分类法,称为Genre 。 在此流派分类法中,您可以创建许多项目(在技术上称为术语 ),例如小说,儿童或传记,以对书籍进行分组。

不幸的是,目前, 我们无法向用户注册自定义分类法 ; 至少不像我们在其他帖子类型中注册时那样简单明了。 我们可以从这个想法中预见到一个完美的应用程序,那就是我们可以使用它来分配其他用户属性 ,例如他们的职业专业组织职位 ,而不是注册一组新的用户角色 。 这也提供了根据分配的分类术语查询用户的可能性。

如果这个想法可以使您的网站受益,请查看此技巧。

入门

首先,我们将安装名为User Taxonomies的插件以简化我们的工作。

插件激活后。 转到GenerateWP 生成分类代码 。 将代码输出放在主题的functions.php文件中。 下面的代码片段是一个示例。 但是,已将其删除以使本文看起来更短。 您可以点击此链接查看完整的代码

if ( ! function_exists( 'user_staff_position' ) ) {
function user_staff_position() {
	register_taxonomy( 'staff_position', 'post', $args );
}
add_action( 'init', 'user_staff_position', 0 );
}

现在,在下面的行中更改Post Type参数:

register_taxonomy( 'staff_position', 'post', $args );

…从postuser ,例如:

register_taxonomy( 'staff_position', 'user', $args );

现在,转到WP-Admin,您应该在“用户”菜单下找到一个新菜单,如下所示。

新用户菜单
分配自定义分类法

导航到新菜单并创建一些术语 。 在此示例中,我们创建了两个项目: CEOManagers

创建用户税

然后转到用户编辑屏幕,并将分类中的一项分配给用户。

用户选择税
查询用户

我们将基于给定的术语(分类法)在主题中显示用户。 但是在继续之前,让我们创建一个新的页面模板。 我们将在此新模板的以下部分中添加代码。

在这种情况下,我们将无法使用get_usersWP_User_Query查询用户; 当您创建新的WP_User_Query类时,它不会输出分配给用户的自定义分类法。 Justin Tadlock 在他的教程中向我们展示了如何使用get_objects_in_term函数。

此函数输出与该术语相关联的对象ID(在我们的情况下, 该对象是用户 )。 要使用它,我们需要两个参数:术语ID和分类名称。 如下所示,您可以在浏览器URL栏上找到术语ID,如下所示。

条款编号

找到ID后,将其放入函数中,就像这样。

$users = get_objects_in_term(3, 'user_position');

您可以使用var_dump()来显示已检索到的对象ID。 就我而言,它返回ID为13

用户对象ID

使用这些ID,我们还可以检索例如用户名和头像。

<ul>
<?php if ( !empty( $users ) ) : ?>
	<?php foreach ( $users as $id ) : ?>
		<li class="user-entry">
			<figure><?php echo get_avatar( get_the_author_meta('email', $id), '40' ); ?></figure>
			<h5 class="user-title"><a href="<?php echo esc_url( get_author_posts_url( $id ) ); ?>"><?php the_author_meta( 'display_name', $id ); ?></a></h5>
		</li>
	<?php endforeach; ?>
<?php endif; ?>
</ul>

…最后是结果。

查询结果

而已。 您可以随意修改以上代码以满足您的要求。


翻译自: https://www.hongkiat.com/blog/wordpress-custom-taxonomy-for-users/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值