WordPress如何移除URL中的主题slug 自定义锚点链接

移动端菜单锚点修改可行方案
当前站点URL后缀的#kingster-moblie-menu是Kingster主题默认给移动端菜单加的锚点ID,要改成#tu-moblie-menu按下面方法操作即可:
- 方法1:后台可视化修改(无代码基础首选)
登录WordPress后台,进入「外观-菜单」配置页,点击页面右上角的「显示选项」,勾选「CSS类」「链接目标」等扩展配置项,找到移动端菜单对应的触发菜单项,把原链接里的#kingster-moblie-menu锚点替换为#tu-moblie-menu,同时找到移动端菜单容器的对应ID配置项同步修改,保存菜单后清空站点缓存、浏览器硬刷新(Ctrl+F5)验证即可。如果是主题导入的演示菜单,先点击菜单项的「解锁」按钮再编辑。 - 方法2:直接修改主题模板文件
如果后台找不到可编辑的锚点配置,进入「外观-主题文件编辑器」,用编辑器的全局搜索功能搜关键词kingster-moblie-menu,一般会在移动端菜单模板(常见路径为template-parts/header/mobile-menu.php)里找到两处匹配:一处是菜单触发按钮的href属性值,一处是移动端菜单容器的id属性值,把两处的kingster-moblie-menu统一替换为tu-moblie-menu,保存文件前先备份原文件,优先修改子主题内的对应文件,避免主题更新覆盖修改。 - 方法3:JS动态替换(临时兼容方案)
不想修改源文件的话,进入「外观-自定义-自定义JavaScript」面板,粘贴以下代码保存即可:
document.addEventListener('DOMContentLoaded', () => { const trigger = document.querySelector('a[href="#kingster-moblie-menu"]'); const menu = document.getElementById('kingster-moblie-menu'); trigger?.setAttribute('href', '#tu-moblie-menu'); if(menu) menu.id = 'tu-moblie-menu'; })
注意:原锚点里的moblie是拼写错误(正确拼写为mobile),修改过程中不要自行修正这个拼写,要保证替换前后的拼写和目标值完全一致,否则会出现锚点不匹配、菜单点击失效的问题。
内容的提问来源于stack exchange,提问作者Zaheer Shahzaib
相关产品推荐
相关产品推荐

