如何在 WordPress 中删除作者库

2023-11-23

WordPress 中的标准作者链接如下所示:example.com/author/johnsmith

我想删除author/URL 的一部分,因此用户名位于根目录中。例如:example.com/johnsmith

我控制网站上的页面创建,因此页面和作者姓名不会发生冲突。

到目前为止,我已经尝试过以下解决方案WP 片段但这似乎不再有效:

add_filter('author_rewrite_rules', 'no_author_base_rewrite_rules');
function no_author_base_rewrite_rules($author_rewrite) {
    global $wpdb;
    $author_rewrite = array();
    $authors = $wpdb->get_results("SELECT user_nicename AS nicename from $wpdb->users");   
    foreach($authors as $author) {
        $author_rewrite["({$author->nicename})/page/?([0-9]+)/?$"] = 'index.php?author_name=$matches[1]&paged=$matches[2]';
        $author_rewrite["({$author->nicename})/?$"] = 'index.php?author_name=$matches[1]';
    }  
    return $author_rewrite;
}


add_filter('author_link', 'no_author_base', 1000, 2);
function no_author_base($link, $author_id) {
    $link_base = trailingslashit(get_option('home'));
    $link = preg_replace("|^{$link_base}author/|", '', $link);
    return $link_base . $link;
}

有谁知道这个问题是否有可行的解决方案?


我已经测试了这个组合解决方案,但在重新生成永久链接之前不起作用。您可以做到这一点,正如 brasfolio 所描述的那样:只需单击仪表板中的永久链接页面上的“保存”即可。

add_filter('author_rewrite_rules', 'no_author_base_rewrite_rules');
function no_author_base_rewrite_rules($author_rewrite) {
   global $wpdb;
   $author_rewrite = array();
   $authors = $wpdb->get_results("SELECT user_nicename AS nicename from $wpdb->users");   
   foreach($authors as $author) {
       $author_rewrite["({$author->nicename})/page/?([0-9]+)/?$"] = 'index.php?author_name=$matches[1]&paged=$matches[2]';
       $author_rewrite["({$author->nicename})/?$"] = 'index.php?author_name=$matches[1]';
   }  
   return $author_rewrite;
}

if( !is_admin() ) {
add_action('init', 'author_rewrite_so_22115103');
}

function author_rewrite_so_22115103() {
   global $wp_rewrite; 
   if( 'author' == $wp_rewrite->author_base ) $wp_rewrite->author_base = null;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 WordPress 中删除作者库 的相关文章

随机推荐

  • CSS 固定容器内的 div

    如何将固定 div 包含在 div container 中 其中固定 div 仅固定在 div container 中 而不是页面的其余部分 这意味着如果我向下滚动页面 在容器 div 之外 固定 div 不会滚动 很难解释 看这个例子 h
  • 由于函数排序导致 JSLint“超出范围”错误?

    JSLint 似乎对函数排序很挑剔 这很好 function a use strict return 1 function b use strict a 虽然这给出了 a is out of scope错误信息 function b use
  • 如何在 Cortex-M3 (STM32) 上从 RAM 执行函数?

    我正在尝试从 Cortex M3 处理器 STM32 上的 RAM 执行函数 该函数会擦除并重写内部闪存 所以我肯定需要在 RAM 中 但我该怎么做呢 我尝试过的是 使用 memcpy 将函数复制到 RAM 中的字节数组 检查它是否正确对齐
  • UNIX 中的管道不应该是单向的吗?

    看一下下面的代码 include
  • 根据属性从 NSArray 创建 NSSet

    一个人如何创建一个NSSet基于属性的数组中的对象 例如对象数组 每个对象都有一个强引用type属性 并且数组中存在每种类型的多次出现 这怎么能变成一个NSSet持有每种类型的单个对象 NSSet distinctSet NSSet set
  • Windows 更新导致 MVC3 和 MVC4 停止工作

    我是唯一一个在 10 月 15 日安装了 Windows Update 8 1 并突然 MVC 由于此警告而停止工作的人吗 警告 1 无法解析此引用 无法找到程序集 System Web Mvc Version 4 0 0 0 Cultur
  • jQuery 访问输入隐藏值

    我怎样才能访问
  • Swift 1.2 无法使用相同的函数名称和不同的参数[重复]

    这个问题在这里已经有答案了 我有两个名称相同但参数不同的函数 第一个接受一个函数作为参数 该函数接受 2 个双精度数并返回 1 第二个接受一个函数作为参数 该函数接受 1 个 double 并返回 1 这在 Swift 1 1 中有效 在
  • Mysql SELECT 里面的 UPDATE

    UPDATE forms SET pos SELECT MIN pos 1 FROM forms WHERE id id 这不起作用 错误消息 You can t specify target table form for update i
  • RSpec 类变量测试

    我正在使用 RSpec 在 gem 中测试类级实例变量 和设置器 我需要测试以下内容 如果从未使用过 setter 则会提供正确的默认值 可以通过设置器成功更新变量 显然这里存在运行顺序问题 如果我使用设置器更改值 我就会忘记默认值是什么
  • 查看不同 Git 分支中的文件而不更改分支

    是否可以在 git 分支中打开文件而不检出该分支 如何 本质上我希望能够打开我的文件github 页面分支 而无需始终切换分支 我不想修改它 只是想查看它 这应该有效 git show branch file Where branch可以是
  • 声明后初始化数组

    为什么声明变量后不能使用数组初始值设定项 例如 int arr arr 1 2 3 4 But int arr 1 2 3 4 是正确的 有没有办法在声明变量后使用数组初始化 这就是你可以做的 int arr arr new int 1 2
  • 检查Javascript是否启用

    有没有办法检查浏览器是否启用或支持Javascript 如果不支持 我想将用户重定向到用户友好的错误页面 我正在使用 jQuery 和 PHP Zend 框架
  • 如何使用 JSP 提供文件服务?

    这听起来可能很愚蠢 但却是现实生活中的一个例子 我能够显示带有 虚拟 链接名称的 HTML 表 像这样的东西 Xyz description a href docId 123 document doc a Xyz description a
  • Web 应用程序的对象存储

    我目前正在开发一个网站 该网站应向用户提供大约 4000 万份文档和图像 我需要关于哪种方法最适合存储符合这些要求的内容的建议 系统应该具有高可用性 可扩展性和耐用性 文件必须永久存储 并且用户应该能够修改它们 由于客户端限制 Amazon
  • gradle-android-scala-plugin 给出“找不到匹配的构造函数”错误

    输入thisAndroid Studio 中的示例代码出现此错误 错误 17 0 找不到匹配的构造函数 org gradle api internal tasks DefaultScalaSourceSet java lang String
  • 在R中使用ggplot2和facet_wrap显示多个轴标签

    我有一个很好的facet wrap密度图 我用它创建的ggplot2 我希望每个面板都有 x 和 y 轴标签 而不是只在左侧有 y 轴标签 在底部有 x 轴标签 我现在拥有的看起来像这样 library ggplot2 myGroups l
  • 减少 Angular 2 文件大小以进行部署

    我是新人 正在尝试 Angular2 我发现 dist 文件夹中的文件非常大 其中有一个由 Angular cli 创建的空项目 这是我采取的步骤 ng 新的我的项目 cd我的项目 ng 构建 prod And all the files
  • Java中聚合和组合的实现差异

    我知道聚合和组合之间的概念差异 有人可以通过例子告诉我它们在Java中的实现差异吗 作品 final class Car private final Engine engine Car EngineSpecs specs engine ne
  • 如何在 WordPress 中删除作者库

    WordPress 中的标准作者链接如下所示 example com author johnsmith 我想删除author URL 的一部分 因此用户名位于根目录中 例如 example com johnsmith 我控制网站上的页面创建