Como se puede manipular imágenes en wordpress? Donde esta guardado los datos de imágenes y sus tamaños? Como encontrar imágenes en base de datos con my-sql?
A todas estas preguntas encuentras la respuesta aquí mismo!
Imágenes es lo mismo, es un post, y la información se almacena en base de datos en la tabla wp_posts y sus metas en wp_postmetas
Nota rápida para usar datos de imagen usando sql + php:
Imágenes publicadas y sus metas en la base de datos existe usa este sql
SELECT
*.p, *.pm
FROM
wp_posts AS p
JOIN
wp_postmeta AS pm ON (p.ID = pm.post_id)
WHERE
p.post_type = 'attachment'
AND pm.meta_key = '_wp_attachment_metadata';
Imágenes adjuntadas a un post_parent con ID 1234
SELECT
*.p, *.pm
FROM
wp_posts AS p
JOIN
wp_postmeta AS pm ON (p.ID = pm.post_id)
WHERE
p.post_type = 'attachment'
AND pm.meta_key = '_wp_attachment_metadata'
AND p.post_status = 'publish'
AND p.post_parent = 1234;
Imágenes publicadas con fecha a del año-mes: 2020-03
SELECT
*.p, *.pm
FROM
wp_posts AS p
JOIN
wp_postmeta AS pm ON (p.ID = pm.post_id)
WHERE
p.post_type = 'attachment'
AND pm.meta_key = '_wp_attachment_metadata'
AND p.post_modified LIKE '2020-03%';
Ejemplo de uso en php
global $wpdb;
$sql="AQUI SQL desde ejemplos";
$res = $wpdb->get_results($sql);
foreach ($res as $image) {
$metadata_imagen = unserialize($image->meta_value);
$mid = $image->meta_id;
/*ruta de fichero*/
$file = $metadata_imagen['file'];
$width = $metadata_imagen['width'];
$height = $metadata_imagen['height'];
echo " Image file ($mid) = $file sizes: $width by $height".PHP_EOL;
}
Espero que esta información sobre imágenes de wordpress se aclara algo y ayuda a manejar de peticiones de mysql/sql para sus proyectos.