2015-11-13 46 views
0

我在wordpress中有一个页面,我正在使用名为Bad-Debt-Recovery-in/的slu using。我使用的是自定义的PHP查询页面上的URL的字符串这样如何将PHP字符串变成Wordpress中的slu 012

Bad-Debt-Recovery-in/?zipcode=55555&location=Chambers%20County+AL 

我怎样才能使这个网址到这样

Bad-Debt-Recovery-in/55555/Chambers-County/AL/ 

为重写鼻涕虫?任何帮助,将不胜感激!

更新: 此代码实际上是我使用的。我也简化了它,创建了第三个名为“state”的变量。一个重写是城市,一个是县页:

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^Bad-Debt-Recovery-And-Collection-Agencies-Services-In\/([^\/]+)\/([^\/]+)\/([^\/]+)\/? Bad-Debt-Recovery-And-Collection-Agencies-Services-In/?zipcode=$1&city=$2&state=$3 [QSA,L,NC] 
RewriteRule ^Bad-Debt-Recovery-And-Collection-Agency-Services-In\/([^\/]+)\/([^\/]+)\/([^\/]+)\/? Bad-Debt-Recovery-And-Collection-Agency-Services-In/?countyid=$1&county=$2&state=$3 [QSA,L,NC] 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php 

</IfModule> 

# END WordPress 
+0

添加代码,请 – Firefog

+0

我加入基于“Scriptonomy”的解释我的代码。它仍然没有工作。我可能做错了什么。 –

回答

0

可以使用WP function sanitize_title

用PHP循环即

$url = $_SERVER['REQUEST_URI']; 
foreach($_GET as $g){ 
    $url .= '/'.$g; 
} 
$url = sanitize_title($url); 
+0

这是如何工作的?我在查询页面上使用$ _GET ['zipcode'],但是我会在哪里放置函数代码? –

+0

@PhilM用一个例子更新了我的答案。应该做的伎俩。 – kurt

+0

所以我应该把这个放在我的php代码中,生成url?或者运行查询的下一页? –

0

你所要求的知识结合起来,并试图完成被称为:将请求路径转换为查询字符串。

使用。htaccess RewriteRule指令来修改进入请求

RewriteRule ^Bad-Debt-Recovery-in\/([^\/]+)\/([^\/]+)\/([^\/]+)\/? Bad-Debt-Recovery-in/?a=$1&b=$2&c=$3 [QSA,L,NC] 

([^\/]+)每个捕捉路径元件成变量$1,$2,$3...

?在末端简单地表示最后/是可选的或其他的最后一场比赛可能会失败

\只是为了字面解释而转义'/'

根据需要添加,并在年底捕捉他们在查询

zipcode=$1&location=$2+$3 

修饰符[QSA,L,NC]被称为标志

许多 ([^\/]+)
  • QSA追加查询字符串来重写是否结束任何存在
  • L只是说这是最后一次重写
  • NC表示不区分大小写

这是你的最终解决方案:

RewriteRule ^Bad-Debt-Recovery-in\/([^\/]+)\/([^\/]+)\/([^\/]+)\/? Bad-Debt-Recovery-in/?zipcode=$1&location=$2+$3 [QSA,L,NC] 
+0

谢谢!我会试试这个,我会告诉你它是否适合我。 –

+0

我添加了htaccess解决方案,但它仍然无法正常工作。我是否会将链接显示为这样:Bad-Debt-Recovery-in /?zipcode = 55555&location = Chambers%20County + AL或slug的方式?在其他作品中,它是否会将该网址更改为适当的网址?还是必须输入正确的?我应该冲洗我的规则吗? –

+0

另外,我在这两行后面添加了重写规则:RewriteEngine On RewriteBase / –