Add option to set a locale
As mentioned in https://www.php.net/manual/en/function.basename.php both basename() and dirname() are locale aware. An incorrect locale can cause the page tree to behave in strange ways. For example the structure /über-uns |-index.md |-impressum.md could lead to the page impressum not being a child of über-uns.
This commit is contained in:
parent
1aca13e83d
commit
b2df860546
2 changed files with 6 additions and 0 deletions
|
@ -7,6 +7,7 @@ base_url: ~ # Pico will try to guess its base URL, if th
|
||||||
rewrite_url: ~ # A boolean (true or false) indicating whether URL rewriting is forced
|
rewrite_url: ~ # A boolean (true or false) indicating whether URL rewriting is forced
|
||||||
debug: ~ # Set this to true to enable Pico's debug mode
|
debug: ~ # Set this to true to enable Pico's debug mode
|
||||||
timezone: ~ # Your PHP installation might require you to manually specify a timezone
|
timezone: ~ # Your PHP installation might require you to manually specify a timezone
|
||||||
|
locale: ~ # Your PHP installation might require you to manually specify a locale to use
|
||||||
|
|
||||||
##
|
##
|
||||||
# Theme
|
# Theme
|
||||||
|
|
|
@ -936,6 +936,7 @@ class Pico
|
||||||
'rewrite_url' => null,
|
'rewrite_url' => null,
|
||||||
'debug' => null,
|
'debug' => null,
|
||||||
'timezone' => null,
|
'timezone' => null,
|
||||||
|
'locale' => null,
|
||||||
'theme' => 'default',
|
'theme' => 'default',
|
||||||
'theme_config' => null,
|
'theme_config' => null,
|
||||||
'theme_meta' => null,
|
'theme_meta' => null,
|
||||||
|
@ -974,6 +975,10 @@ class Pico
|
||||||
}
|
}
|
||||||
date_default_timezone_set($this->config['timezone']);
|
date_default_timezone_set($this->config['timezone']);
|
||||||
|
|
||||||
|
if ($this->config['locale'] !== null) {
|
||||||
|
setlocale(LC_ALL, $this->config['locale']);
|
||||||
|
}
|
||||||
|
|
||||||
if (!$this->config['plugins_url']) {
|
if (!$this->config['plugins_url']) {
|
||||||
$this->config['plugins_url'] = $this->getUrlFromPath($this->getPluginsDir());
|
$this->config['plugins_url'] = $this->getUrlFromPath($this->getPluginsDir());
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in a new issue