函数文档

_filter_query_attachment_filenames()

💡 云策文档标注

概述

_filter_query_attachment_filenames() 是一个已弃用的 WordPress 函数,用于过滤附件查询的 SQL 子句以包含文件名。在 6.0.3 版本中被弃用,建议使用新的过滤器替代。

关键要点

  • 函数 _filter_query_attachment_filenames() 已弃用,自 WordPress 6.0.3 起不再推荐使用。
  • 弃用后,应改用 add_filter( "wp_allow_query_attachment_by_filename", "__return_true" ) 来实现类似功能。
  • 函数接受一个数组参数 $clauses,包含 WHERE、GROUP BY、JOIN、ORDER BY、DISTINCT、fields (SELECT) 和 LIMITS 子句,并返回未修改的数组。
  • 在函数内部,会调用 _deprecated_function() 标记弃用,并使用 remove_filter() 移除自身从 posts_clauses 过滤器钩子。

注意事项

  • 开发者应避免在新代码中使用此函数,并迁移到推荐的 wp_allow_query_attachment_by_filename 过滤器。
  • 弃用信息可通过 _deprecated_function() 在调试时查看,帮助识别过时代码。

📄 原文内容

Filter the SQL clauses of an attachment query to include filenames.

Parameters

$clausesarrayrequired
An array including WHERE, GROUP BY, JOIN, ORDER BY, DISTINCT, fields (SELECT), and LIMITS clauses.

Return

array The unmodified clauses.

Source

function _filter_query_attachment_filenames( $clauses ) {
	_deprecated_function( __FUNCTION__, '6.0.3', 'add_filter( "wp_allow_query_attachment_by_filename", "__return_true" )' );
	remove_filter( 'posts_clauses', __FUNCTION__ );
	return $clauses;
}

Changelog

Version Description
6.0.3 Deprecated.
4.7.0 Introduced.