WordPress 中的自定义重写规则

2024-02-02

我在内部 WordPress 重写规则方面遇到了麻烦。 我已阅读此主题,但仍然无法得到任何结果:WordPress 插件中的 wp_rewrite https://stackoverflow.com/questions/2210826/need-help-with-wp-rewrite-in-a-wordpress-plugin

我解释一下我的情况:

1)我有一个名为“myplugin_template.php”的page_template,与一个名为“mypage”的wordpress页面关联。

<?php
get_header();
switch ($_GET['action']) {
  case = "show" {
  echo $_GET['say'];
  }
}
get_footer();
?>

2)我需要为此链接创建重写规则:

如果我使用这个网址,所有事情都可以正常工作,但我想达到这个结果:

http://myblog/mypage/say/hello_world/

我真的不想破解我的 .htaccess 文件,但我不知道如何使用内部 WordPress 重写器来做到这一点。


您需要添加自己的重写规则和查询变量 - 将其弹出functions.php;

function my_rewrite_rules($rules)
{
    global $wp_rewrite;

    // the slug of the page to handle these rules
    $my_page = 'mypage';

    // the key is a regular expression
    // the value maps matches into a query string
    $my_rule = array(
        'mypage/(.+)/(.+)/?' => 'index.php?pagename=' . $my_page . '&my_action=$matches[1]&my_show=$matches[2]'
    );

    return array_merge($my_rule, $rules);
}
add_filter('page_rewrite_rules', 'my_rewrite_rules');


function my_query_vars($vars)
{
    // these values should match those in the rewrite rule query string above
    // I recommend using something more unique than 'action' and 'show', as you
    // could collide with other plugins or WordPress core
    $my_vars = array(
        'my_action',
        'my_show'
    );

    return array_merge($my_vars, $vars);
}
add_filter('query_vars', 'my_query_vars');

现在在您的页面模板中,替换$_GET[$var] with get_query_var($var)像这样;

<?php
get_header();
switch (get_query_var('my_action')) {
    case = "show" {
        echo esc_html(get_query_var('my_say')); // escape!
    }
}
get_footer();
?>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WordPress 中的自定义重写规则 的相关文章

  • 如何在 WordPress/WooCommerce 3+ 中向评论表单添加自定义字段

    我正在尝试在产品评论中添加 电话 字段 WooCommerce 3 针对未注册用户 来宾 电话号码只能由管理员在管理面板中看到 电话字段需要填写 Required 我尝试了这段代码 但这不起作用 function true phone nu
  • 如何强制网站的某些部分在 SSL 下浏览?

    我们网站上的某些部分或页面涉及敏感的用户或帐户信息 我想强制用户在 HTTPS 下浏览这些页面 而其他包含公共内容的页面应在 HTTP 下可用 我打算在 IIS 上安装 url Rewrite 模块并编写规则来实现此目的 我不知道如何在 w
  • Woocommerce:当类别仅包含一项时如何直接跳转到产品页面

    我有一个允许显示产品类别的顶部菜单 在本例中 是我正在销售的应用程序的名称 单击此菜单项时 它会显示类别的内容 正如它应该做的那样 但是 由于该类别仅包含一项 因此我想直接跳转到产品页面 而不是显示包含一项的类别页面 这是相关页面的链接 B
  • WordPress - 类别和子类别的嵌套列表

    我正在尝试显示带有嵌套子类别的 WordPress 类别列表 到目前为止 我只能获取父类别列表或不包括父类别的子类别列表 但我无法将两者连接在一起 这是我想要创建的结果 Parent Category 子类别 子类别 Parent Cate
  • 添加产品属性列以在 Woocommerce 中编辑订单页面

    对此的任何帮助都非常感激 到目前为止尝试了很多方法都无济于事 包括这里的建议 将产品简短描述添加到 Woocommerce 管理订单预览 https stackoverflow com questions 49755552 add prod
  • 包含 WordPress 之外的 WordPress 内容

    我正在寻找构建 WordPress 网站的移动版本 并将其大部分内置于静态文件中 但我试图从运行移动网站的外部 PHP 文件内部访问 WordPress 内容 如何在不手动编写 SQL 查询的情况下访问循环或数据库 Edit 为了澄清一下
  • 在 WordPress 中挂钩 AJAX

    我一直在深入研究 Javascript 和 AJAX 的世界 我非常接近 但由于某种原因 我认为我没有正确地连接到 wordpress ajax 函数 我已经仔细阅读了文档和这个 认为 99 都在那里 这个应用程序的作用是有一个项目列表 每
  • 在非 WordPress php 页面之外显示 WordPress 帖子

    我需要在非 WordPress php 页面中显示 WordPress 博客文章 我已经尝试过以下代码
  • WooCommerce |如何删除“缺货”可变价格范围

    我正在开发一个 WooCommerce 网站 该网站包含许多可变产品和用户角色 这些产品和用户角色会动态影响显示的价格 我需要创建一个代码片段 将其添加到我的functions php 文件中 以仅显示库存商品的可变产品价格范围 并根据用户
  • 如何在 WordPress 中按标题获取帖子?

    Wordpress 3 0 我想通过使用将特定帖子的内容放入页面中title帖子的 据我所知 我不能直接使用get post 我可以假设暴力方式可能是什么 但我怀疑还有更优雅的方式吗 get page by title id OBJECT
  • 重定向后 HTML5 CORS 请求在 safari 中失败

    我正在使用 jQuery 制作 CORS 请求来完成 SSO 类型系统 用户登录 WordPress 同时使用钩子也登录 Moodle 我遇到的问题是 在 Safari 中 仅限 safari 7 当初始 POST 请求设置为 mudles
  • 如何在 WordPress 中为用户分配多个角色?

    我知道如何为用户分配单一角色 但是为用户提供多个角色是行不通的 wordpress 是否提供此功能 提前致谢 为了完整起见 这is可能的 theUser new WP User userId theUser gt add role role
  • Wordpress Divi 主题 - 锚链接打开选项卡切换

    我正在尝试获取锚链接以打开特定页面上的选项卡 当我位于选项卡所在的页面上并单击锚链接时 它会正确滚动到选项卡并打开它 但是 如果我位于与选项卡所在的页面不同的页面上 则锚链接只会进入该页面 不会打开选项卡 URL http elkodown
  • 联系表 7 中的占位符 - Wordpress

    我正在为我的客户制作一个网站 但遇到了问题 我使用Contact Form 7在wordpress中制作了一个联系表单 这个插件确实很容易使用 但是当我想使用插件的占位符属性时 它在加载页面时没有显示占位符 这就是我在联系表 7 中设置占位
  • 如何更改 WordPress 的 TinyMCE 默认字体

    我在 SO 上看到这个问题 但所有答案都未能具体说明如何改变这一点 我的意思是这样的 答案说 添加这个 但他们无法告诉我在哪里 我的意思是 哪个文件 并且必须是一名火箭科学家才能弄清楚 有人可以解释一下吗就像我五岁一样 好吧 设为 3 我必
  • (Docker) 如何在 WordPress 容器中使用单独的 Composer 容器安装依赖项?

    Dockerfile FROM wordpress ENV REFRESHED AT 2015 08 12 ADD composer json var www html ADD composer lock var www html inst
  • WordPress 类别链接 get_category_link(id)

    我需要链接到我的 WordPress 网站中的一个类别 下面的代码在某种程度上可以工作 我的问题是它在网址中包含 category 这不是我的永久链接结构的设计方式 有谁知道在它输出的 url 中包含 category 的方法吗 我不明白你
  • 在 WooCommerce 中检查购物车中的多个产品 ID

    我使用以下代码来检查产品 ID 是否在购物车中 如果是 则添加额外的结帐字段 add action woocommerce after order notes conditional checkout field function cond
  • WooCommerce:检查商品是否已在购物车中

    我从中发现了这个很棒的片段website https joebuckle me quickie woocommerce check if item already in cart 以下是检查购物车中是否存在特定产品的函数 function
  • 取消选择所有复选框后,客户端过滤器显示所有项目

    加载时 复选框将取消选中 并显示所有列表项 当选中过滤器时 将显示相关的列表项 我遇到的问题是 当您再次取消选中所有复选框时 我需要显示所有项目而不是隐藏 这是我的小提琴 http jsfiddle net amesy B9Hnu 124

随机推荐

  • CouchDB 与 RDBMS 相比有何优势

    我听说过很多关于couchdb http couchdb apache org 最近 我对它提供的功能感到困惑 很难以严格的优势 劣势形式解释所有差异 我建议你自己尝试一下 CouchDB 您首先会注意到的是 初始使用期间的学习曲线与 RD
  • Jquery UI 可拖动绝对而不是相对?

    我有一个包含一些jquery可拖动对象的div 但是如果在任何时候我从页面中删除其中一个可拖动对象 那么这可以移动其余的它们 因为它们是相对定位的 这是一个展示这一点的小提琴 http jsfiddle net VolatileStorm
  • 如何从全局范围内调用 jquery 函数内的方法?

    我正在寻找一种方法来调用 jquery 函数内的方法 示例 在上面的代码中 我如何调用method 全局范围的方法 function fn test function var method function alert test succe
  • 创建私有远程ivy存储库

    我已经做了很多搜索 但无法将所有部分放在一起 我想在我们的一台服务器上创建一个 ivy 存储库 我想将其锁定 使其成为私有的 然后能够从 Gradle 发布到此存储库 我知道如何使用 Gradle 进行发布 并且我可以使用 Gradle 创
  • npm 命令在 ubuntu 上不起作用

    我在 Ubuntu 14 04 上安装了 node 和 npm 当我尝试使用任何 npm 命令时 出现以下错误 usr local lib node modules npm lib config cmd list js 113 module
  • jQuery UI 的对话框无法在 ASP.NET 上运行

    我有以下测试 ASPX 页面
  • Visual Studio 2019 IntelliTest 与 .NET Core、.NET Standard 的兼容性?

    我正在最新版本的 Visual Studio Enterprise 中评估 Intellitest 据我自己在各个网站上的尝试和研究来看 IntelliTest 似乎只与 NET Framework 兼容 不兼容 NET Standard
  • HBase:复制是如何工作的?

    我目前正在将 HBase 作为数据存储进行评估 但有一个问题没有得到解答 HBase 在许多节点上存储同一对象的许多副本 也称为复制 由于HBase具有所谓的强一致性 相比之下最终一致 它保证每个副本在读取时返回相同的值 据我了解 HBas
  • 如何检查公共MSMQ是否为空

    有没有办法检查公共 MSMQ 是否为空 对于私有 MSMQ 来说很简单 private bool IsQueueEmpty string path bool isQueueEmpty false var myQueue new Messag
  • TFS 2010:服务不可用 503

    我已经尝试解决这个问题大约一周了 我在微软网站上发布了这个问题 但只收到了一条回复 这并没有解决我的问题 以下是我在微软网站上的帖子的组合 我在 Window 7 PC 64 位上安装并配置了 TFS 2010 当我导航到http loca
  • python 中压缩时出现 LEN 错误

    def shufflemode import random combined zip question answer random shuffle combined question answer zip combined 但后来我收到错误
  • 为什么 IQueryables 没有 SingleOrDefaultAsync?

    以下代码无法编译 因为 SingleOrDefaultAsync 不是 GetAppointments 的合适扩展 我只是想知道为什么 public IQueryable
  • Internet Explorer 7/8 和窗口函数是空对象

    在 Internet Explorer 8 中 也适用于 IE7 8 模式下的 IE9 以下代码会发出警报object and undefined而不是预期的function和类似的东西function native code alert
  • Lambda 函数作为基类

    在使用 Lambda 时 我发现了一个我并不完全理解的有趣行为 假设我有一个struct Overload派生自 2 个模板参数 并且有一个using F1 operator clause 现在 如果我从两个函子派生 我只能访问 F1 的运
  • MySQL COUNT() 跨多列

    我已经为这个问题绞尽脑汁有一段时间了 但似乎无法让它发挥作用 我有一个表 其中除了其他标准字段外 还有一些用于同类不同值的字段 例如 INT 每个字段的值都是唯一的 gt 意思是如果它出现在val 1它不会出现在val 2 and val
  • 如何在 PHP 中获取字符串的字节值?

    假设我在 php 中有一个字符串 它打印到一个文本文件中 如下所示 n 9q1F 我如何将其字节码而不是时髦的 ascii 字符获取到我的文本文件中 使用 ord 函数 http ca php net ord http ca php net
  • 如何加速 Jekyll/Octopress 生成?

    我使用 Octopress 作为我的博客引擎 这是完美的 但如果帖子很多 比如400 个帖子 生成的速度就太慢了 那么 有什么办法可以加快 Jekyll Octopress 的生成速度呢 Thanks 显然 如果您只处理一篇文章 则无需等待
  • Android Studio 构建时间与 Gradle 依赖项与 Jar 依赖项

    我正在开发一个使用 4 个外部库的产品 所有这些库都通过外部罐子包含在内 Jar 依赖项的构建时间约为 10 分钟 我用 Gradle 依赖项更改了 Jar 依赖项 然后构建时间达到了 3 5 分钟 之前的依赖关系 10 分钟构建时间 co
  • Swift 中的元组数组

    我有一个功能 func parseJSON3 inputData NSData gt NSArray var tempDict id Int ccomments Int post date String post title String
  • WordPress 中的自定义重写规则

    我在内部 WordPress 重写规则方面遇到了麻烦 我已阅读此主题 但仍然无法得到任何结果 WordPress 插件中的 wp rewrite https stackoverflow com questions 2210826 need