17713433920 info@mac163.com

该自定义分类,因为WordPress的2.9功能已出台。它允许您为Post,Page和Custom Post Types创建自定义组。

假设您正在构建图书目录网站,并且您已创建用于发布图书的自定义帖子类型。通过使用自定义分类,您可以为其创建一个名为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 );

从… post到user,像这样:

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

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

如何为WordPress用户注册自定义分类
如何为WordPress用户注册自定义分类
分配自定义分类

导航到新菜单并创建一些术语。在本例中,我们创建了两个项目:CEO和Managers。

分配自定义分类
分配自定义分类

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

查询用户

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

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

此函数输出与术语绑定的对象ID(在我们的示例中,对象表示用户)。要使用它,我们需要两个参数:Term ID和Taxonomy名称。您可以在编辑时在浏览器URL栏中找到术语ID,如下所示。

一旦找到了ID,就把它放在函数中,就像这样。

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

您可以使用它var_dump()来显示已检索的对象ID; 在我的例子中,它返回ID为1和的用户3。

使用这些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>

……最后,这是结果。

而已。您可以自由修改上述代码以满足您的要求。


微信二维码

微信扫描二维码联系我们!
我们在微信上24小时期待你的声音
提供外贸路由器设备产品,轻松翻墙,解答:WP主题推荐,WP网站建设,Google SEO,百度SEO,专业服务器环境搭建等!


需要提供WordPress主题/插件的汉化服务可以随时联系我们!另外成品WordPress网站以及半成品WordPress网站建设,海外Google SEO优化托管服务,百度SEO优化托管服务,Centos/Debian服务器WP专用环境搭建,WP缓存服务器搭建,我们都是你的首选,拥有多年WP开源程序服务经验,我们一直在坚持客户体验,没有最好,只有更好!
回到顶部