Der Beitrag, geschriebem am 10. Juli 2017, ist schon etwas älter und könnte womöglich nicht mehr aktuell sein
Die Funktion durchsucht die Tabelle postmeta nach Einträgen mit dem Schlüssel _thumbnail und generiert daraus ein Array mit einmaligen Attachment-IDs.
function flxo_thumbnail_unique_ids() {
global $wpdb;
$ids = $wpdb->get_col(
$wpdb->prepare(
"SELECT DISTINCT meta_value
FROM {$wpdb->postmeta}
WHERE meta_key = %s
AND meta_value != ''",
'_thumbnail_id'
)
);
return array_map( 'absint', $ids );
}Um hingegen doppelt als Beitragsbild verwendete Bilder zu ermitteln, DISTINCT weglassen, und für den besseren Überblick sortieren.
function flxo_thumbnail_duplicate_ids() {
global $wpdb;
$rows = $wpdb->get_results(
$wpdb->prepare(
"SELECT meta_value AS attachment_id, COUNT(*) AS usage_count
FROM {$wpdb->postmeta}
WHERE meta_key = %s
AND meta_value != ''
GROUP BY meta_value
HAVING usage_count > 1
ORDER BY usage_count DESC, attachment_id ASC",
'_thumbnail_id'
),
ARRAY_A
);
return $rows;
// z. B. [ ['attachment_id' => '123', 'usage_count' => '3'], ... ]
}



Schreibe einen Kommentar