WordPress at a glance
function is not described

_filter_query_attachment_filenames() WP 4.7.0

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

This is an internal function for using it by WP core itself. It's not recommended to use this function in your code.

No Hooks.

Return

String[]. The modified array of clauses.

Usage

_filter_query_attachment_filenames( $clauses );
$clauses(string[]) (required)
An array including WHERE, GROUP BY, JOIN, ORDER BY, DISTINCT, fields (SELECT), and LIMITS clauses.

Notes

  • Global. wpdb. $wpdb WordPress database abstraction object.

Changelog

Since 4.7.0 Introduced.

Code of _filter_query_attachment_filenames() WP 5.7

<?php
function _filter_query_attachment_filenames( $clauses ) {
	global $wpdb;
	remove_filter( 'posts_clauses', __FUNCTION__ );

	// Add a LEFT JOIN of the postmeta table so we don't trample existing JOINs.
	$clauses['join'] .= " LEFT JOIN {$wpdb->postmeta} AS sq1 ON ( {$wpdb->posts}.ID = sq1.post_id AND sq1.meta_key = '_wp_attached_file' )";

	$clauses['groupby'] = "{$wpdb->posts}.ID";

	$clauses['where'] = preg_replace(
		"/\({$wpdb->posts}.post_content (NOT LIKE|LIKE) (\'[^']+\')\)/",
		'$0 OR ( sq1.meta_value $1 $2 )',
		$clauses['where']
	);

	return $clauses;
}