diff --git a/CHANGELOG.md b/CHANGELOG.md index baa11a3..223b536 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ Released: - ``` * [New] Add Pico's social icons to default theme +* [Fixed] Fix handling of non-YAML 1-line front matters ``` ### Version 1.0.3 diff --git a/lib/Pico.php b/lib/Pico.php index dab794a..d88568a 100644 --- a/lib/Pico.php +++ b/lib/Pico.php @@ -777,7 +777,14 @@ class Pico if (preg_match($pattern, $rawContent, $rawMetaMatches) && isset($rawMetaMatches[3])) { $yamlParser = new \Symfony\Component\Yaml\Parser(); $meta = $yamlParser->parse($rawMetaMatches[3]); - $meta = ($meta !== null) ? array_change_key_case($meta, CASE_LOWER) : array(); + + if ($meta !== null) { + // the parser may return a string for non-YAML 1-liners + // assume that this string is the page title + $meta = is_array($meta) ? array_change_key_case($meta, CASE_LOWER) : array('title' => $meta); + } else { + $meta = array(); + } foreach ($headers as $fieldId => $fieldName) { $fieldName = strtolower($fieldName);