我目前正在尝试为 WordPress 中的 url 编写重写规则。原始网址如下所示:
http://localhost/download/d0RqYU8xek9JOXBsQmJrRGpldWF2QT09/?selected_files%5B0%5D=TURUWEdaWWNtS1ZOd2NSY0MybThCQT09&selected_files%5B1%5D=cWhFVEtlOENNM0VwNmlrUlBmOVF1UT09
之后的第一个值/download/是特定文件存储的唯一标识符。之后,我添加了一系列文件。
在 WordPress 中,我现在想为此请求编写一个重写 URL,以便我可以在后端处理它。为此,我需要一个特定的正则表达式来识别请求并返回匹配项以构建我的重写 url:
public function filter_rewrite_rules_array( $rules ): array {
$new_rules['download/([0-9][a-z][A-Z]+)/.......'] = admin_url( 'admin-ajax.php' ) . '?download=$matches[1]&selected_files=$matches[2]';
return array_merge( $rules, $new_rules );
}
关键是我无法完成正则表达式....有人可以帮我解决这个问题吗?即使是第一场比赛也不行。
更新:
我期待这个 URL 结果:
http://localhost/admin-ajax.php?download=d0RqYU8xek9JOXBsQmJrRGpldWF2QT09&selected_files%5B0%5D=TURUWEdaWWNtS1ZOd2NSY0MybThCQT09&selected_files%5B1%5D=cWhFVEtlOENNM0VwNmlrUlBmOVF1UT09
正如我刚才看到的——请求可以有多个文件 ID。所以不知道如何使用正则表达式完成此操作。这可能吗?
慕勒3428872