htaccess for nth level category subcategory pagination

时间:2016-02-01 16:15:57

标签: php .htaccess mod-rewrite

对于我的自定义php / mysql博客项目,我正在尝试使用分页编写第n级别/子类别的htaccess规则,以显示特定类别下的帖子。这是我到目前为止所做的:

对于像“http://my-blog.com/category/nature”这样的网址,它在一个页面上显示前5个最近的帖子属于“自然”类别,我使用以下htaccess规则:

RewriteRule ^category/(.*)$ category.php?url=$1 [QSA,L]

为了显示接下来的5个帖子,我的网址变为“http://my-blog.com/category/nature/page/2”,但在这里我被卡住了,不知道什么是正确的规则。我试过以下但是还没有工作:

RewriteRule ^category/page/([0-9]+)/?$ category.php?page=$1 [QSA,L]

此外,由于我的类别和子类别属于第n级。那么我应该在htaccess中使用什么才能使我能够处理诸如

之类的URL

http://my-blog.com/category/nature/mountains/snow

http://my-blog.com/category/nature/mountains/snow/page/2

1 个答案:

答案 0 :(得分:2)

您可以尝试此文件:

RewriteBase /
RewriteRule ^category/(.*)/page/([0-9]+)$ category.php?url=$1&page=$2 [QSA,L]
RewriteRule ^category/(.*)$ category.php?url=$1 [QSA,L]

首先,我们将类别与分页匹配。如果没有分页,我们会匹配第二条规则。