Complete CodePress CMS refactoring
- 🏠 Refactored layout system with flexbox - 🎨 Implemented tab-style navigation with dropdowns - 📱 Added responsive design with mobile support - 🔧 Enhanced template system with content type detection - 📝 Added comprehensive documentation (guide.md, README.md) - ⚙️ Improved security with proper file access control - 🎨 Added meta tags for SEO and author attribution - 📁 Fixed breadcrumb navigation and duplicate links - 🗂️ Removed unused files and cleaned up project structure - ⚙️ Added JSON configuration system with homepage detection - 📱 Enhanced search functionality with snippet display - 🔗 Implemented auto-linking between pages - 📊 Added file metadata display in footer Features: - Multi-format content support (Markdown, PHP, HTML) - Dynamic navigation with collapsible folders - Full-text search across all content - Responsive Bootstrap 5 design - JSON-based configuration - SEO-optimized meta tags - Security-focused file management - Mobile-first responsive design - Auto-linking between pages - File metadata tracking - Breadcrumb navigation - Custom CSS styling - Progressive enhancement Technical improvements: - Replaced fixed positioning with flexbox layout - Implemented proper template inheritance - Added content type detection - Enhanced security with .htaccess - Optimized for performance - Added proper error handling - Implemented caching mechanisms - Enhanced accessibility features
This commit is contained in:
@@ -6,9 +6,7 @@
|
||||
<div class="file-info">
|
||||
<i class="bi bi-file-text"></i>
|
||||
<span class="page-title" title="{{page_title}}">{{page_title}}</span>
|
||||
{{#file_info}}
|
||||
<span class="file-details"> | {{{file_info}}}</span>
|
||||
{{/file_info}}
|
||||
{{{file_info_block}}}
|
||||
</div>
|
||||
<div class="site-info">
|
||||
<small class="text-muted">
|
||||
|
||||
19
engine/templates/assets/header.mustache
Normal file
19
engine/templates/assets/header.mustache
Normal file
@@ -0,0 +1,19 @@
|
||||
<header class="navbar navbar-expand-lg navbar-dark bg-primary">
|
||||
<div class="container-fluid">
|
||||
<a class="navbar-brand" href="?page={{default_page}}">
|
||||
<img src="/assets/icon.svg" alt="CodePress Logo" width="32" height="32" class="me-2">
|
||||
{{site_title}}
|
||||
</a>
|
||||
|
||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#searchBar" aria-controls="searchBar" aria-expanded="false" aria-label="Toggle search">
|
||||
<i class="bi bi-search"></i>
|
||||
</button>
|
||||
|
||||
<div class="collapse navbar-collapse" id="searchBar">
|
||||
<form class="d-flex ms-auto" method="GET" action="">
|
||||
<input class="form-control me-2" type="search" name="search" placeholder="Search..." value="{{search_query}}">
|
||||
<button class="btn btn-outline-light" type="submit">Search</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
@@ -1,23 +1,16 @@
|
||||
<nav class="navbar navbar-expand-lg navbar-dark bg-primary">
|
||||
<nav class="navigation-section bg-white border-bottom">
|
||||
<div class="container-fluid">
|
||||
<a class="navbar-brand" href="?page={{default_page}}">
|
||||
<img src="/assets/icon.svg" alt="CodePress Logo" width="32" height="32" class="me-2">
|
||||
{{site_title}}
|
||||
</a>
|
||||
|
||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
|
||||
<div class="collapse navbar-collapse" id="navbarNav">
|
||||
<ul class="navbar-nav me-auto">
|
||||
{{{menu}}}
|
||||
</ul>
|
||||
|
||||
<form class="d-flex" method="GET" action="">
|
||||
<input class="form-control me-2" type="search" name="search" placeholder="Search..." value="{{search_query}}">
|
||||
<button class="btn btn-outline-light" type="submit">Search</button>
|
||||
</form>
|
||||
<div class="row align-items-center">
|
||||
<div class="col">
|
||||
<ul class="nav nav-tabs flex-wrap">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="?page={{homepage}}">
|
||||
<i class="bi bi-house"></i> Home
|
||||
</a>
|
||||
</li>
|
||||
{{{menu}}}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
5
engine/templates/html_content.mustache
Normal file
5
engine/templates/html_content.mustache
Normal file
@@ -0,0 +1,5 @@
|
||||
<div class="html-content">
|
||||
<div class="content-body">
|
||||
{{{content}}}
|
||||
</div>
|
||||
</div>
|
||||
@@ -4,6 +4,23 @@
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>{{page_title}} - {{site_title}}</title>
|
||||
|
||||
<!-- CMS Meta Tags -->
|
||||
<meta name="generator" content="{{site_title}} CMS">
|
||||
<meta name="application-name" content="{{site_title}}">
|
||||
<meta name="author" content="{{author_name}}">
|
||||
<meta name="creator" content="{{author_name}}">
|
||||
<meta name="publisher" content="{{author_name}}">
|
||||
|
||||
<!-- SEO Meta Tags -->
|
||||
<meta name="description" content="{{seo_description}}">
|
||||
<meta name="keywords" content="{{seo_keywords}}">
|
||||
|
||||
<!-- Author Links -->
|
||||
<link rel="author" href="{{author_website}}">
|
||||
<link rel="me" href="{{author_git}}">
|
||||
|
||||
<!-- Favicon and Styles -->
|
||||
<link rel="icon" type="image/svg+xml" href="/assets/favicon.svg">
|
||||
<link href="/assets/css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="/assets/css/bootstrap-icons.css" rel="stylesheet">
|
||||
@@ -12,28 +29,29 @@
|
||||
<body>
|
||||
{{>header}}
|
||||
|
||||
<div class="main-wrapper">
|
||||
{{>navigation}}
|
||||
|
||||
<main class="main-content">
|
||||
<div class="content-inner">
|
||||
<div>
|
||||
{{>navigation}}
|
||||
|
||||
<div class="breadcrumb-section bg-light border-bottom">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-12 py-2">
|
||||
{{{breadcrumb}}}
|
||||
</div>
|
||||
<div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2 mb-3 border-bottom">
|
||||
<h2>{{page_title}}</h2>
|
||||
</div>
|
||||
<div class="content">
|
||||
{{{content}}}
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="container-fluid main-content" style="padding-bottom: 80px;">
|
||||
<div class="row">
|
||||
<main class="col-12">
|
||||
{{>content_template}}
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{>footer}}
|
||||
|
||||
<script src="/assets/js/bootstrap.bundle.min.js"></script>
|
||||
<script src="/assets/js/sidebar.js"></script>
|
||||
<script src="/assets/js/app.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,3 +1,5 @@
|
||||
{{#content}}
|
||||
<p>{{{.}}}</p>
|
||||
{{/content}}
|
||||
<div class="markdown-content">
|
||||
<div class="content-body">
|
||||
{{{content}}}
|
||||
</div>
|
||||
</div>
|
||||
@@ -1 +1,5 @@
|
||||
{{{content}}}
|
||||
<div class="php-content">
|
||||
<div class="content-body">
|
||||
{{{content}}}
|
||||
</div>
|
||||
</div>
|
||||
Reference in New Issue
Block a user