You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何仅为单个自定义文章类型设置相对URL?

仅为单个自定义文章类型设置相对URL的解决方案

当然可以实现!你只需要在之前的过滤函数里加一个文章类型判断条件,就能把相对URL的规则精准限制在特定自定义文章类型上,不会影响其他类型(包括你子域名下的事件)。

具体修改步骤

假设你之前用post_type_link过滤器来统一修改自定义文章类型的链接,现在只需要调整函数逻辑,加入目标类型的判断即可:

add_filter('post_type_link', 'make_specific_cpt_relative_url', 10, 2);
function make_specific_cpt_relative_url($link, $post) {
    // 替换成你需要应用相对URL的自定义文章类型slug
    $target_cpt = 'your_custom_post_type';
    
    // 仅对目标自定义文章类型执行相对URL转换
    if ($post->post_type === $target_cpt) {
        return wp_make_link_relative($link);
    }
    
    // 其他所有文章类型(包括子域名下的事件)保持原始绝对URL
    return $link;
}

关键细节提醒

  • 一定要把代码里的your_custom_post_type替换成你实际需要的自定义文章类型slug(比如注册时设置的'rewrite' => array('slug' => 'portfolio')里的portfolio)。
  • 如果你之前用的是其他过滤器(比如post_link针对普通文章、page_link针对页面),也可以套用同样的逻辑:在函数里判断$post->post_type是否匹配目标类型,再决定是否返回相对URL。
  • 这样修改后,只有目标自定义文章类型的链接会转为相对URL,其他类型依然保留绝对URL,子域名下的事件解析问题自然就解决了。

内容的提问来源于stack exchange,提问作者jbwharris

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 07:19:54