Wordpress插件:如何添加自定义SEO友好URL句柄

时间:2012-12-13 00:11:20

标签: wordpress wordpress-plugin permalinks custom-url

我想知道是否可以使用插件中的永久链接设置而不是使用默认的非永久链接网址。

例如我正在使用可从此处http://wordpress.org/extend/plugins/flickr-photostream下载的插件flickr照片流,它由其他人编写,但我想了解我自己的插件并修补此插件以创建更好的永久链接http://www.domain.co.uk/?flickrps=2在页面之间前进和后退。

有人向我建议这个网址,我试图尝试将其修补到上面的插件中,但没有任何运气来实现我的目标。

Wordpress插件:如何添加自定义网址句柄

我设法通过谷歌找到了这个,并且看起来相当容易,但我没有得到我期待的结果。 http://gabrielharper.com/blog/2012/09/wordpress-custom-urls-for-plugins/

而不是http://www.domain.co.uk/?flickrps=2我希望网址与http://www.domain.co.uk/page/2类似。

我想遗憾地使用上面的链接不起作用并给出错误404,但是带有问号的链接却起作用,但我不想使用这些链接。

我知道这是由WordPress拍摄的,但就在这样的事情之后,也许照片会更好。

add_action('parse_request', 'addFlickrPhotostreamURL');
function addFlickrPhotostreamURL() {
    global $flickrpsp;

    // Manually parse the URL request
    if (!empty($_SERVER['REQUEST_URI'])) {
        $urlvars = explode('/', $_SERVER['REQUEST_URI']);
    }

    // Check for querystring variables
    if ((!empty($urlvars[1])) && (!empty($urlvars[2]))) {
        $_REQUEST['page'] = $urlvars[1];
        $_REQUEST['flickrpsp'] = $urlvars[2];

        $flickrpsp = $urlvars[2];
    }

    // ... handle multiple types of URL by checking $urlvars[1] here
}

您可以在此处查看整个文件的代码http://pastebin.com/cPhzrJBF

1 个答案:

答案 0 :(得分:1)

您可以通过在.htaccess文件中创建规则轻松实现此目的。例如,要将网址http://www.domain.co.uk/?flickrps=2重定向到http://www.domain.co.uk/page/2,可以使用以下规则:

RewriteEngine on
RewriteRule ^page/([0-9]+)/$ ?flickrps=$1

参考:htaccess url rewrite

相关问题