扩展Wordpress永久链接以创建虚拟页面和文件夹

时间:2011-02-14 14:09:37

标签: wordpress dynamic rewrite permalinks

我试图找到一种方法让Wordpress扩展其永久链接结构与虚拟文件夹,以便它们可以用于加载动态内容(即从数据库),但保持WP头和模板系统,以便我的动态内容可以放在布局中。

示例:http://www.mydomain.com/customfolder/product1/

自定义文件夹 product1 不是Wordpress数据库中存在的网页或类别。 Wordpress通常要求根据所述结构创建它们,如果不是,则返回404错误。

我希望使用 / customfolder / 来扩展伪造/虚拟页面的永久链接。因此,上面的链接会在内部重定向到 products.php?product = $ product1& template = style1 。这样我就可以使用url创建无限数量的页面,从数据库加载动态内容并定义用于该文件夹的模板。

还应该可以设置不同的永久链接文件夹来加载不同的文件,以便 / product / map / 重定向到ie。的 map.php

我已尝试 .htaccess 和内部 WP_rewrite 功能但未成功。我总是得到404错误。我知道可以通过Wordpress做到这一点,我已经看到了一些与我想要做的接近的例子,但到目前为止我还没有提出一个有效的解决方案。这是迄今为止最好的一个: http://www.binarymoon.co.uk/2010/02/creating-wordpress-permalink-structure-custom-content/

感谢任何帮助!

3 个答案:

答案 0 :(得分:1)

@ csixty4我设法制定了一个解决方案,可以做或多或少做我想做的事情。我没有尝试过任何插件来创建虚拟页面。我所做的就像这样设置.htaccess:

RewriteRule ^products/$ /path/mypage.php [L]
RewriteRule ^products/(help|support)[^/]? /path/mypage.php?type=$1 [L]

然后我创建了我需要的文件并调用了WP加载器并定义了不应该加载活动主题以便我可以在我想要的地方输出内容。

<?php
define('WP_USE_THEMES', false);
require("/wp-path/wp-blog-header.php");
get_header();
?>

My custom content goes here

<?php
get_footer();
?>

如果有人有任何改进的想法或建议使其更强大,我会很高兴听到你。

答案 1 :(得分:0)

我是WordPress的Virtual Pages插件的作者。正是出于这个原因,该插件仍处于测试阶段。有些人在他们的网站上安装我的插件,效果很好。其他人安装它并继续在其虚拟路径上获得404。有点奇怪。这是不可预测的。它让我感到沮丧。

我很惊讶听到.htaccess不适合你。

您是否尝试过Simple 301 Redirects插件?这也可能使这样的工作成为可能。

答案 2 :(得分:0)

我推荐Quick Page/Post Redirect Plugin,以及&#34; All In One SEO&#34;结果非常好。

我的配置:Wordpress 4.2.1和插件5.0.6

请查看此有用文档以使用此插件:Best Way To Set Up Redirects In Your WordPress