您的当前位置:首页 > 知识博客 > wordpress建站

如何在WordPress中进行URL重写(rewrite)

时间:2024-03-25

在WordPress中进行URL重写(rewrite)通常是通过使用add_rewrite_rule()函数和add_rewrite_tag()函数来实现的。以下是一些简单的步骤,用于设置WordPress URL重写规则:

  1. 在你的主题或插件的functions.php文件中,将以下代码添加到一个函数中:

php
function custom_rewrite_rules() { // 添加自定义重写标签 add_rewrite_tag('%custom_var%', '([^&]+)');


// 添加自定义重写规则 add_rewrite_rule( '^custom-path/([^/]*)/?', // 自定义URL路径和参数匹配规则 'index.php?custom_var=$matches[1]', // WordPress内部查询变量映射 'top' // 设置优先级为top,以便在其他规则之前应用此规则 ); }add_action('init', 'custom_rewrite_rules');

上述代码示例向WordPress添加了一个URL重写规则,它将类似于/custom-path/your-value的URL映射到一个名为custom_var的查询变量。在此示例中,your-value可以是任何你想要捕获的值。

  1. 刷新重写规则: 当你添加或修改重写规则时,需要刷新WordPress的重写规则。你可以通过访问WordPress后台的“设置”>“永久链接”页面来实现。只需打开页面,然后单击“保存更改”按钮即可。

  2. 使用重写变量: 现在,你可以在WordPress中使用这个新的查询变量。例如,可以在主题模板文件中使用get_query_var()函数获取变量的值:

php
$custom_var_value = get_query_var('custom_var');

或者,你可以在pre_get_posts操作中修改查询以根据自定义查询变量值过滤或排序内容:

php
function custom_query_modifications($query) { if (!is_admin() && $query->is_main_query() && get_query_var('custom_var')) { // 根据custom_var的值修改查询 $query->set('orderby', 'title'); $query->set('order', 'ASC'); } }add_action('pre_get_posts', 'custom_query_modifications');

通过这种方式,你可以为WordPress添加自定义URL重写规则,使你的URL更具可读性和SEO友好性。在实际应用中,你需要根据实际需求修改示例代码以满足自己的需求。


欢迎咨询/Welcome to inquire
tel/vx:18842938855
qq:1685522781
email:1685522781@qq.com

Copyright © 2019-2024 mysql.hk


Whatsapp