htaccess的,字preSS和放大器;虚荣网址 [英] .htaccess, Wordpress & vanity URLs

查看:197
本文介绍了htaccess的,字preSS和放大器;虚荣网址的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经浇过每一个堆栈溢出的话题我可以找到htaccess的&放大器;在Word preSS虚荣的网址,但我完全被卡住,为什么我的不能正常工作。我是一个完整的小白与htaccess的,所以我敢肯定,有很多事情要做吧。

我试图格式化所有的URL指向/经销商/代理商 - 信息/用户名相同的字preSS页(编号112 - 又名经销商 - 信息)的用户名作为参数。

的个性化网址code增加是之后#vanity网址

例如,传递:URL.com/dealers/dealers-info/watergallery其中watergallery是用户名,将显示一个基本的404:

未找到

所请求的网址/经销商/代理商 - 信息/ watergallery在此服务器上找到。

任何了解大大AP preciated - 在此先感谢您的帮助

 选项+了FollowSymLinks
RewriteEngine叙述上
的RewriteBase /
重写规则^指数\ .PHP $  -  [L]

#添加斜线到/可湿性粉剂管理员

重写规则^([_ 0-9A-ZA-Z  - ] + /)?WP-ADMIN $ $ 1WP管理员/ [R = 301,L]

重写规则^ uvmax /博客/ $ /博客[R = 301,L]
重写规则^经销商发现者/ $ /经销商[R = 301,L]
重写规则^ sterilight /博客/ $ /博客[R = 301,L]

#虚荣网址
重写规则^ /经销商/代理商 - 信息/(.*)$的index.php P = 112安培;用户名= $ 1 [L]

的RewriteCond%{} REQUEST_FILENAME -f [OR]
的RewriteCond%{} REQUEST_FILENAME -d

重写规则^  -  [L]
重写规则^([_ 0-9A-ZA-Z  - ] + /)?(WP-(内容|管理|包含)。*)$ 2 [L]
重写规则^([_ 0-9A-ZA-Z  - ] + /)?(。* \ PHP)$ $ 2 [L]
重写规则。的index.php [L]
 

解决方案

谢谢大家的帮助和建议!

原来,WP内置的重写规则函数使用有什么需要(至少据我可以告诉)。

该解决方案为我工作,感谢同事(詹姆斯)谁发现了这些WP codeX例子!

HTTP://$c$cx.word$p$pss。组织/ Rewrite_API / add_rewrite_tag HTTP://$c$cx.word$p$pss.org/Rewrite_API / add_rewrite_rule

  add_action('init'的,'dealerRewrite');

 功能dealerRewrite(){
    add_rewrite_tag(%USERNAME%,([^&功放;] +));
    add_rewrite_rule('^dealers/dealers-info/([^/]*)/?','index.php?page_id=112&username=$matches[1]','top');
 }
 

I've been pouring over every Stack Overflow topic I can find on htaccess & vanity urls within Wordpress, but I'm completely stuck as to why mine isn't working. I'm a complete noob with htaccess, so I'm sure that has a lot to do with it.

I am trying to format all urls pointing to /dealers/dealers-info/username to the same wordpress page (id 112 - aka 'dealers-info') with the username as a parameter.

The vanity url code added is right after #vanity urls

For example, passing: URL.com/dealers/dealers-info/watergallery where 'watergallery' is the username, displays a basic 404:

Not Found

The requested URL /dealers/dealers-info/watergallery was not found on this server.

Any insight is greatly appreciated - thanks in advance for your help!

[EDIT - removed leading / and moved the rule - now seeing a WP 404 page]

Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin

RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteRule ^uvmax/blog/$ /blog [R=301,L]
RewriteRule ^dealer-finder/$ /dealers [R=301,L]
RewriteRule ^sterilight/blog/$ /blog [R=301,L]

# vanity urls
RewriteRule ^/dealers/dealers-info/(.*)$ index.php?p=112&username=$1 [L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d

RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

解决方案

Thanks everyone for your help and suggestions!

It turns out that WP's built-in RewriteRule functions are what need to be used (at least as far as I can tell).

This solution worked for me, thanks to a coworker (James) who discovered these WP Codex examples!:

http://codex.wordpress.org/Rewrite_API/add_rewrite_tag http://codex.wordpress.org/Rewrite_API/add_rewrite_rule

 add_action('init', 'dealerRewrite');

 function dealerRewrite(){
    add_rewrite_tag('%username%','([^&]+)');
    add_rewrite_rule('^dealers/dealers-info/([^/]*)/?','index.php?page_id=112&username=$matches[1]','top');
 }

这篇关于htaccess的,字preSS和放大器;虚荣网址的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆