50 lines
2.1 KiB
PHP
50 lines
2.1 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Head Partial (v6)
|
|
*
|
|
* This file includes metadata, stylesheets, and scripts necessary for rendering the site.
|
|
* Implements improved error handling to prevent undefined variable issues and corrects file path references.
|
|
*/
|
|
|
|
// Ensure all optional configurations have default values
|
|
$heroConfig = $heroConfig ?? ['enabled' => false];
|
|
$sliderConfig = $sliderConfig ?? ['enabled' => false];
|
|
$sidebarConfig = $sidebarConfig ?? ['enabled' => false];
|
|
$pageId = $pageId ?? null;
|
|
|
|
?>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title><?php echo $title ?? 'Wizdom Networks'; ?></title>
|
|
|
|
<!-- Bootstrap CSS with Fallback -->
|
|
<link rel="stylesheet"
|
|
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css"
|
|
onerror="this.onerror=null;this.href='/assets/bootstrap/css/bootstrap.min.css';">
|
|
|
|
<!-- Main Stylesheets -->
|
|
<link rel="stylesheet" href="/assets/css/main.css">
|
|
<link rel="stylesheet" href="/assets/css/utilities.css">
|
|
|
|
<!-- Conditionally Load Component Stylesheets -->
|
|
<?php if (!empty($heroConfig) && isset($heroConfig['enabled']) && $heroConfig['enabled']) : ?>
|
|
<link rel="stylesheet" href="/assets/css/hero.css">
|
|
<?php endif; ?>
|
|
<?php if (!empty($sliderConfig) && isset($sliderConfig['enabled']) && $sliderConfig['enabled']) : ?>
|
|
<link rel="stylesheet" href="/assets/css/slider.css">
|
|
<?php endif; ?>
|
|
<?php if (!empty($sidebarConfig) && isset($sidebarConfig['enabled']) && $sidebarConfig['enabled']) : ?>
|
|
<link rel="stylesheet" href="/assets/css/sidebar.css">
|
|
<?php endif; ?>
|
|
|
|
<!-- Load Page-Specific Styles if Defined and File Exists -->
|
|
<?php
|
|
$pageCssFile = "/assets/css/" . htmlspecialchars($pageId, ENT_QUOTES, 'UTF-8') . ".css";
|
|
if (!empty($pageId) && file_exists($_SERVER['DOCUMENT_ROOT'] . $pageCssFile)) : ?>
|
|
<link rel="stylesheet" href="<?php echo $pageCssFile; ?>">
|
|
<?php endif; ?>
|
|
|
|
<!-- Favicon -->
|
|
<link rel="icon" type="image/png" href="/assets/images/favicon.png">
|