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

WP 4.9.5移除附件字段代码无效,求排查问题原因

解决WordPress 4.9.5移除附件字段无效的问题

嘿,我来帮你搞定这个问题!你的代码思路是对的,但有几个细节没注意到,导致在WP4.9.5里不生效:

1. 字段键名错误

在WP4.9.x版本中,附件编辑页面的标题字段对应的键名是post_title,而不是你写的title。post_excerpt(描述字段)的键名是对的,但标题的键名写错了,所以移除标题的代码根本找不到目标字段。

2. 过滤器优先级可能不够

有些主题或插件会在默认优先级(10)之后重新添加这些字段,所以你需要把过滤器的优先级调得更高,确保你的代码最后执行。

修正后的代码

把你的代码改成这样:

function filter_attachment_fields( $fields, $post ) {
    // 移除描述字段(post_excerpt是正确的键名)
    if ( isset( $fields['post_excerpt'] ) ) {
        unset( $fields['post_excerpt'] );
    }
    // 移除标题字段(这里要用post_title)
    if ( isset( $fields['post_title'] ) ) {
        unset( $fields['post_title'] );
    }
    return $fields;
}
// 把优先级从10改成99,确保最后执行
add_filter( 'attachment_fields_to_edit', 'filter_attachment_fields', 99, 2 );

额外排查技巧

如果还是不生效,可以先在函数里加个调试语句,看看实际的$fields数组结构,确认字段键名:

function filter_attachment_fields( $fields, $post ) {
    var_dump( $fields ); // 打印字段数组,查看真实键名
    // ... 其他代码 ...
    return $fields;
}

访问附件编辑页面时,就能在页面顶部看到所有字段的键名,这样就能精准定位要移除的字段了。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 04:17:01