在functions.php中的WordPress重写规则

时间:2017-05-15 12:53:12

标签: php wordpress .htaccess

我在wordpress的htaccess文件中有以下htacces片段:

RewriteBase /wordpress/wp-content/themes/mytheme/
RewriteRule css/style.min.css$ /minify/minify.php?dir=%{REQUEST_URI}&file=style.css [L]

重定向以下内容:

https://something.com/wordpress/wp-content/themes/mytheme/css/style.min.css

为:

https://something.com/minify/minify.php?dir=/wordpress/wp-content/themes/mytheme/css/&file=style.css

如何使用add_rewrite_rule获得相同的效果?

更新2

所以我想要的是:我的wordpress在文件夹wordpress中,它位于根目录中。但我使用https://something.com/main的wordpress页面,所以我按照wordpress页面上的指南进行操作。我想要的是,我的主题文件夹中有资产文件,如/wordpress/wp-content/themes/mytheme/assets/css/style.css

我想要一个像以下的PHP函数:

<img src="<?php echo myRoute("/wordpress/wp-content/themes/mytheme/assets/css/global_stylesheet_file.css", "/home/assets/css/style.css"); ?>" />

返回html,如https://something.com/main/assets/css/style.css,但为此创建htaccess或路径以访问原始文件

1 个答案:

答案 0 :(得分:0)

听起来你最好的选择就是使用正则表达式来处理这个问题。然后它只是你的htaccess文件中的一行,它将处理你所有的重定向,而无需任何额外的工作。

这样的事可能有用:

RedirectMatch 301 wp-content / themes / mytheme / cs s / style.css assets / $ 1听起来你最好的选择是使用正则表达式来处理这个问题。然后它只是你的htaccess文件中的一行,它将处理你所有的重定向,而无需任何额外的工作。

这样的事情应该有效:

RedirectMatch 301 https://something.com/wordpress/assets/$1 https://something.com/wordpress/wp-content/themes/mytheme/cs‌​s/(.*)

或者,如果你想这样做的话:

SELECT SUM(IF(served < total, 1, 0)) as pending,
       SUM(IF(served = total,1 ,0)) AS success,
       COUNT(*) as total
  FROM push_message_info
 WHERE DATE(submit_date) > '2017-05-14';