Zenphoto - The simpler media website CMSUser Guide (Latest news) http://www.zenphoto.org Zenphoto is a CMS for selfhosted, gallery focused websites. Our focus lies on being easy to use and having all the features there when you need them (but out of the way if you do not). Zenphoto features support for various media formats and integrated blog and custom pages. Zenphoto is the ideal CMS for personal websites of illustrators, artists, designers, photographers, film makers and musicians. en-US Tue, 27 Jan 2015 14:48:02 -0500 Tue, 27 Jan 2015 14:48:02 -0500 http://blogs.law.harvard.edu/tech/rss Zenphoto RSS Generator <![CDATA[Path constants (Customizing, Development, FAQ, Theming & Templating, Tutorials, User Guide)]]> http://www.zenphoto.org/news/path-constants Zenphoto uses several path related constants internally you should always use these if you work with paths so your themes and plugins are safe for any possible name changes. These constants are defined in /zp-core/global-definitions.php.

For all URL's to actual items (albums, image, news and pages) you should rather use Zenphoto's object model framework or the related template functions.

/albums/ – stores all albums and images. If you use a custom name it of course stores that name.
http(s)://yourdomain.com/albums/ – full webpath to the /albums folder
/var/www/html/zenphoto/albums/ – The path to the albums folder but with the full server path if you installed in a subfolder "zenphoto" (exact path depends on the host)
/backup/ – stores the database backup made with the backup utility
/cache/ – stores all the cached images
/zp-core/zp-extensions/common/ – stores some files that several official plugins make use of
/zp-data/ – stores the configuration and log files
The full web path to your installation, e.g. http://www.yourdomain.com/zenphoto/ if you installed Zenphoto in a folder "zenphoto".
/zp-core/zp-extensions/ – stores all officially included plugins
http or https – The server protocol as set on its option. If you use it you need to add ://
The full path on your server. e.g. /var/www/html/zenphoto if you installed in a subfolder "zenphoto" (the exact path depends on the host)
/cache_html/ – stores all the cached static HTML files of your site pages if using the static_html_cache plugin and also the RSS feeds if the RSS cache is enabled.
/themes/ – stores all themes
/uploaded/ – the default folder for general non gallery files
/plugins/ – stores all 3rd party plugins
/zp-core/utilities/ – stores offcially included utiltiy plugins which appear as buttons on the main overview page on the backend.
stores the path to your install. If you installed in a folder called "zenphoto" resolves to zenphoto.
/zp-core/ – The Zenphoto core folder


Note: The constants do not include the slashes.

Path to a 3rd party plugin:

Path to an included plugin:

http://www.zenphoto.org/news/path-constants Wed, 10 Sep 2014 00:00:00 -0400
<![CDATA[Translation tutorial in Polish (Third party) (Internationalisation & localisation, Third party, Tutorials, User Guide)]]> http://www.zenphoto.org/news/translation-tutorial-in-polish-third-party A short two part tutorial in Polish covering theme based translation: 

http://www.zenphoto.org/news/translation-tutorial-in-polish-third-party Fri, 08 Aug 2014 00:00:00 -0400
<![CDATA[Zenphoto URL structure (FAQ, Troubleshooting, Tutorials, User Guide)]]> http://www.zenphoto.org/news/zenphoto-url-structure Zenphoto has a specific URL structure for all front end items we explain here. We recommend to use mod_rewrite but Zenphoto works without it as well. The examples assume Zenphoto has been installed in the root of a domain.

Mod_rewrite links (SEO friendly)

The URL's are not completly rewritten via mod_rewrite/htaccess but internally. Therefore some parts can be changed via the rewriteToken plugin.

Gallery index:
Gallery index, several pages:
Album (thumbnail page):
Album, several pages:
Sub album (similar for more levels):
Image page (sized image):
yourdomain.com/<albumname>/<imagename.suffix><mod_rewrite suffix e.g .html (optional)>
Link to a tag:
Date archive link:
Static custom page:
Zenpage CMS plugin
News, several pages:
News category:
yourdomain.com/news/category/<category titlelink>
News category, several pages:
yourdomain.com/news/category/<category titlelink>/<pagenumber>
Single news articles:
yourdomain.com/news/<article titlelink>
News date archive:
yourdomain.com/pages/<page titlelink>

Note: Although Zenpage pages and news categories can be nested it is not reflected in the URL. The benefit is that on re-sorting/re-nesting the links never outdate.

Non mod_rewrite links

Gallery index:
Gallery index, several pages:
Album (thumbnail page):
Album, several pages:
Sub album (similar for more levels):
Image page (sized image):
Link to a tag:
Date archive link:
Static custom page:
Zenpage CMS plugin
News section:
News section, several pages:
News category:
yourdomain.com/index.php?p=news&category=<category titlelink>
News category, several pages:
yourdomain.com/index.php?p=news&category=<category titlelink>&page=<pagenumber>
Single news articles:
yourdomain.com/index.php?p=news&title=<article titlelink>
News date archive:
yourdomain.com/index.php?p=pages&title=<page titlelink>

Note: Although Zenpage pages and news categories can be nested it is not reflected in the URL. A benefit of this is that on re-sorting/re-nesting the links never outdate.

http://www.zenphoto.org/news/zenphoto-url-structure Wed, 16 Jul 2014 00:00:00 -0400
<![CDATA[Features (FAQ, User Guide)]]> http://www.zenphoto.org/news/features Easy Media website management!

Zenphoto is a CMS for selfhosted, gallery focused websites. Our focus lies on being easy to use and having all the features there when you need them (but out of the way if you don't).

Zenphoto features support for images, video and audio formats, and the Zenpage CMS plugin provides a fully integrated news section (blog) and custom pages to run entire websites.

This makes Zenphoto the ideal CMS for personal websites of illustrators, artists, designers, photographers, film makers and musicians.

Manage image, video and audio files!


  • File system based: Upload files and folders via the administration or directly via FTP
  • Search engine with boolean expressions
  • Dynamic albums based on "saved searches"
  • Multifile upload
  • Scheduled publishing
  • RSS
  • Watermarks
  • Automatically generated sized images
  • EXIF/IPTC metadata support
  • Drag & Drop sorting of albums and images
  • Moving, copying, renaming of albums and images
  • Supported formats:
    • Images: .jpg, .gif, .png (generally all formats your server's graphics libary supports)
    • Videos: .mp4*, .m4a*, .flv*, .mov**, .3gp**, .ogv***, .webm***
    • Audio: .mp3*, .m4a*, .fla*, .webma***, .oga***
    • Other formats (basic support only): .txt*,.html*, .pdf*, .pps*
  • Slideshow*
  • Comments*
  • Tags
  • Statistics
  • Rating
  • ...and much more!

Manage blog and pages!


  • Custom pages management including nested subpages
  • Custom menu's
  • Drag & drop sorting of pages and categories
  • News section (blog) with nested categories
  • Post of new gallery items in the news section (blog)
  • File manager for none gallery files*
  • Scheduled publishing
  • Comments*
  • RSS*
  • Tags
  • Statistics
  • Rating
  • ... and much more!

Read more about the Zenpage CMS plugin

Multi-user management


  • User managment
  • User groups
  • Per user rights assignment
  • Password protection for albums and pages

Read more about user rights

International sites with multiple languages!


  • Admin backend translatable (gettext server support required)
  • Many backend translations included (gettext server support required): Chinese, Dutch, French, Galician, German, Hebrew, Japanese, Polish, Spanish, Swedish (See also Current language repository)
  • Multilingual sites with subdomain support for separate language sites (e.g. fr.domain.com, en.domain.com)

Read more about language features

Create your own website design!


  • Highly customizable theme engine (HTML5, CSS, PHP)
  • Five standard themes included, more themes available
  • Object model framework for advanced theming and flexibility
  • Multiple layouts within a theme
  • Separate theme translations

Visit the themes section or the theming tutorial

Extend Zenphoto with features you need!


  • Sophisticated plugin system
  • Frontend and backend filters
  • Object model framework for advanced coding
  • Many plugins included plus more 3rd party ones available

Visit the extensions section

* via official plugins; extendable via custom plugins
** handled by your browser if available
*** via the jPlayer multimedia player only as fallback formats. See the jPlayer website for more info.

http://www.zenphoto.org/news/features Sat, 22 Mar 2014 13:32:00 -0400
<![CDATA[Articles about Zenphoto (FAQ, Third party, User Guide)]]> http://www.zenphoto.org/news/articles-about-zenphoto We collected (and collect) various articles we find about Zenphoto on the net and elsewhere. Originally this was located on the testimonials page and now moved here to the user guide as that seems to be more fitting.

Note that some articles are quite a little older so will of course not reflect current state of Zenphoto at all.



http://www.zenphoto.org/news/articles-about-zenphoto Sat, 08 Mar 2014 00:00:00 -0500
<![CDATA[Theming tutorial in Polish (Third party) (FAQ, Theming & Templating, Third party, Tutorials, User Guide)]]> http://www.zenphoto.org/news/parts-of-our-theming-tutorial-in-polish A Polish translation repectively adaption of our theming tutorial:

http://www.zenphoto.org/news/parts-of-our-theming-tutorial-in-polish Tue, 21 Jan 2014 15:40:56 -0500
<![CDATA[Database scheme (Customizing, Development, FAQ, User Guide)]]> http://www.zenphoto.org/news/database-scheme This reference is meant to show the main table relations.Therefore not all tables created by Zenphoto are included and also only those fields that are interconnected.

Please use a tool like phpMyAdmin or the Database reference utility on the Zenphoto backend to see the full details of all data- base tables.

If coding for Zenphoto avoid to use direct MySQL queries and use the object model instead.


http://www.zenphoto.org/news/database-scheme Mon, 21 Oct 2013 13:11:29 -0400
<![CDATA[Using elFinder (FAQ, Tutorials, User Guide)]]> http://www.zenphoto.org/news/using-elfinder Zenphoto features a file manager plugin named elFinder for files outside the gallery and its albums. To use it on content fields like descriptions etc. you also need to enable the TinyMCE plugin. On the elFinder plugin options you also need to enable it for usage with TinyMCE.

You can then upload, delete and manage files. The files are stored within the root /uploaded folder.

If enabled, the elFinder is available on the Upload tab.


You can also access elFinder via the text editor TinyMCE (example here is a Zenpage article).


Depending on what you wish to insert you can use the insert link or insert/edit image button to access it.


We will be using the insert/edit image button. After clicking the file button above you get the elFinder window.


elFinder offers various tools to manage files via the toolbar above or the context menu.


Note that whenever you use elFinder you work directly on the items on the file system. Actions like sizing are destructive.

You can select several items but you can only insert one at a time via TinyMCE. 


After you double clicked on your selection the link appears in the TinyMCE dialog window.


You can then set some extra settings. After clicking "Ok" the image is inserted.


http://www.zenphoto.org/news/using-elfinder Sat, 31 Aug 2013 12:00:38 -0400
<![CDATA[nginx rewrite rules tutorial (Development, FAQ, Installation & Upgrade, Tutorials, User Guide)]]> http://www.zenphoto.org/news/nginx-rewrite-rules-tutorial Rewrite rules for Zenphoto 1.4.5+

Nginx rules for Zenphoto 1.4.5 have been greatly simplified. In your server { } block, add:


location / {
    try_files $uri $uri/ /index.php?$args;

Or for a subdirectory:

location /subfolder {
    try_files $uri $uri/ /subfolder/index.php?$args;

Rewrite rules for older releases:

http://www.zenphoto.org/news/nginx-rewrite-rules-tutorial Thu, 01 Aug 2013 13:42:04 -0400
<![CDATA[Zenphoto image metadata processing (FAQ, Troubleshooting, User Guide)]]> http://www.zenphoto.org/news/zenphoto-image-metadata-processing Whenever a new image is discovered Zenphoto attempts to populate certain object properties from the metadata associated with the image. Images may contain both EXIF and IPTC metadata. Zenphoto uses the formal specifications for these metadata to determine which object properties are set:

NOTE: populating Zenphoto object properties is in addition to storing the EXIF and IPTC fields in the object. It is a service to try to populate commonly used properties from the image data.

Often multiple metadata fields will map onto a single property. In this case Zenphoto applies a precedence order to the metadata, using the highest precedence field discovered. This may cause unfortunate effects when cameras or image processing software has used these fields for their own purpose. It is always possible to disable Zenphoto from using such fields.

One other source of confusion is the unfortunate naming of the EXIF "title" field. According to the EXIF specification this is the "image description". Zenphoto honors the definition of the field.

The following is the precedence processing order for mapping metadata to Zenphoto properties:

Zenphoto date

  1. IPTC Date Created+IPTC Time Created
  2. EXIF Date Time
  3. EXIF Date Time Original
  4. EXIF Date Time Digitized
  5. the image filemtime

Zenphoto title

  1. IPTC Object Name
  2. IPTC Image Headline
  3. the image filename with the suffix stripped off

Zenphoto description

  1. IPTC Image Caption

Zenphoto location

  1. IPTC SubLocation

Zenphoto city

  1. IPTC City

Zenphoto state

  1. IPTC State

Zenphoto country

  1. IPTC Location Name

Zenphoto credit

  1. IPTC ByLine
  2. IPTC ImageCredit
  3. IPTC Source

Zenphoto copyright

  1. IPTC Copyright
http://www.zenphoto.org/news/zenphoto-image-metadata-processing Sat, 29 Jun 2013 20:37:45 -0400