generate page title based on page data
authorEduardo <[email protected]>
Sat, 11 Nov 2023 12:28:35 +0000 (13:28 +0100)
committerEduardo <[email protected]>
Sat, 11 Nov 2023 12:28:35 +0000 (13:28 +0100)
page-generator/index.php

index d6df73d6bac70d5d60cc8fe80f7a7d28ef5a7e44..86830c696cf317ea9aa278cd57dad20eca250cfe 100644 (file)
@@ -6,6 +6,7 @@ require_once("generator.php");
 const URL = "http://localhost:8000";
 const BASE_PATH_TEMP = "../generated_temp";
 const SRC_PATH = "../src";
+const PAGE_TITLE = "TheRiceGoat";
 
 $generator = new CodeGenerator();
 
@@ -141,8 +142,7 @@ mkdir(BASE_PATH_TEMP . "/pages");
 $generator->generateFoldersForPages($page_array, BASE_PATH_TEMP . "/pages");
 
 // generate each page
-$generator->setTemplateVar($head_path, "lang-code", "en");
-$generator->setTemplateVar($head_path, "page-title", "TheRiceGoat");
+$tmp_head = $generator->setTemplateVar($head_path, "lang-code", "en");
 
 // populate an array with path => title
 $path_title = [];
@@ -156,13 +156,21 @@ $page_list = json_decode($page_list, true);
 foreach ($page_list as $page) {
     $page_path = BASE_PATH_TEMP . "/pages/" . $page['path'] . "/index.html";
 
+    // put page title in header
+    if (!empty($path_title[$page['path']]))
+        $formed_head = $generator->setTemplateVar($tmp_head, "page-title", $path_title[$page['path']] . " | " . PAGE_TITLE);
+    else
+        $formed_head = $generator->setTemplateVar($tmp_head, "page-title", PAGE_TITLE);
+
     // put headers
-    $generator->writeToFile($page_path, file_get_contents($head_path));
+    $generator->writeToFile($page_path, $formed_head);
     $generator->writeToFile($page_path, file_get_contents($header_path));
     $generator->writeToFile($page_path, '<section id="content" class="' . $page["type"] . '">');
 
-    // put title
-    $generator->writeToFile($page_path, '<h1>' . $path_title[$page['path']] . '</h1>');
+    // add title if any
+    if (!empty($path_title[$page['path']])) {
+        $generator->writeToFile($page_path, '<h1>' . $path_title[$page['path']] . '</h1>');
+    }
 
     // get page data
     $page_data = file_get_contents(URL . '?sheet=' . $page['path']);