当前位置: 首页 > 知识库问答 >
问题:

将博客文章作者链接替换为团队成员链接(CPT ACF)

商德泽
2023-03-14

我正在建立一个网站,有“团队成员”部分和“博客”部分。团队成员是自定义帖子类型。

客户要求博客帖子中的作者链接应该指向相关的团队成员页面,而不是WordPress中的默认作者页面(基本上他们根本不希望有默认的作者页面)。

我发现@Damocles提供了这个解决方案——使用“团队成员”自定义帖子类型,而不是博客帖子的作者

基本上,他提出的解决方案很简单,与我最初解决这个问题的想法一模一样:

  1. 创建“发布对象”ACF字段,并将其设置为通过“团队成员”自定义发布类型进行过滤
  2. 将此字段附加到用户帐户
  3. 转到用户配置文件并从下拉菜单中选择正确的团队成员
  4. 然后在函数中使用过滤器。php将自动用关联的团队成员url替换随处可见的作者链接

有道理,但不幸的是,它不想在我的网站上工作。我甚至在ACF字段中使用了与他相同的名称,并在函数中使用了完全相同的代码。php:

add_filter( 'author_link', 'team_author_link', 10, 3 );
function team_author_link( $link, $author_id, $author_nicename ) {

  $team_post_id = get_field('team_post', $author_id);
  // if the team post is set, get the permalink to the team post:
  $team_link = get_permalink($team_post_id);
  $link = ($team_link !== false) ? $team_link : $link;
  return $link;
}

作者链接确实会改变,但是所有作者链接都指向当前打开的博客文章网址,而不是指向相关的团队成员页面。我不知道,也许我的主题是覆盖查询什么的,所以自定义帖子类型的网址不能从博客帖子视图中实现?

有人能帮我实现它吗?我想附加一个团队成员(自定义帖子类型)到WordPress中的用户帐户,并通过functions.php替换作者链接到相关的团队成员页面网址。

共有1个答案

周和志
2023-03-14

这是因为您缺少一个前缀,以告诉ACF它应该查看一个用户….-试试这个

$team\u post\u id=get\u字段('team\u post','user\u'。$author\u id)

文件如下:https://www.advancedcustomfields.com/resources/how-to-get-values-from-a-user/

 类似资料:
  • 为了搜索引擎优化的目的。。。。客户希望作者链接指向团队成员的个人主页,而不是默认的作者主页。。。。例如: 有一篇由用户a撰写的博客文章。作者链接现在指向: 但他们希望它指向 “我们的团队”是一个自定义帖子类型,用户a是其中的一个帖子。 我尝试了一些变通解决方案,但没有找到一个好的方法来建立作者和团队成员之间的关系。如果我能在选择作者时从自定义帖子类型中添加团队成员...这将解决我的问题,尽管我认为

  • 我刚反应过来。Im正在尝试将包含链接的数组转换成将在网站中按顺序显示链接的东西。 类似这样的事情: 在服务器中显示的内容如下所示: 我试着做我找到的下面的代码,但是它失败了:

  • 问题内容: 我目前在一个博客上工作,我想以以下形式创建指向我的个人文章的链接: 但是我不知道如何实现这一目标。 我找到了可以给我URI的东西。 然后,我将继续提取所需的部分并针对数据库进行请求。这似乎是一个非常非常愚蠢的问题,但是我不知道如何在Google上查找该问题(我尝试过…),但是我将如何处理该链接呢? 我尝试逐步解释它: 用户单击文章标题->页面将重新加载新的uri->我应该在哪里处理这个

  • 问题内容: 不过,这是一个设计:例如,我放置了一个链接,例如 http://example.com 在 textarea中 。我如何获取PHP以检测它是一个链接,然后将其打印为 我记得以前做过这样的事情,但这并不是傻瓜式的证明,它会因为复杂的链接而中断。 修复它 这只是一个经过深思熟虑的.. stackoverflow也可能会使用它:D 有任何想法吗 问题答案: 让我们看一下需求。您有一些用户提供

  • 我很难在我的单链表程序中完成最后这些功能: 我不太知道如何做这些。这是我的密码 ##################################################################################### StringLinkedList。H 字符串单链表类StringLinkedList{Private://指向列表头部的指针StringNode*h

  • 本文向大家介绍Laravel 代客链接,包括了Laravel 代客链接的使用技巧和注意事项,需要的朋友参考一下 示例 该命令将显示您创建的所有已注册的代客链接及其在计算机上的相应文件路径。 命令: 样本输出: 注意1:您可以在任何地方运行此命令,而不仅仅是在链接文件夹中。 注意2:列出的网站不带.dev结尾,但您仍将使用site1.dev从浏览器访问应用程序。