Eine auf WordPress spezialiserte Suchmaschine für Entwickler und Theme-Autoren



_filter_query_attachment_filenames ›

Seit4.7.0
Veraltetn/v
_filter_query_attachment_filenames ( $clauses )
Zugriff:
  • private
Parameter:
  • (array) $clauses An array including WHERE, GROUP BY, JOIN, ORDER BY, DISTINCT, fields (SELECT), and LIMITS clauses.
    Erforderlich: Ja
Gibt zurück:
  • (array) The modified clauses.
Definiert in:
Codex:

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



Quellcode

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;
}