{"id":13867,"date":"2024-08-15T08:40:02","date_gmt":"2024-08-15T07:40:02","guid":{"rendered":"https:\/\/www.20i.com\/blog\/?p=13867"},"modified":"2026-07-09T17:44:14","modified_gmt":"2026-07-09T16:44:14","slug":"piwigo-review","status":"publish","type":"post","link":"https:\/\/www.20i.com\/blog\/piwigo-review\/","title":{"rendered":"Piwigo Review (And How To Get Started)"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">In this review I\u2019ll be looking at <a href=\"https:\/\/piwigo.org\" target=\"_blank\" rel=\"noreferrer noopener\">Piwigo<\/a> to find out if free, open-source digital asset management (DAM) software has what it takes to be a viable alternative to titans like iCloud, Google Photos and Adobe.<\/p>\n\n\n\n\n\n\n\n<h2 class=\"wp-block-heading\">What is Piwigo?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Piwigo is free, open-source photo management software designed to help individuals and organizations efficiently organize, manage, and share their digital photo collections.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Launched in 2002 and with over 2.8M installs to date, Piwigo is built on <a href=\"https:\/\/www.20i.com\/blog\/selling-php-optimised-hosting\/\" target=\"_blank\" rel=\"noreferrer noopener\">PHP<\/a> and MySQL, making it a highly customizable and scalable solution suitable for a wide range of users\u2014from amateur photographers to large companies needing robust image management.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Unlike many other photo management tools, Piwigo is self-hosted, giving users full control over their data and allowing them to tailor the platform to their specific needs.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The platform offers an array of features, including album creation, tagging, geolocation, and a plugin ecosystem that extends its capabilities.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde28e92cb&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde28e92cb\" class=\"wp-block-image size-full wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"1080\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/screenshot-of-piwigo-homepage.png.webp\" alt=\"Screenshot of the Piwigo home page\" class=\"wp-image-13882\" style=\"border: 1px solid #EBEBEB\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/screenshot-of-piwigo-homepage.png.webp 1920w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/screenshot-of-piwigo-homepage-300x169.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/screenshot-of-piwigo-homepage-768x432.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/screenshot-of-piwigo-homepage-1536x864.png.webp 1536w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/screenshot-of-piwigo-homepage-400x225.png.webp 400w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/screenshot-of-piwigo-homepage-800x450.png.webp 800w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/screenshot-of-piwigo-homepage-832x468.png.webp 832w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/screenshot-of-piwigo-homepage-1664x936.png.webp 1664w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/screenshot-of-piwigo-homepage-1248x702.png.webp 1248w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/screenshot-of-piwigo-homepage-150x84.png.webp 150w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Getting started with Piwigo<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/piwigo.com\/pricing\" target=\"_blank\" rel=\"noreferrer noopener\">Piwigo has several paid tiers<\/a> that come with varying levels of storage, support and features \u2013 but I\u2019ll be looking at what can be achieved with the free, <a href=\"https:\/\/www.20i.com\/piwigo-hosting\" target=\"_blank\" rel=\"noreferrer noopener\">self-hosted version of Piwigo<\/a> in this review.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Head to <a href=\"https:\/\/piwigo.org\/get-piwigo\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/piwigo.org\/get-piwigo<\/a> and you\u2019ll see the self-hosted version in orange.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde28ebe11&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde28ebe11\" class=\"wp-block-image size-full wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1911\" height=\"1080\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/piwigo-homepage-options.png.webp\" alt=\"Screenshot of the 'Get Piwigo' page\" class=\"wp-image-13881\" style=\"border: 1px solid #EBEBEB\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/piwigo-homepage-options.png.webp 1911w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/piwigo-homepage-options-300x170.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/piwigo-homepage-options-768x434.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/piwigo-homepage-options-1536x868.png.webp 1536w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/piwigo-homepage-options-400x226.png.webp 400w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/piwigo-homepage-options-800x452.png.webp 800w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/piwigo-homepage-options-832x470.png.webp 832w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/piwigo-homepage-options-1664x940.png.webp 1664w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/piwigo-homepage-options-1248x705.png.webp 1248w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/piwigo-homepage-options-150x85.png.webp 150w\" sizes=\"auto, (max-width: 1911px) 100vw, 1911px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Piwigo, &nbsp;is available as a one-click install on our <a href=\"https:\/\/www.20i.com\/reseller-hosting\" target=\"_blank\" rel=\"noreferrer noopener\">Reseller Hosting<\/a>, <a href=\"https:\/\/www.20i.com\/web-hosting\" target=\"_blank\" rel=\"noreferrer noopener\">Web Hosting<\/a> and <a href=\"https:\/\/www.20i.com\/managed-hosting\" target=\"_blank\" rel=\"noreferrer noopener\">Managed Hosting<\/a> platforms &#8211; which made the setup process effortless.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you aren&#8217;t hosted with us then you&#8217;ll need to install Piwigo <a href=\"https:\/\/piwigo.org\/guides\/install\/manual\" target=\"_blank\" rel=\"noreferrer noopener\">manually<\/a> or via <a href=\"https:\/\/piwigo.org\/guides\/install\/netinstall\" target=\"_blank\" rel=\"noreferrer noopener\">netinstall<\/a>. The documentation is easy to follow but you&#8217;ll need to be comfortable using FTP.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">With installation completed I connected a database and entered the username and password that I wanted to use:<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde28ef28f&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde28ef28f\" class=\"wp-block-image size-full wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1916\" height=\"1080\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Splash-Screen.png.webp\" alt=\"Screenshot of the Piwigo installation screen\" class=\"wp-image-13880\" style=\"border: 1px solid #EBEBEB\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Splash-Screen.png.webp 1916w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Splash-Screen-300x169.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Splash-Screen-768x433.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Splash-Screen-1536x866.png.webp 1536w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Splash-Screen-370x209.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Splash-Screen-270x152.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Splash-Screen-570x321.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Splash-Screen-740x417.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Splash-Screen-150x85.png.webp 150w\" sizes=\"auto, (max-width: 1916px) 100vw, 1916px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">.. and was ready to begin putting Piwigo through its paces.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Using Piwigo<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">With version 14.5.0 running, the dashboard shows you useful stats at a glance including:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Storage used<\/li>\n\n\n\n<li>Number of photos<\/li>\n\n\n\n<li>Number of albums<\/li>\n\n\n\n<li>Users<\/li>\n\n\n\n<li>Groups<\/li>\n\n\n\n<li>Pages seen<\/li>\n<\/ul>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde28f11ee&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde28f11ee\" class=\"wp-block-image size-full wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1788\" height=\"940\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Dashboard.jpeg.webp\" alt=\"Screenshot of the Piwigo dashboard\" class=\"wp-image-13878\" style=\"border: 1px solid #EBEBEB\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Dashboard.jpeg.webp 1788w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Dashboard-300x158.jpeg.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Dashboard-768x404.jpeg.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Dashboard-1536x808.jpeg.webp 1536w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Dashboard-370x195.jpeg.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Dashboard-270x142.jpeg.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Dashboard-570x300.jpeg.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Dashboard-740x389.jpeg.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Dashboard-150x79.jpeg.webp 150w\" sizes=\"auto, (max-width: 1788px) 100vw, 1788px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The side menus are intuitive, and I easily found everything I wanted very quickly.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can customise the experience of using Piwigo for yourself and your users with themes, many of which have switchable light and dark modes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Over a hundred themes are available, and you can have a look at them from the Piwigo website without needing to install anything: <a href=\"https:\/\/piwigo.org\/ext\/index.php?cid=10&amp;page=1\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/piwigo.org\/ext\/index.php?cid=10&amp;page=1<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Menus, languages and how media is displayed can all be dialled in to taste.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Uploading Photos &amp; Media to Piwigo<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">To make this review as true-to-life as possible I used photos from my iPhone and mirrorless cameras (Sony A6700 &amp; Sony ZV-E10mk1).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">File sizes from these sources range from 3MB up to 30MB<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">By default, Piwigo processes the photos you upload and makes copies to use as thumbnails and as smaller versions which it serves to users to save bandwidth.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can configure exactly how this re-encoding behaviour is handled from Configuration &gt; Options &gt; Photo sizes menu.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bear in mind that the copies of your photos take up storage space, and processing large batches will put a lot of strain on your hardware.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For context: XXS \u2013 tiny is 240&#215;240 pixels and XXL \u2013 huge is 1656&#215;1242 pixels. XXL &#8211; huge is far smaller than the full size 6000&#215;4000 pixel images from the digital cameras.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde2901c4d&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde2901c4d\" class=\"wp-block-image size-full wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1788\" height=\"940\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Photo-sizes.jpeg.webp\" alt=\"Screenshot of the different file sizes available within the Piwigo configuration menu\" class=\"wp-image-13877\" style=\"border: 1px solid #EBEBEB\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Photo-sizes.jpeg.webp 1788w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Photo-sizes-300x158.jpeg.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Photo-sizes-768x404.jpeg.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Photo-sizes-1536x808.jpeg.webp 1536w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Photo-sizes-370x195.jpeg.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Photo-sizes-270x142.jpeg.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Photo-sizes-570x300.jpeg.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Photo-sizes-740x389.jpeg.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Photo-sizes-150x79.jpeg.webp 150w\" sizes=\"auto, (max-width: 1788px) 100vw, 1788px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Uploading photos and media can be done in three ways:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><a href=\"#webform\">Web Form<\/a><\/li>\n\n\n\n<li><a href=\"#applications\">Applications<\/a><\/li>\n\n\n\n<li><a href=\"#ftp\">FTP<\/a><\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">All three are simple to use.<\/p>\n\n\n\n<div id=\"webform\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h3 class=\"wp-block-heading\">Web Form<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This couldn\u2019t be easier \u2013 you choose an album you want the photos to go into with the drop down menu. If there are no albums to choose from you can create a new one.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Then, you drag and drop your photos into the big grey box or click the orange-pink \u2018Add Photos +\u2019 button to select them using a file manager window.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You\u2019ll see the file size for each image in the queue and, when you press the \u2018Start Upload\u2019 button; a progress bar lets you know when each file is uploaded.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde2904510&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde2904510\" class=\"wp-block-image size-full wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"993\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Web-Form.png.webp\" alt=\"Screenshot of the Piwigo Web Form interface\" class=\"wp-image-13876\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Web-Form.png.webp 1920w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Web-Form-300x155.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Web-Form-768x397.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Web-Form-1536x794.png.webp 1536w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Web-Form-370x191.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Web-Form-270x140.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Web-Form-570x295.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Web-Form-740x383.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Web-Form-150x78.png.webp 150w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div>\n\n\n\n<div id=\"applications\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h3 class=\"wp-block-heading\">Applications<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Piwigo has several desktop, iOS and Android apps to make uploading photos and assets convenient to different workflows.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Alongside contemporary options, some of the tools available here will seem out of place to security conscious users for being wildly out of date or long since depreciated.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Piwigo is aimed at photographers, many of whom still shoot film \u2013&nbsp; a technology developed (pun intended) in 1888. Keeping these options available caters for users who passionately prefer particular processes and&nbsp;tools.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde2910704&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde2910704\" class=\"wp-block-image size-full wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"993\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Apps.png.webp\" alt=\"Screenshot of the Piwigo Applications interface\" class=\"wp-image-13875\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Apps.png.webp 1920w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Apps-300x155.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Apps-768x397.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Apps-1536x794.png.webp 1536w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Apps-370x191.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Apps-270x140.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Apps-570x295.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Apps-740x383.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Upload-Apps-150x78.png.webp 150w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Many more options can be found here: <a href=\"https:\/\/piwigo.org\/ext\/index.php?cid=11&amp;page=1\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/piwigo.org\/ext\/index.php?cid=11&amp;page=1<\/a><\/p>\n<\/div>\n\n\n\n<div id=\"ftp\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h3 class=\"wp-block-heading\">FTP<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This is a great option for users who deploy Piwigo as a backup solution. Following the instructions on the page will synchronise your local and server-based directories, and keep photos save from failing drives and disasters.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde2911a9c&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde2911a9c\" class=\"wp-block-image size-full wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"993\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-FTP.png.webp\" alt=\"Screenshot of the Piwigo FTP page\" class=\"wp-image-13874\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-FTP.png.webp 1920w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-FTP-300x155.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-FTP-768x397.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-FTP-1536x794.png.webp 1536w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-FTP-370x191.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-FTP-270x140.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-FTP-570x295.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-FTP-740x383.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-FTP-150x78.png.webp 150w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Supported File Types<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Later in this review I cover how Piwigo can be altered to support a range of files, but in this section I\u2019ll cover what worked \u2018out of the box\u2019 for the most popular current and next-gen image formats.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td>File Type<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>Piwigo<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>Google Photos<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>iCloud Photos<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>Adobe Cloud<\/strong><\/td><\/tr><tr><td>Jpg<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><\/tr><tr><td>Png<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><\/tr><tr><td>WebP<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c<\/td><\/tr><tr><td>JpegXL<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c<\/td><\/tr><tr><td>AVIF<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c<\/td><\/tr><tr><td>HEIF\/HEIC<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c<\/td><\/tr><tr><td>Sony RAW<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c*<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u274c<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">* <em>Some RAW files are supported, but not A6700 at the time of this review<\/em><\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Professionals will be pleased to hear that Piwigo natively supports:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>pdf<\/li>\n\n\n\n<li>svg<\/li>\n\n\n\n<li>tif\/tiff<\/li>\n\n\n\n<li>eps<\/li>\n\n\n\n<li>ai<\/li>\n\n\n\n<li>psd<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Vanilla configurations of Piwigo do not come with support for all image file types \u2013 and nothing at all for video &#8211; but we can sort that quite easily.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Adding more file types<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">With a little work you can have Piwigo accept, recognise, process and display any of the containers and formats supported by ImageMagick: <a href=\"https:\/\/www.imagemagick.org\/include\/formats.php\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.imagemagick.org\/include\/formats.php<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To do this you need to manually add file extensions to the list of formats that can be uploaded.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Edit the Piwigo config file with the LocalFiles Editor plugin or Notepad++ and FTP and enter the extensions you want to add, save your changes and run the \u2018Repair and optimize database\u2019 function. You can also use community plugins, like <a href=\"https:\/\/piwigo.org\/ext\/index.php?eid=610\" target=\"_blank\" rel=\"noreferrer noopener\">Video.js<\/a>, to achieve the same results.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Another important note is that the device and browser you are viewing images on has to support these file types and extensions.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Windows, for example, does not natively support HEIF\/HEIC files and requires an extension from the Store \u2013 whereas macOS does support this natively.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Sharing and permissions<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The simple, effective way that groups and users work in Piwigo gives you a great deal of control over who can view your media. This has many useful, real-world applications.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Each album that you create, and each photo you upload, can be assigned to be viewable by \u2018Groups\u2019.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde2915745&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde2915745\" class=\"wp-block-image size-full wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"993\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Groups.png.webp\" alt=\"Screenshot of the different groups within Piwigo\" class=\"wp-image-13873\" style=\"border: 1px solid #EBEBEB\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Groups.png.webp 1920w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Groups-300x155.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Groups-768x397.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Groups-1536x794.png.webp 1536w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Groups-370x191.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Groups-270x140.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Groups-570x295.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Groups-740x383.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Groups-150x78.png.webp 150w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The default groups are &#8216;Family&#8217;, &#8216;Friends&#8217; and &#8216;Public&#8217;.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Albums or photos you set to \u2018Public\u2019 are accessible by anyone who visits your Piwigo site. Media that you set to any other Group involves creating Users.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Moving albums between Groups is as simple as clicking on the name of the album and then clicking the&nbsp; \u2018&lt;&lt;\u2019 button to move it to the \u2018Authorized\u2019 column for that Group.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde2916733&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde2916733\" class=\"wp-block-image size-full wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1960\" height=\"1120\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/08\/Piwigo-00-Permissions.gif\" alt=\"Slideshow of screenshots showing how to add albums from the Forbidden to the Authorized category within a group\" class=\"wp-image-13872\"\/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">If you have an album that covers an event \u2013 a day out with family or a wedding \u2013 you can go through and set the permissions of individual photos to hide them from particular groups. This is very useful for safeguarding.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde291767d&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde291767d\" class=\"wp-block-image size-full wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"1080\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-IndividualPhotoPermissions.png.webp\" alt=\"Screenshot showing how to change the group permissions of an individual photo\" class=\"wp-image-13871\" style=\"border: 1px solid #EBEBEB\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-IndividualPhotoPermissions.png.webp 1920w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-IndividualPhotoPermissions-300x169.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-IndividualPhotoPermissions-768x432.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-IndividualPhotoPermissions-1536x864.png.webp 1536w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-IndividualPhotoPermissions-370x208.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-IndividualPhotoPermissions-270x152.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-IndividualPhotoPermissions-570x321.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-IndividualPhotoPermissions-740x416.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-IndividualPhotoPermissions-150x84.png.webp 150w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">You can also set your media to be viewable by permission level. In the screenshot above, I changed the settings so that Users of any Group that has &#8216;Admin&#8217;, &#8216;Friends&#8217; or &#8216;Family&#8217; can see the photo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">These features give you greater control over your assets than with the WordPress gallery or DAM solutions like iCloud, Google Photos and Adobe Cloud as you can configure \u2018Users\u2019 and \u2018Groups\u2019 with different permissions to show or restrict access.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Another noteworthy feature is being able to add watermarks to photos. This is done through the Configuration &gt; Options &gt; Watermark menu and is useful for keeping the images you share from being used without proper attribution.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde291874f&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde291874f\" class=\"wp-block-image size-full wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"993\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Watermark.png.webp\" alt=\"Screenshot of the Watermark interface in Piwigo\" class=\"wp-image-13870\" style=\"border: 1px solid #EBEBEB\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Watermark.png.webp 1920w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Watermark-300x155.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Watermark-768x397.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Watermark-1536x794.png.webp 1536w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Watermark-370x191.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Watermark-270x140.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Watermark-570x295.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Watermark-740x383.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-Watermark-150x78.png.webp 150w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Plugins<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">I used the <a href=\"https:\/\/piwigo.org\/ext\/index.php?eid=144\" target=\"_blank\" rel=\"noreferrer noopener\">LocalFiles Editor<\/a> for this review, which enabled me to make changes to config files from the admin menu. There are more than 350 plugins available at the time of writing: <a href=\"https:\/\/piwigo.org\/ext\/index.php?cid=12&amp;page=1\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/piwigo.org\/ext\/index.php?cid=12&amp;page=1<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Each plugin has a dedicated page with a star rating, number of downloads and a checkmark to show if it is compatible with the latest version of Piwigo:<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde29199aa&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde29199aa\" class=\"wp-block-image size-full wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"1080\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-LocalFiles-Editor-Plugin-Page.png.webp\" alt=\"Screenshot of the LocalFiles Editor plugin landing page\" class=\"wp-image-13869\" style=\"border: 1px solid #EBEBEB\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-LocalFiles-Editor-Plugin-Page.png.webp 1920w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-LocalFiles-Editor-Plugin-Page-300x169.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-LocalFiles-Editor-Plugin-Page-768x432.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-LocalFiles-Editor-Plugin-Page-1536x864.png.webp 1536w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-LocalFiles-Editor-Plugin-Page-370x208.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-LocalFiles-Editor-Plugin-Page-270x152.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-LocalFiles-Editor-Plugin-Page-570x321.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-LocalFiles-Editor-Plugin-Page-740x416.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/08\/Piwigo-00-LocalFiles-Editor-Plugin-Page-150x84.png.webp 150w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">The Piwigo Mobile App<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The Piwigo mobile app was easy to operate as a first-time user. You connect to your Piwigo server by entering the URL or IP address and then your login details.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Viewing albums and existing media, creating albums and uploading new photos is intuitive and responsive.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">HEIF files are automatically converted on device to .jpg before being uploaded, so you don\u2019t run into any issues with your phone pictures \u2013 but without putting in the work mentioned above you won\u2019t be able to upload videos.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6addde291aca9&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6addde291aca9\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"739\" height=\"1600\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/08\/using-the-piwigo-mobile-app-739x1600.gif\" alt=\"Slideshow of the Piwigo mobile app in use\" class=\"wp-image-13884\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/08\/using-the-piwigo-mobile-app-739x1600.gif 739w, https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/08\/using-the-piwigo-mobile-app-139x300.gif 139w, https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/08\/using-the-piwigo-mobile-app-768x1663.gif 768w, https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/08\/using-the-piwigo-mobile-app-709x1536.gif 709w, https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/08\/using-the-piwigo-mobile-app-946x2048.gif 946w, https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/08\/using-the-piwigo-mobile-app-400x866.gif 400w, https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/08\/using-the-piwigo-mobile-app-800x1732.gif 800w, https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/08\/using-the-piwigo-mobile-app-832x1802.gif 832w, https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/08\/using-the-piwigo-mobile-app-150x325.gif 150w\" sizes=\"auto, (max-width: 739px) 100vw, 739px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Click image to view more screenshots of the Piwigo mobile app<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The only moment of friction I had with the app was having to click \u2018Cancel\u2019 after uploading photos to go back to the main screen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I wasn\u2019t sure if this would undo the uploads, but thankfully it didn\u2019t.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Final thoughts<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Your experience with <a href=\"https:\/\/piwigo.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">Piwigo<\/a> will depend on how you connect to your server. Hosting from lightning-fast hardware in a world class data centre meant that there were times where photos and albums loaded so quickly it felt like it was running locally.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The control over who can see your media opens up a lot of possibilities for personal and commercial use, and a competent mobile app is a nice addition.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I would have liked to see a broader range of supported file types enabled by default, but as these can be added in as desired I can\u2019t complain.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Piwigo is a fantastic solution for media asset management, and I confidently recommending it to anyone who needs broader control than WordPress, Google Photos, iCloud etc can provide.<a id=\"_msocom_1\"><\/a><\/p>\n\n\n<div class='code-block code-block-5' style='margin: 8px 0; clear: both;'>\n<hr>\n<br \/><a href=\"https:\/\/www.20i.com\/managed-cloud-servers\" target=\"_blank\"><img decoding=\"async\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2026\/03\/Blog-Ad-MCS-1200x625-1.png\" loading=\"lazy\" alt=\"Managed Cloud Hosting\"><\/a><\/div>\n\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"In this review I\u2019ll be looking at Piwigo to find out if free, open-source digital asset management (DAM)&hellip;","protected":false},"author":36,"featured_media":17159,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"csco_singular_sidebar":"","csco_page_header_type":"","csco_page_load_nextpost":"","footnotes":""},"categories":[91],"tags":[94,161],"class_list":["post-13867","post","type-post","status-publish","format-standard","has-post-thumbnail","category-review","tag-open-source","tag-review","cs-entry"],"_links":{"self":[{"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/posts\/13867","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/users\/36"}],"replies":[{"embeddable":true,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/comments?post=13867"}],"version-history":[{"count":26,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/posts\/13867\/revisions"}],"predecessor-version":[{"id":17160,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/posts\/13867\/revisions\/17160"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/media\/17159"}],"wp:attachment":[{"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/media?parent=13867"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/categories?post=13867"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/tags?post=13867"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}