Using Zenpage

Assigning a specific user to a page or article

This is the way if you are the master admin and want to set up something for users with lower rights:

  1. Create a user with rights for one album and Zenpage rights.
  2. Create a new page/article as master admin for that user.
  3. Now select the user the page/article should belong to from the author dropdown.
  4. Now set the page/article to locked for changes and save it. Then only admins with full admin rights or that user will be able to edit or delete that page. For all others the link and the icon buttons should be grayed out.
Note that every user with Zenpage rights can set every page or article locked for changes himself that is not already locked for changes. It does not matter if he is the original author or not.

titlelink (name) vs title

The  titlelink is the name of an article, category or page and is independent from the title. Technically (...)

Working with albums and images

Is there any limit to the number of images?

There are no limits to the number of images Zenphoto can display in a gallery or album. Zenphoto is file system based and unique in that it scales relatively well due to its simple design. The speed of the gallery is dependent on a few minor things, namely the number of images in any given album.
Zenphoto should be able to handle any number of images in the entire gallery ”“ it will help greatly with performance if they are separated into smaller albums. Even then, single albums with 2000+ photos are possible and will still be usable.

If you're having trouble with the speed of large galleries, try using the static_html_cache plugin to cache Zenphoto pages. Frequently loaded pages will be much faster.

Is it possible to remove the filename extension from image names in the URL?

No, the unique identifier to find the photo requested is the actual filename, and the only way to get that is from the URL, so it must contain the filename. That's just (...)

Problems with albums and images

Thumbnails/sized images are not generated and/or the server crashes

Server memory issues
If you're running a web server on a VPS or other resource-limited environment, then you might not have enough memory available to the server to process very large images. You can use the following table as a guideline to see how much memory you need available to process images of different sizes:
  • VGA Image, 640 x 480 pixels => needs ~4.1 MB Memory
  • SVGA Image, 800 x 600 pixels => needs ~4.8 MB Memory
  • 1 MP Image, 1024 x 798 pixels => needs ~6.3 MB Memory
  • 2 MP Image, 1600 x 1200 pixels => needs ~11.7 MB Memory
  • 6 MP Image, 2816 x 2112 pixels => needs ~22.6 MB Memory
  • 8.2 MP Image, 3571 x 2302 pixels => needs ~41.7 MB Memory
As you can see, the 8.2-Megapixel 3571x2302 image requires a very large amount of memory to (...)

Using external sources

Administrating images hosted on another server

Zenphoto unfortunately does not support this. Zenphoto must be installed on the same server as the photos it is hosting. This is what we recommend.
Even if this was possible, it would be very slow as Zenphoto is filesystem-based and uses many filesystem operations, and doing that over a network would slow things down significantly.

Using videos from Youtube or other portals

Zenphoto is actually meant to manage multimedia files on your own webspace but since Zenphoto 1.2.6 there is indeed a way:
  1. Enable the class-textobject plugin on the backend plugins page.
  2. Upload a plain text file (.txt) with code to embed a specifc (video) file via ftp or the backend.
  3. To use an thumbnail besides the default one follow the same instructions as for video thumbnails.
  4. That's all.


How caching works

There are several different caches:
Image cache

Zenphoto does not touch the original full images you uploaded to the albums directory. But it does cache the resized images like thumbs, sized images or any other sized images so they don't have to be generated any time again.

Zenphoto also caches sizes images if they already in the size of the original full image. It does this prevent overhead checking this everytime if it needs to be cached. If available on your server Zenphoto will use symlinks to those already same sized instead of copying the image again (unless a watermark is set).

Zenphoto creates these cached files on the fly. This means they are not preliminary created but on request, e.g. if someone visits a page of your site. Depending on the dimensions of your images and your server's power this might result in an initial delay once.

Those images are stored in the root /cache folder. You can (...)

Problems with languages

Difficulties with zenphoto language translations

There are several problems you might be having with language translations:

There is no language selection for my desired language

Zenphoto relies on volunteers to translate each release. We have a large number of dedicated individuals making translations. There may be a translation for your language which was not avaiable in time for the zenphoto release. You can check by reviewing onGItHub the current master branch or the development branch for the next release. If you language does not exist there, consider volunteering to produce it. For details see ourtranslation tutorial.

There are phrases which are displayed in English even though I have selected a different language

Zenphoto is an ever evolving software. We will occasionally include a translation that is not 100% complete feeling that something is better than nothing. (...)

Using plugins and third party features

Installing third party plugins


Official plugin and extensions resided within /zp-core/zp-extensions. You should never install third party plugins there. Instead you need to install them within the root /plugins folders.

Zenphoto plugins consist at least of one file  <pluginname>.php. It may optionally use a folder of its same name within the plugins folder that contains further files like extra functions, css files or images. Example:

plugins/<yourplugin>/ (contains additional files needed by your plugin)

If you download a (third party) plugin and uncompress (unzip) it you will often have the file or the file and folder within another folder. Don't upload that folder but its content as shown above to the /plugins folder directly. The third party plugin should now show up on the plugins tab on the backend.


Not all themes are already setup with all plugin features because they are (...)

Login and password problems

What is the link to login to the backend?

  1. modrewrite support: <path to your installation>/admin
  2. no modrewrite: <path to your installation>/zp-core/admin.php

Forgotten admin password

  1. If you supplied an email address in the Admin options there should be a Captcha string image on the log-on page. Entering that string as the log-on password will email you a link to reset your password.
  2. If the Captcha is not there, or if you don't get the email, you need to delete the Administrators table in your database and re-run setup.

Problems logging into the adminbackend

First please review "Forgotten admin password" above. If you are still having problems after following that advice you will have to enable some debugging to allow the developers to observe what is happening when you attempt your login. Locate your site's global-definitions.php file. Using a text editor find the line which contains

define('DEBUG_LOGIN', false); // set to true to log admin saves and login attempts


Site protection

Image hotlinking protection

Although Zenphoto has an option for image protection it does only protect from getting the (full) image link from your gallery site itself but not prevent real hotlinking from outside. Everyone who knows how Zenphoto stores images can find out the direct link with ease.

You can change the location for your albums by modifying the zp-config.php file. There is comentary in the file that will guide you in making such a change. Please carefully note the comments, specially for "external" album folders. Also note that server filesystem permissions settings may prevent you from making these changes.

So, to really protect your images from hotlinking you need to use .htaccess (if you server supports this). Here is a little generator tool for this: We additionally have prepared a (...)

Installation problems

Notes about deprecated functions

In the process of adding features and improving Zenphoto we occasionally find we need to change the way something has worked in the past. Thus we may make some theme functions obsolete. When this happens we try to maintain the old function name to keep un-migrated themes working. But we move these functions to a plugin named deprecated-functions so that sites which are up-to-date do not have the overhead of having them loaded each page refresh. This plugin will cause an error notification upon use of the function so that you will know your theme needs to be updated. Generally this notification will explain the update need is.

These messages can be annoying once you know that theme modification is needed. So, the plugin also has options that let you disable the message on those functions that you recognize need replacing. Disable the message and your theme will work as it did in the prior release. But NOTE: The implementation of the (...)