如何更改搜索永久链接

时间:2013-01-05 作者:Batman

我有3个使用不同模板创建的自定义搜索。

“搜索结果”页面根据推荐人加载不同的结果:

<?
/* Template Name: Search Results */
$search_refer = $_GET["post_type"];

if ($search_refer == \'post\') { 
    load_template(TEMPLATEPATH . \'/search/filme.php\'); 
}
elseif ($search_refer == \'persoane\') { 
    load_template(TEMPLATEPATH . \'/search/actori.php\'); 
}
elseif ($search_refer == \'trailers\') { 
    load_template(TEMPLATEPATH . \'/search/trailers.php\'); 
}
?>
我想让这个页面的url更漂亮一些。现在看起来是这样的:

/?s=After+Earth&post_type=post
但我希望它看起来像这样:

/search/After+Earth/post_type/post
如何使url更漂亮?

2 个回复
SO网友:Krzysiek Dróżdż

这段代码应该可以解决您的问题。把它放在你的功能中。php文件。

function my_insert_rewrite_rules( $rules ) {
    $newrules = array();
    $newrules[\'search/([^/]+)/post_type/([^/]+)/?$\'] = \'index.php?s=$matches[1]&post_type=$matches[2]\';
    return $newrules + $rules;
}
add_filter( \'rewrite_rules_array\',\'my_insert_rewrite_rules\' );


function my_flush_rewrite_rules() {
    flush_rewrite_rules();
}
add_action( \'after_switch_theme\', \'my_flush_rewrite_rules\' );
您必须在添加此代码后刷新重写规则,然后它才能开始工作。只需将主题切换到另一个主题并返回,或转到“设置”->“永久链接设置”,然后按“保存”按钮。

SO网友:liying

首先,请查看此urlhttp://codex.wordpress.org/Using_Permalinks ,然后goo to the admin dashboard Settings->Permalink Settings->Common Settings根据需要设置url,试试看,可能会有所帮助!

结束

相关推荐

Remove some pages from search

在我的网站上,我希望一些页面不能通过搜索表单进行查询(这样当我有类似www.ex.com/?s=banana的内容时,它们就不会出现)有没有一种方法可以从搜索结果页面中“删除”页面(而不是盲目地执行if Is\\u page(id),display:none的条件)