如何仅为特定用户角色创建作者档案并显示相关CPT

时间:2015-05-12 作者:Mayeenul Islam

场景

我做了一个CPT,我要stakeholder\'s ID as a custom field. 所有的stakeholders are 实际上是WordPress\'Registered User 具有不同的角色stakeholders - 因为在某个时候,我需要他们登录发布自己的内容。因此,实际上我正在做的是,获取用户ID并将其作为自定义字段传递给该CPT。

现在,我需要创建一个自定义的作者存档,只针对该角色,在那里我可以根据自定义字段匹配该CPT的所有帖子。

我所做的实际上没有做到。因此,我制作了一个自定义页面模板:在该模板中,我查询了具有该角色的所有用户stakeholders. 它们现在可见。但现在,我很难将与ID链接的帖子显示为自定义字段。

除此之外,我还将我的路线改为另一种方式,使用特定的用户激活他们的作者档案发布到CPT中。因此,作为管理员,我尝试以其他用户的身份发布帖子,但除了管理员之外,在下拉菜单中没有其他用户可见。因此,当我登录时,我无法为帖子选择其他用户:(
author dropdown menu

我能想象的是什么,或者can do 是:在我的页面模板上,单击将ID传递到URL,抓取它并在同一页面模板上显示特定于该ID的帖子。但参数如下?id=# 对SEO不友好,我需要重写URL-但我从未尝试过,所以有点害怕。

问题

做这种把戏的正确方法是什么?

1 个回复
SO网友:Kalimah

您可以使用用户ID显示用户帖子。这段代码可能会提供一个关于如何执行的快速示例(我尚未测试代码)。

$user_id = $_GET[\'author_id\'];
//The Query
query_posts("author={$user_id}");

//The Loop
if ( have_posts() ) : while ( have_posts() ) : the_post();
     the_title();
echo "<br>";
     endwhile;

else:
      echo "No Posts!";
endif;

//Reset Query
wp_reset_query();
至于SEO部分,您可以使用许多提供此功能的WordPress插件。Yoast SEO 是一个很好的插件。

结束

相关推荐

Query posts distinct authors

我试图从一个随机排序的类别中获取帖子,但要确保作者不会重复自己。因此,我提出了这个问题,它按预期工作,但作者有可能会在这4篇文章中重复。那么,有没有办法确保它不会发生?我曾考虑使用$wpdb,但我希望有一个更直接的解决方案。$args = array ( \'post_type\' => \'post\', \'post_status\' => \'publish\', \'category_name\'