General parameters
Configuration files
To configure White Pages, you need to create a local configuration file named config.inc.local.php in /etc/white-pages/. For example:
<?php
// Override config.inc.php parameters below
?>
White Pages default configuration file is /etc/white-pages/config.inc.php. It includes config.inc.local.php. Consequently, you can override all parameters in config.inc.local.php. This prevents you to be disturbed by an upgrade.
Warning
Do not copy config.inc.php into config.inc.local.php, as the first one includes the second.
You would then create an infinite loop and crash your application.
Multi tenancy
You can load a specific configuration file by passing a HTTP header. This feature is disabled by default. To enable it:
$header_name_extra_config = "WP-Extra-Config";
Then if you send the header WP-Extra-Config: domain1, the file
/etc/white-pages/config.inc.domain1.php will be loaded.
Using Apache, we may set such header using the following:
<VirtualHost *:80>
ServerName wp.domain1.com
RequestHeader setIfEmpty WP-Extra-Config domain1
# ...
</VirtualHost>
Using Nginx, we could use instead:
server {
# ...
location ~ \.php {
fastcgi_param WP-Extra-Config domain1;
# ...
}
}
Language
Tip
Lang is selected from browser configuration. If no matching language is found, the default language is used.
Set default language in $lang:
$lang = "en";
Available languages are:
English (en)
French (fr)
Italian (it)
Japanese (ja)
Tip
You can override messages by creating lang files in configuration directory:
conf/directory for white-pages archive/etc/white-pagesdirectory for rpm/deb packages
For example, you can create a customized file: /etc/white-pages/en.inc.php.
In order to restrict languages to a specific set add $allowed_lang array as follows:
$allowed_lang = array("en");
Dates
You can adapt how dates are displayed with specifiers (see strftime reference):
$date_specifiers = "%Y-%m-%d %H:%M:%S (%Z)";
Graphics
Logo
You can change the default logo with your own. Set the path to your logo in $logo:
$logo = "images/ltb-logo.png";
Background
You can change the background image with your own. Set the path to image in $background_image:
$background_image = "images/unsplash-space.jpeg";
Favicon
You can change the favicon with your own. Set the path to your favicon in $favicon:
$favicon = "images/favicon.ico";
Hover effect
You can define which Hover effect is applied to search result and gallery boxes:
$hover_effect = "grow";
Custom CSS
To easily customize CSS, you can use a separate CSS file:
$custom_css = "css/custom.css";
Custom templates
If you need to do more changes on the interface, you can create a custom templates directory
and override any of template file by copying it from templates/ into the custom directory
and adapt it to your needs:
$custom_tpl_dir = "templates_custom/";
To define a custom template paramter, create a config parameter with tpl_ prefix:
$tpl_mycustomparam = true;
And then use it in template:
<div>
{if $mycustomparam}
<p>Display this</p>
{else}
<p>Display that</p>
{/if}
Default page
By default, the welcome page is displayed. To change this:
$default_page = "gallery";
Debug
You can turn on debug mode with $debug:
$debug = true;
You can adjust the debug level by using PHP predefined constants in $debug_level:
$debug_level = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED;
Tip
Debug messages will be printed in server logs.
This is also possible to enable Smarty debug, for web interface issues:
$smarty_debug = true;
Tip
Debug messages will appear on web interface.
Smarty
You need to define where Smarty is installed:
define("SMARTY", "/usr/share/php/smarty3/Smarty.class.php");
You can also configure cache directories:
$smarty_compile_dir = "/var/cache/white-pages/templates_c";
$smarty_cache_dir = "/var/cache/white-pages/cache";
Tip
These directories must be writable by system user running the php code.