diff --git a/system/src/Grav/Common/Language/Language.php b/system/src/Grav/Common/Language/Language.php index 6c31b9e0f..344f30751 100644 --- a/system/src/Grav/Common/Language/Language.php +++ b/system/src/Grav/Common/Language/Language.php @@ -46,6 +46,7 @@ class Language public function init() { $this->default = reset($this->languages); + $this->page_extensions = null; if (empty($this->languages)) { $this->enabled = false; diff --git a/system/src/Grav/Common/Page/Page.php b/system/src/Grav/Common/Page/Page.php index 522d8117b..b39009a13 100644 --- a/system/src/Grav/Common/Page/Page.php +++ b/system/src/Grav/Common/Page/Page.php @@ -126,6 +126,17 @@ class Page implements PageInterface { $config = Grav::instance()['config']; + // some extension logic + if (empty($extension)) { + $this->extension('.' . $file->getExtension()); + } else { + $this->extension($extension); + } + + // extract page language from page extension + $language = trim(basename($this->extension(), 'md'), '.') ?: null; + $this->language($language); + $this->hide_home_route = $config->get('system.home.hide_in_urls', false); $this->home_route = $this->adjustRouteCase($config->get('system.home.alias')); $this->filePath($file->getPathName()); @@ -142,16 +153,6 @@ class Page implements PageInterface $this->published(); $this->urlExtension(); - // some extension logic - if (empty($extension)) { - $this->extension('.' . $file->getExtension()); - } else { - $this->extension($extension); - } - - // extract page language from page extension - $language = trim(basename($this->extension(), 'md'), '.') ?: null; - $this->language($language); return $this; } diff --git a/system/src/Grav/Common/Page/Pages.php b/system/src/Grav/Common/Page/Pages.php index 79b743364..151338e0b 100644 --- a/system/src/Grav/Common/Page/Pages.php +++ b/system/src/Grav/Common/Page/Pages.php @@ -1051,7 +1051,7 @@ class Pages $folders = []; $page_found = null; - $page_extension = ''; + $page_extension = '.md'; $last_modified = 0; $iterator = new \FilesystemIterator($directory);