Hirdetés
- gban: Ingyen kellene, de tegnapra
- Lalikiraly: Kinek milyen setupja van?
- Luck Dragon: Asszociációs játék. :)
- eBay-es kütyük kis pénzért
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Fűzzük össze a szavakat :)
- Parci: Milyen mosógépet vegyek?
- hcl: Zyxel zizzenés
- Brogyi: CTEK akkumulátor töltő és másolatai
- Syl: Just Works! …. Vagy mégsem?
-
LOGOUT
WordPress tartalom kezelő rendszer (CMS) topik
Új hozzászólás Aktív témák
-
miqlas
őstag
válasz
kerepesig #9275 üzenetére
Csináltattam egyet a ChatGPT-vel!
Azattachment
típusú képeket apostmeta
táblában is keresi, ahol a kép URL-je (guid) előfordulhat.
Ez különösen fontos, ha képeket egyedi mezők (pl. ACF, egyedi plugin) tárolnak, nem csak HTML-ként vannak beágyazva.Csinálj belõle egy zip file-t, azt töltsd fel pluginként.
<?php
/**
* Plugin Name: Unused Image Cleaner
* Description: Listázza azokat a képeket, amelyeket nem használ egyik bejegyzés vagy meta mező sem. Választható törlés.
* Version: 1.1
* Author: ChatGPT
*/
if (!defined('ABSPATH')) exit;
add_action('admin_menu', function () {
add_menu_page(
'Unused Image Cleaner',
'Unused Images',
'manage_options',
'unused-image-cleaner',
'uic_render_admin_page',
'dashicons-trash',
80
);
});
function uic_render_admin_page() {
global $wpdb;
echo '<div class="wrap"><h1>Nem használt képek</h1>';
if (isset($_POST['delete_images']) && !empty($_POST['image_ids'])) {
$deleted = 0;
foreach ($_POST['image_ids'] as $id) {
if (wp_delete_attachment((int)$id, true)) {
$deleted++;
}
}
echo '<div class="updated notice"><p>' . $deleted . ' kép törölve.</p></div>';
}
$attachments = $wpdb->get_results("
SELECT ID, guid, post_title
FROM {$wpdb->prefix}posts
WHERE post_type = 'attachment' AND post_mime_type LIKE 'image/%'
");
$unused_images = [];
foreach ($attachments as $att) {
$image_url = esc_url($att->guid);
// Ellenőrzés post_content-ben
$used_in_posts = $wpdb->get_var($wpdb->prepare("
SELECT COUNT(*) FROM {$wpdb->prefix}posts
WHERE post_content LIKE %s
", '%' . $wpdb->esc_like($image_url) . '%'));
// Ellenőrzés postmeta mezőkben
$used_in_meta = $wpdb->get_var($wpdb->prepare("
SELECT COUNT(*) FROM {$wpdb->prefix}postmeta
WHERE meta_value LIKE %s
", '%' . $wpdb->esc_like($image_url) . '%'));
if (!$used_in_posts && !$used_in_meta) {
$unused_images[] = $att;
}
}
if (empty($unused_images)) {
echo '<p><strong>Minden kép használatban van.</strong></p>';
} else {
echo '<form method="post"><table class="widefat"><thead><tr><th></th><th>Kép</th><th>Fájl</th></tr></thead><tbody>';
foreach ($unused_images as $img) {
echo '<tr>
<td><input type="checkbox" name="image_ids[]" value="' . esc_attr($img->ID) . '"></td>
<td><img src="' . esc_url($img->guid) . '" style="max-width:100px;height:auto;"></td>
<td>' . esc_html($img->post_title) . '</td>
</tr>';
}
echo '</tbody></table>';
echo '<p><input type="submit" name="delete_images" class="button button-primary" value="Kiválasztott képek törlése"></p>';
echo '</form>';
}
echo '</div>';
}
Új hozzászólás Aktív témák
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Debrecen és környéke adok-veszek-beszélgetek
- gban: Ingyen kellene, de tegnapra
- Milyen billentyűzetet vegyek?
- Lalikiraly: Kinek milyen setupja van?
- Luck Dragon: Asszociációs játék. :)
- Samsung LCD és LED TV-k
- Óvodások homokozója
- Battlefield 6
- Linux felhasználók OFF topikja
- További aktív témák...
- Sharp 55FN2EA UHD Android LED Smart Televízió, 139cm
- Lenovo Thinkpad L580, 15,6" FHD kijelző I5-8250U, 16GB DDR4, 256GB SSD, W11, Számla, 1 év garancia
- Iiyama ProLite E2607WS (26" 1920x1200)
- BESZÁMÍTÁS! HUAWEI MateBook 14 üzleti notebook - i5 1135G7 16GB DDR4 512GB SSD Intel Iris Xe IGP W11
- BESZÁMÍTÁS! Apple iPad Pro 13 2024 M4 16GB/2TB WiFi tablet garanciával hibátlan működéssel
- BESZÁMÍTÁS! Lenovo Legion Go S 32GB/1TB kézikonzol garanciával hibátlan működéssel
- HP ZBook Power 15 G8 Mobile Workstation i7-11850H 32GB 512GB Nvidia RTX A2000
- Honor Magic5 Pro 5G LTPO 120 Hz kijelző, 50 MP triplakamera, 66W gyorstöltés 512 GB
- Samsung Galaxy S21 Ultra / 12GB RAM 256GB / Gyárifüggetlen / 12Hó Garancia
- BESZÁMÍTÁS! Asrock B450M R5 5600X 16GB DDR4 512GB SSD RX 6600XT 8GB Zalman T4 PLUS CM 650W
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Promenade Publishing House Kft.
Város: Budapest