🌍
Français
Je me réponds: j'ai fait à la va vite les quelques modifs suivantes dans pwg.categories.php, ça marche pour moi mais je n'ai pas fait de tests appronfondis:
ligne 96, remplacement de:
$query = ' SELECT SQL_CALC_FOUND_ROWS i.*, GROUP_CONCAT(category_id) AS cat_ids FROM '. IMAGES_TABLE .' i INNER JOIN '. IMAGE_CATEGORY_TABLE .' ON i.id=image_id WHERE '. implode("\n AND ", $where_clauses) .' GROUP BY i.id '. $order_by .' LIMIT '. $params['per_page'] .' OFFSET '. ($params['per_page']*$params['page']) .' ;';
par:
$query = ' SELECT SQL_CALC_FOUND_ROWS i.*, GROUP_CONCAT(category_id) AS cat_ids, GROUP_CONCAT(t.name SEPARATOR ",") as tags FROM '. IMAGES_TABLE .' i INNER JOIN '. IMAGE_CATEGORY_TABLE .' ON i.id=image_id LEFT JOIN '. IMAGE_TAG_TABLE .' it ON it.image_id = i.id INNER JOIN '. TAGS_TABLE .' t ON t.id = it.tag_id WHERE '. implode("\n AND ", $where_clauses) .' GROUP BY i.id '. $order_by .' LIMIT '. $params['per_page'] .' OFFSET '. ($params['per_page']*$params['page']) .' ;';
ligne 118, remplacement de
foreach (array('file', 'name', 'comment', 'date_creation', 'date_available') as $k)
par:
foreach (array('file', 'name', 'comment', 'date_creation', 'date_available', 'tags') as $k)
Pour synchroniser les métadonnées d'un album Piwigo avec mon DAM local j'utilise l'API "pwg.categories.getImages" mais celle-ci ne me renvoie pas les tags: je suis obligé d'envoyer une grande quantité de "pwg.images.getInfo", pas top.
Serait-il possible de rajouter les tags dans les infos retournées par "pwg.categories.getImages" ?