This commit is contained in:
Ty Clifford
2026-07-03 07:31:09 -04:00
commit cebb0d3af1
800 changed files with 89782 additions and 0 deletions
+596
View File
@@ -0,0 +1,596 @@
/* ========================================
CSS CUSTOM PROPERTIES - Light Mode (Default)
======================================== */
:root {
/* Neutral Monochrome Colors */
--primary: #2c2c2c;
--primary-dark: #1e1e1e;
--primary-darker: #111111;
--primary-gradient: #2c2c2c;
--primary-gradient-hover: #1e1e1e;
/* Neutral Colors */
--text-primary: #333333;
--text-secondary: #6c757d;
--text-muted: #adb5bd;
--bg-body: #ffffff;
--bg-card: #ffffff;
--bg-hover: #f8f9fa;
--border-color: #e9ecef;
--border-subtle: #dee2e6;
/* Shadows */
--shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
--shadow-md: 0 4px 16px rgba(0, 0, 0, 0.12);
--shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.15);
--shadow-hover: 0 6px 20px rgba(0, 0, 0, 0.2);
/* Spacing Scale */
--space-xs: 0.5rem;
--space-sm: 1rem;
--space-md: 1.5rem;
--space-lg: 2rem;
--space-xl: 3rem;
/* Border Radius */
--radius-sm: 8px;
--radius-md: 12px;
--radius-lg: 16px;
/* Typography */
--font-size-base: 1rem;
--font-size-sm: 0.875rem;
--font-size-xs: 0.75rem;
--font-size-lg: 1.125rem;
--font-size-xl: 1.25rem;
--line-height-base: 1.6;
/* Code Blocks */
--code-bg: #f8f9fa;
--code-text: #333;
--code-border: #e9ecef;
}
/* ========================================
BASE STYLES
======================================== */
html {
position: relative;
min-height: 100%;
scroll-behavior: smooth;
}
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
padding-top: 42px;
margin-bottom: 42px;
background-color: var(--bg-body);
color: var(--text-primary);
transition: background-color 0.3s ease, color 0.3s ease;
font-size: var(--font-size-base);
line-height: var(--line-height-base);
}
section {
padding: 150px 0;
}
img {
max-width: 100%;
height: auto;
}
/* ========================================
FORM INPUTS
======================================== */
input,
textarea,
select,
.form-control {
background-color: #ffffff !important;
color: var(--text-primary) !important;
border-color: var(--border-color);
}
/* ========================================
LINKS
======================================== */
a {
color: var(--primary);
text-decoration: none;
transition: color 0.3s ease;
}
a:hover {
color: var(--primary-dark);
text-decoration: none;
}
a:focus {
outline: 2px solid var(--primary);
outline-offset: 2px;
}
/* ========================================
TYPOGRAPHY
======================================== */
h1.title,
h2.title {
font-size: 2.3rem;
font-weight: 600;
color: var(--text-primary);
margin-bottom: var(--space-md);
}
/* ========================================
CODE BLOCKS
======================================== */
pre,
code {
background: var(--code-bg);
color: var(--code-text);
border-radius: var(--radius-sm);
transition: background-color 0.3s ease, color 0.3s ease;
}
pre {
border-left: 3px solid var(--primary);
padding: var(--space-md);
overflow-x: auto;
}
code {
display: inline-block;
padding: 0.2em 0.5em;
line-height: 1.4em;
font-size: 0.9em;
}
/* ========================================
TABLES
======================================== */
table {
empty-cells: show;
border: 1px solid var(--border-color);
width: 100%;
font-size: 0.9em;
margin-bottom: var(--space-md);
border-radius: var(--radius-sm);
overflow: hidden;
}
thead {
background: var(--primary);
color: #ffffff;
text-align: left;
vertical-align: bottom;
}
tr {
display: table-row;
vertical-align: inherit;
border-color: var(--border-color);
transition: background-color 0.2s ease;
}
tbody tr:hover {
background-color: var(--bg-hover);
}
th,
td {
padding: 0.75em 1em;
border-bottom: 1px solid var(--border-color);
}
/* ========================================
BLOCKQUOTES
======================================== */
blockquote {
padding: var(--space-md) var(--space-lg);
margin: 0 0 var(--space-lg) var(--space-lg);
border-left: 4px solid var(--primary);
font-style: italic;
background-color: var(--bg-hover);
border-radius: var(--radius-sm);
color: var(--text-secondary);
}
/* ========================================
NAVBAR
======================================== */
.navbar-modern {
background: var(--primary) !important;
box-shadow: var(--shadow-md);
transition: all 0.3s ease;
padding-top: 0.25rem;
padding-bottom: 0.25rem;
min-height: 42px;
}
.navbar-brand {
font-weight: 600;
font-size: 1rem;
transition: transform 0.3s ease;
}
.navbar-brand:hover {
transform: translateY(-2px);
}
.navbar .nav-link {
font-size: 0.825rem;
font-weight: 500;
color: rgba(255, 255, 255, 0.9) !important;
padding: 0.3rem 0.75rem;
border-radius: var(--radius-sm);
transition: all 0.3s ease;
}
.navbar .nav-link:hover {
background-color: rgba(255, 255, 255, 0.15);
color: #ffffff !important;
}
.navbar .nav-link.active {
background-color: rgba(255, 255, 255, 0.2);
color: #ffffff !important;
}
img.nav-svg-icon {
width: 1.2rem;
height: 1.2rem;
filter: brightness(0) invert(1);
opacity: 0.9;
transition: opacity 0.3s ease;
}
.nav-link:hover img.nav-svg-icon {
opacity: 1;
}
/* ========================================
CARDS - Modern Design
======================================== */
.card-modern {
background: transparent;
border: none;
border-bottom: 1px solid var(--border-color);
padding-bottom: var(--space-xl);
margin-bottom: var(--space-xl);
}
.card-modern .card-img-top {
border-radius: var(--radius-sm);
}
.card-modern .card-body {
padding: 0;
margin-top: var(--space-md);
}
.card-modern .title {
color: var(--text-primary);
}
/* ========================================
BUTTONS
======================================== */
.btn-primary-gradient {
background: var(--primary);
border: none;
color: white;
padding: 0.75rem 1.5rem;
border-radius: var(--radius-sm);
font-weight: 600;
font-size: var(--font-size-base);
transition: all 0.3s ease;
box-shadow: var(--shadow-sm);
display: inline-flex;
align-items: center;
gap: 0.5rem;
}
.btn-primary-gradient:hover {
background: var(--primary-dark);
box-shadow: var(--shadow-hover);
transform: translateY(-2px);
color: white;
text-decoration: none;
}
.btn-primary-gradient:focus {
outline: 2px solid var(--primary);
outline-offset: 2px;
}
.btn-outline-primary-custom {
border: 2px solid var(--primary);
color: var(--primary);
background: transparent;
padding: 0.6rem 1.5rem;
border-radius: var(--radius-sm);
font-weight: 600;
transition: all 0.3s ease;
}
.btn-outline-primary-custom:hover {
background: var(--primary);
color: white;
transform: translateY(-2px);
}
/* ========================================
FOOTER
======================================== */
footer.footer-modern {
position: absolute;
bottom: 0;
width: 100%;
min-height: 42px;
line-height: 1.5;
background: var(--primary);
color: white;
padding: 0.6rem 0;
box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.1);
font-size: var(--font-size-xs);
}
footer.footer-modern a {
color: rgba(255, 255, 255, 0.9);
transition: color 0.3s ease;
}
footer.footer-modern a:hover {
color: #ffffff;
}
.mini-logo {
height: 24px;
vertical-align: middle;
filter: brightness(0) invert(1);
}
/* ========================================
METADATA (Dates, Reading Time)
======================================== */
.metadata {
color: var(--text-secondary);
font-size: var(--font-size-sm);
display: flex;
flex-wrap: wrap;
gap: var(--space-md);
align-items: center;
}
.metadata i {
color: var(--text-secondary);
margin-right: 0.25rem;
}
/* ========================================
PAGINATION
======================================== */
.pagination .page-link {
background: var(--bg-card);
border: 1px solid var(--border-color);
color: var(--primary);
padding: 0.6rem 1.2rem;
border-radius: var(--radius-sm);
font-weight: 500;
transition: all 0.3s ease;
}
.pagination .page-link:hover {
background: var(--primary);
color: white;
border-color: var(--primary);
transform: translateY(-2px);
box-shadow: var(--shadow-sm);
}
.pagination .page-item.disabled .page-link {
background: var(--bg-hover);
color: var(--text-muted);
border-color: var(--border-color);
}
/* ========================================
PLUGINS - Sidebar Styling
======================================== */
.sidebar-container {
margin-top: var(--space-lg);
background: var(--bg-card);
border: 1px solid var(--border-color);
border-radius: var(--radius-md);
padding: var(--space-lg);
font-size: 0.875rem; /* 14px */
}
.plugin {
margin-top: 0;
padding-bottom: var(--space-lg);
margin-bottom: var(--space-lg);
border-bottom: 1px solid var(--border-subtle);
}
.plugin:last-child {
border-bottom: none;
margin-bottom: 0;
padding-bottom: 0;
}
.plugin-label {
font-size: var(--font-size-base);
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.5px;
color: var(--primary);
margin-bottom: var(--space-md);
}
.plugin ul {
list-style: none;
padding: 0;
margin: 0;
}
.plugin ul li {
padding: var(--space-xs) 0;
}
.plugin ul li a {
color: var(--text-primary);
display: block;
transition: color 0.3s ease;
}
.plugin ul li a:hover {
color: var(--primary);
}
/* Tags and Categories - Badge Style */
.plugin.plugin-tags li,
.plugin.plugin-categories li {
display: inline-block;
padding: 0;
margin: 0.25rem;
}
.plugin.plugin-tags li a,
.plugin.plugin-categories li a {
background: var(--primary);
color: white;
padding: 0.4rem 1rem;
border-radius: 20px;
font-size: var(--font-size-sm);
font-weight: 500;
display: inline-block;
transition: all 0.3s ease;
}
.plugin.plugin-tags li a:hover,
.plugin.plugin-categories li a:hover {
background: var(--primary-dark);
color: white;
}
/* Search Plugin Styling */
.plugin.plugin-search .form-control {
border: 2px solid var(--border-color);
border-radius: var(--radius-sm);
padding: 0.75rem 1rem;
background: var(--bg-body);
color: var(--text-primary);
transition: all 0.3s ease;
}
.plugin.plugin-search .form-control:focus {
border-color: var(--primary);
box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.1);
outline: none;
}
.plugin.plugin-search button {
background: var(--primary);
border: none;
color: white;
padding: 0.75rem 1.5rem;
border-radius: var(--radius-sm);
font-weight: 600;
transition: all 0.3s ease;
margin-top: var(--space-sm);
}
.plugin.plugin-search button:hover {
background: var(--primary-dark);
transform: translateY(-2px);
box-shadow: var(--shadow-sm);
}
/* ========================================
BOOTSTRAP ICONS
======================================== */
.bi {
margin-right: 0.5rem;
}
/* ========================================
POST TAXONOMY (Tags & Categories)
======================================== */
.post-taxonomy {
display: flex;
flex-wrap: wrap;
gap: 0.4rem;
align-items: center;
}
.taxonomy-badge {
display: inline-block;
padding: 0.3rem 0.75rem;
border-radius: 20px;
font-size: var(--font-size-xs);
font-weight: 500;
text-decoration: none;
transition: all 0.2s ease;
}
.taxonomy-category {
background: transparent;
color: var(--text-secondary);
border: 1px solid var(--border-color);
}
.taxonomy-category:hover {
background: var(--bg-hover);
color: var(--primary);
border-color: var(--primary);
}
.taxonomy-tag {
background: transparent;
color: var(--text-secondary);
border: 1px solid var(--border-color);
}
.taxonomy-tag:hover {
background: var(--bg-hover);
color: var(--primary);
border-color: var(--primary);
}
/* ========================================
COVER IMAGE ENHANCEMENTS
======================================== */
.cover-image-wrapper {
position: relative;
overflow: hidden;
border-radius: var(--radius-sm);
margin-bottom: var(--space-md);
}
/* ========================================
RESPONSIVE ADJUSTMENTS
======================================== */
@media (max-width: 768px) {
h1.title {
font-size: 1.8rem;
}
h2.title {
font-size: 1.5rem;
}
body {
font-size: 0.95rem;
}
.plugin {
padding: var(--space-md);
}
.btn-primary-gradient {
width: 100%;
justify-content: center;
}
}
+5
View File
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<svg aria-labelledby="simpleicons-bluesky-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<title id="simpleicons-bluesky-icon">Bluesky icon</title>
<path d="M12 10.8c-1.087-2.114-4.046-6.053-6.798-7.995C2.566.944 1.561 1.266.902 1.565C.139 1.908 0 3.08 0 3.768c0 .69.378 5.65.624 6.479c.815 2.736 3.713 3.66 6.383 3.364q.204-.03.415-.056q-.207.033-.415.056c-3.912.58-7.387 2.005-2.83 7.078c5.013 5.19 6.87-1.113 7.823-4.308c.953 3.195 2.05 9.271 7.733 4.308c4.267-4.308 1.172-6.498-2.74-7.078a9 9 0 0 1-.415-.056q.21.026.415.056c2.67.297 5.568-.628 6.383-3.364c.246-.828.624-5.79.624-6.478c0-.69-.139-1.861-.902-2.206c-.659-.298-1.664-.62-4.3 1.24C16.046 4.748 13.087 8.687 12 10.8" style="fill: rgba(255, 255, 255, 0.5)"/>
</svg>

After

Width:  |  Height:  |  Size: 799 B

+5
View File
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<svg aria-labelledby="simpleicons-codepen-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<title id="simpleicons-codepen-icon">CodePen icon</title>
<path d="M24 8.182l-.018-.087-.017-.05c-.01-.024-.018-.05-.03-.075-.003-.018-.015-.034-.02-.05l-.035-.067-.03-.05-.044-.06-.046-.045-.06-.045-.046-.03-.06-.044-.044-.04-.015-.02L12.58.19c-.347-.232-.796-.232-1.142 0L.453 7.502l-.015.015-.044.035-.06.05-.038.04-.05.056-.037.045-.05.06c-.02.017-.03.03-.03.046l-.05.06-.02.06c-.02.01-.02.04-.03.07l-.01.05C0 8.12 0 8.15 0 8.18v7.497c0 .044.003.09.01.135l.01.046c.005.03.01.06.02.086l.015.05c.01.027.016.053.027.075l.022.05c0 .01.015.04.03.06l.03.04c.015.01.03.04.045.06l.03.04.04.04c.01.013.01.03.03.03l.06.042.04.03.01.014 10.97 7.33c.164.12.375.163.57.163s.39-.06.57-.18l10.99-7.28.014-.01.046-.037.06-.043.048-.036.052-.058.033-.045.04-.06.03-.05.03-.07.016-.052.03-.077.015-.045.03-.08v-7.5c0-.05 0-.095-.016-.14l-.014-.045.044.003zm-11.99 6.28l-3.65-2.44 3.65-2.442 3.65 2.44-3.65 2.44zm-1.034-6.674l-4.473 2.99L2.89 8.362l8.086-5.39V7.79zm-6.33 4.233l-2.582 1.73V10.3l2.582 1.726zm1.857 1.25l4.473 2.99v4.82L2.89 15.69l3.618-2.417v-.004zm6.537 2.99l4.474-2.98 3.613 2.42-8.087 5.39v-4.82zm6.33-4.23l2.583-1.72v3.456l-2.583-1.73zm-1.855-1.24L13.042 7.8V2.97l8.085 5.39-3.612 2.415v.003z" style="fill: rgba(255, 255, 255, 0.5);"/>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

+1
View File
@@ -0,0 +1 @@
<svg aria-labelledby="simpleicons-dribbble-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title id="simpleicons-dribbble-icon">Dribbble icon</title><path d="M12 24C5.385 24 0 18.615 0 12S5.385 0 12 0s12 5.385 12 12-5.385 12-12 12zm10.12-10.358c-.35-.11-3.17-.953-6.384-.438 1.34 3.684 1.887 6.684 1.992 7.308 2.3-1.555 3.936-4.02 4.395-6.87zm-6.115 7.808c-.153-.9-.75-4.032-2.19-7.77l-.066.02c-5.79 2.015-7.86 6.017-8.04 6.4 1.73 1.358 3.92 2.166 6.29 2.166 1.42 0 2.77-.29 4-.816zm-11.62-2.58c.232-.4 3.045-5.055 8.332-6.765.135-.045.27-.084.405-.12-.26-.585-.54-1.167-.832-1.74C7.17 11.775 2.206 11.71 1.756 11.7l-.004.312c0 2.633.998 5.037 2.634 6.855zm-2.42-8.955c.46.008 4.683.026 9.477-1.248-1.698-3.018-3.53-5.558-3.8-5.928-2.868 1.35-5.01 3.99-5.676 7.176zM9.6 2.052c.282.38 2.145 2.914 3.822 6 3.645-1.365 5.19-3.44 5.373-3.702-1.81-1.61-4.19-2.586-6.795-2.586-.807 0-1.59.098-2.4.288zm10.335 3.483c-.218.29-1.935 2.493-5.724 4.04.24.49.47.985.68 1.486.08.18.15.36.22.53 3.41-.43 6.8.26 7.14.33-.02-2.42-.88-4.64-2.31-6.386z" style="fill: rgba(255, 255, 255, 0.5);"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

+5
View File
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<svg aria-labelledby="simpleicons-facebook-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<title id="simpleicons-facebook-icon">Facebook icon</title>
<path d="M22.676 0H1.324C.593 0 0 .593 0 1.324v21.352C0 23.408.593 24 1.324 24h11.494v-9.294H9.689v-3.621h3.129V8.41c0-3.099 1.894-4.785 4.659-4.785 1.325 0 2.464.097 2.796.141v3.24h-1.921c-1.5 0-1.792.721-1.792 1.771v2.311h3.584l-.465 3.63H16.56V24h6.115c.733 0 1.325-.592 1.325-1.324V1.324C24 .593 23.408 0 22.676 0" style="fill: rgba(255, 255, 255, 0.5);"/>
</svg>

After

Width:  |  Height:  |  Size: 586 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

+5
View File
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<svg aria-labelledby="simpleicons-github-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<title id="simpleicons-github-icon">GitHub icon</title>
<path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12" style="fill: rgba(255, 255, 255, 0.5);"/>
</svg>

After

Width:  |  Height:  |  Size: 984 B

+1
View File
@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitLab icon</title><path d="M23.955 13.587l-1.342-4.135-2.664-8.189c-.135-.423-.73-.423-.867 0L16.418 9.45H7.582L4.919 1.263C4.783.84 4.185.84 4.05 1.26L1.386 9.449.044 13.587c-.121.375.014.789.331 1.023L12 23.054l11.625-8.443c.318-.235.453-.647.33-1.024" style="fill: rgba(255, 255, 255, 0.5);"/></svg>

After

Width:  |  Height:  |  Size: 381 B

+5
View File
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<svg aria-labelledby="simpleicons-googleplus-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<title id="simpleicons-googleplus-icon">Google+ icon</title>
<path d="M7.635 10.909v2.619h4.335c-.173 1.125-1.31 3.295-4.331 3.295-2.604 0-4.731-2.16-4.731-4.823 0-2.662 2.122-4.822 4.728-4.822 1.485 0 2.479.633 3.045 1.178l2.073-1.994c-1.33-1.245-3.056-1.995-5.115-1.995C3.412 4.365 0 7.785 0 12s3.414 7.635 7.635 7.635c4.41 0 7.332-3.098 7.332-7.461 0-.501-.054-.885-.12-1.265H7.635zm16.365 0h-2.183V8.726h-2.183v2.183h-2.182v2.181h2.184v2.184h2.189V13.09H24" style="fill: rgba(255, 255, 255, 0.5);"/>
</svg>

After

Width:  |  Height:  |  Size: 671 B

+1
View File
@@ -0,0 +1 @@
<svg aria-labelledby="simpleicons-instagram-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title id="simpleicons-instagram-icon">Instagram icon</title><path d="M12 0C8.74 0 8.333.015 7.053.072 5.775.132 4.905.333 4.14.63c-.789.306-1.459.717-2.126 1.384S.935 3.35.63 4.14C.333 4.905.131 5.775.072 7.053.012 8.333 0 8.74 0 12s.015 3.667.072 4.947c.06 1.277.261 2.148.558 2.913.306.788.717 1.459 1.384 2.126.667.666 1.336 1.079 2.126 1.384.766.296 1.636.499 2.913.558C8.333 23.988 8.74 24 12 24s3.667-.015 4.947-.072c1.277-.06 2.148-.262 2.913-.558.788-.306 1.459-.718 2.126-1.384.666-.667 1.079-1.335 1.384-2.126.296-.765.499-1.636.558-2.913.06-1.28.072-1.687.072-4.947s-.015-3.667-.072-4.947c-.06-1.277-.262-2.149-.558-2.913-.306-.789-.718-1.459-1.384-2.126C21.319 1.347 20.651.935 19.86.63c-.765-.297-1.636-.499-2.913-.558C15.667.012 15.26 0 12 0zm0 2.16c3.203 0 3.585.016 4.85.071 1.17.055 1.805.249 2.227.415.562.217.96.477 1.382.896.419.42.679.819.896 1.381.164.422.36 1.057.413 2.227.057 1.266.07 1.646.07 4.85s-.015 3.585-.074 4.85c-.061 1.17-.256 1.805-.421 2.227-.224.562-.479.96-.899 1.382-.419.419-.824.679-1.38.896-.42.164-1.065.36-2.235.413-1.274.057-1.649.07-4.859.07-3.211 0-3.586-.015-4.859-.074-1.171-.061-1.816-.256-2.236-.421-.569-.224-.96-.479-1.379-.899-.421-.419-.69-.824-.9-1.38-.165-.42-.359-1.065-.42-2.235-.045-1.26-.061-1.649-.061-4.844 0-3.196.016-3.586.061-4.861.061-1.17.255-1.814.42-2.234.21-.57.479-.96.9-1.381.419-.419.81-.689 1.379-.898.42-.166 1.051-.361 2.221-.421 1.275-.045 1.65-.06 4.859-.06l.045.03zm0 3.678c-3.405 0-6.162 2.76-6.162 6.162 0 3.405 2.76 6.162 6.162 6.162 3.405 0 6.162-2.76 6.162-6.162 0-3.405-2.76-6.162-6.162-6.162zM12 16c-2.21 0-4-1.79-4-4s1.79-4 4-4 4 1.79 4 4-1.79 4-4 4zm7.846-10.405c0 .795-.646 1.44-1.44 1.44-.795 0-1.44-.646-1.44-1.44 0-.794.646-1.439 1.44-1.439.793-.001 1.44.645 1.44 1.439z" style="fill: rgba(255, 255, 255, 0.5);"/></svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

+5
View File
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<svg aria-labelledby="simpleicons-linkedin-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<title id="simpleicons-linkedin-icon">LinkedIn icon</title>
<path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z" style="fill: rgb(154, 157, 160);"/>
</svg>

After

Width:  |  Height:  |  Size: 770 B

+1
View File
@@ -0,0 +1 @@
<svg role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><title>Mastodon icon</title><path d="M23.193 7.879c0-5.206-3.411-6.732-3.411-6.732C18.062.357 15.108.025 12.041 0h-.076c-3.068.025-6.02.357-7.74 1.147 0 0-3.411 1.526-3.411 6.732 0 1.192-.023 2.618.015 4.129.124 5.092.934 10.109 5.641 11.355 2.17.574 4.034.695 5.535.612 2.722-.15 4.25-.972 4.25-.972l-.09-1.975s-1.945.613-4.129.539c-2.165-.074-4.449-.233-4.799-2.891a5.499 5.499 0 0 1-.048-.745s2.125.52 4.817.643c1.646.075 3.19-.097 4.758-.283 3.007-.359 5.625-2.212 5.954-3.905.517-2.665.475-6.507.475-6.507zm-4.024 6.709h-2.497V8.469c0-1.29-.543-1.944-1.628-1.944-1.2 0-1.802.776-1.802 2.312v3.349h-2.483v-3.35c0-1.536-.602-2.312-1.802-2.312-1.085 0-1.628.655-1.628 1.944v6.119H4.832V8.284c0-1.289.328-2.313.987-3.07.68-.758 1.569-1.146 2.674-1.146 1.278 0 2.246.491 2.886 1.474L12 6.585l.622-1.043c.64-.983 1.608-1.474 2.886-1.474 1.104 0 1.994.388 2.674 1.146.658.757.986 1.781.986 3.07v6.304z" style="fill: rgba(255, 255, 255, 0.5);"/></svg>

After

Width:  |  Height:  |  Size: 1019 B

+1
View File
@@ -0,0 +1 @@
<svg aria-labelledby="simpleicons-rss-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title id="simpleicons-rss-icon">RSS icon</title><path d="M19.199 24C19.199 13.467 10.533 4.8 0 4.8V0c13.165 0 24 10.835 24 24h-4.801zM3.291 17.415c1.814 0 3.293 1.479 3.293 3.295 0 1.813-1.485 3.29-3.301 3.29C1.47 24 0 22.526 0 20.71s1.475-3.294 3.291-3.295zM15.909 24h-4.665c0-6.169-5.075-11.245-11.244-11.245V8.09c8.727 0 15.909 7.184 15.909 15.91z"/></svg>

After

Width:  |  Height:  |  Size: 470 B

+32
View File
@@ -0,0 +1,32 @@
<svg height="800px" width="800px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
viewBox="0 0 512 512" xml:space="preserve">
<path style="fill:#E1E1E3;" d="M483.643,42.893L18.751,222.234c-11.472,4.424-11.372,20.667,0.133,24.978l113.278,42.279
l43.845,141.006c2.806,9.031,13.849,12.369,21.179,6.377l63.142-51.475c6.618-5.393,16.046-5.662,22.963-0.641l113.887,82.685
c7.841,5.699,18.949,1.402,20.917-8.072l83.428-401.305C503.668,47.715,493.499,39.082,483.643,42.893z M395.044,136.412
L221.27,297.943c-6.108,5.686-10.048,13.295-11.164,21.553l-5.92,43.868c-0.784,5.858-9.012,6.439-10.628,0.77l-22.766-79.994
c-2.608-9.124,1.192-18.87,9.263-23.851l210.561-129.684C394.4,128.281,398.293,133.398,395.044,136.412z"/>
<g>
<path style="fill:#A0A0A1;" d="M405.003,480.205c-4.892,0-9.726-1.533-13.823-4.511l-113.882-82.681
c-3.166-2.299-7.496-2.178-10.528,0.295l-63.14,51.473c-6.056,4.953-14.159,6.566-21.66,4.31
c-7.506-2.258-13.377-8.077-15.703-15.566l-42.359-136.225L15.317,256.77C6.056,253.299,0.048,244.678,0,234.804
c-0.047-9.865,5.873-18.534,15.08-22.085L479.972,33.377c8.041-3.106,17.12-1.571,23.698,4.005
c6.587,5.584,9.589,14.303,7.838,22.755L428.08,461.446c-1.63,7.85-7.073,14.268-14.56,17.163
C410.753,479.679,407.868,480.205,405.003,480.205z M272.231,370.973c5.976,0,11.962,1.835,17.052,5.531l113.887,82.685
c1.212,0.881,2.397,0.624,2.997,0.393c0.596-0.23,1.64-0.833,1.942-2.284L491.536,55.99c0.33-1.592-0.519-2.593-1.054-3.047
c-0.531-0.451-1.648-1.121-3.159-0.538c-0.003,0.001-0.006,0.002-0.008,0.003L22.423,231.751c-1.68,0.648-2.028,1.964-2.023,2.955
c0.005,0.999,0.366,2.321,2.062,2.957l113.265,42.275c2.956,1.104,5.235,3.514,6.173,6.527l43.845,141.006
c0.434,1.396,1.501,1.906,2.099,2.086c0.595,0.178,1.761,0.343,2.885-0.577l63.154-51.485
C259.204,373.158,265.712,370.973,272.231,370.973z M198.75,378.286c-6.985,0-13.054-4.534-14.999-11.355l-22.768-80
c-3.839-13.438,1.8-27.967,13.716-35.323l210.569-129.69c6.121-3.759,13.996-2.284,18.329,3.425
c4.328,5.702,3.633,13.675-1.618,18.545L228.214,305.413c-4.359,4.058-7.204,9.548-8.001,15.45l-5.92,43.866
c-0.992,7.412-6.901,12.974-14.367,13.515C199.532,378.272,199.139,378.286,198.75,378.286z M339.662,173.966l-154.258,95.007
c-4.17,2.573-6.148,7.661-4.805,12.365l16.527,58.072l2.871-21.278c1.428-10.566,6.515-20.387,14.323-27.655L339.662,173.966z"/>
<path style="fill:#A0A0A1;" d="M423.776,279.45c-0.717,0-1.444-0.075-2.174-0.234c-5.505-1.195-8.999-6.627-7.804-12.131l1.55-7.14
c1.195-5.505,6.626-9,12.131-7.804c5.505,1.195,8.999,6.627,7.804,12.131l-1.55,7.14
C432.697,276.188,428.471,279.45,423.776,279.45z"/>
<path style="fill:#A0A0A1;" d="M391.668,427.341c-0.717,0-1.444-0.075-2.174-0.234c-5.504-1.195-8.998-6.627-7.803-12.131
l23.459-108.051c1.194-5.505,6.62-8.999,12.132-7.804c5.504,1.195,8.998,6.627,7.803,12.131l-23.459,108.051
C400.588,424.08,396.363,427.341,391.668,427.341z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.9 KiB

+5
View File
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<svg aria-labelledby="simpleicons-twitter-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<title id="simpleicons-twitter-icon">Twitter icon</title>
<path d="M23.954 4.569c-.885.389-1.83.654-2.825.775 1.014-.611 1.794-1.574 2.163-2.723-.951.555-2.005.959-3.127 1.184-.896-.959-2.173-1.559-3.591-1.559-2.717 0-4.92 2.203-4.92 4.917 0 .39.045.765.127 1.124C7.691 8.094 4.066 6.13 1.64 3.161c-.427.722-.666 1.561-.666 2.475 0 1.71.87 3.213 2.188 4.096-.807-.026-1.566-.248-2.228-.616v.061c0 2.385 1.693 4.374 3.946 4.827-.413.111-.849.171-1.296.171-.314 0-.615-.03-.916-.086.631 1.953 2.445 3.377 4.604 3.417-1.68 1.319-3.809 2.105-6.102 2.105-.39 0-.779-.023-1.17-.067 2.189 1.394 4.768 2.209 7.557 2.209 9.054 0 13.999-7.496 13.999-13.986 0-.209 0-.42-.015-.63.961-.689 1.8-1.56 2.46-2.548l-.047-.02z" style="fill: rgba(255, 255, 255, 0.5);"/>
</svg>

After

Width:  |  Height:  |  Size: 916 B

+1
View File
@@ -0,0 +1 @@
<svg aria-labelledby="simpleicons-vk-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title id="simpleicons-vk-icon">VK icon</title><path d="M15.684 0H8.316C1.592 0 0 1.592 0 8.316v7.368C0 22.408 1.592 24 8.316 24h7.368C22.408 24 24 22.408 24 15.684V8.316C24 1.592 22.408 0 15.684 0zm3.692 17.123h-1.744c-.66 0-.864-.525-2.05-1.727-1.033-1-1.49-1.135-1.744-1.135-.356 0-.458.102-.458.593v1.575c0 .424-.135.678-1.253.678-1.846 0-3.896-1.12-5.337-3.202C4.49 10.901 4 8.654 4 8.206c0-.254.102-.491.593-.491h1.744c.44 0 .61.203.78.677.864 2.49 2.303 4.675 2.896 4.675.22 0 .322-.102.322-.66V9.721c-.068-1.186-.695-1.287-.695-1.71 0-.204.17-.407.44-.407h2.744c.373 0 .508.203.508.643v3.473c0 .372.17.508.271.508.22 0 .407-.136.813-.542 1.253-1.406 2.15-3.574 2.15-3.574.119-.254.322-.491.762-.491h1.744c.525 0 .644.27.525.643-.22 1.017-2.354 4.031-2.354 4.031-.186.305-.254.44 0 .78.186.254.796.779 1.203 1.253.745.847 1.32 1.558 1.473 2.05.17.49-.085.745-.576.745z" style="fill: rgba(255, 255, 255, 0.5);"/></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

+1
View File
@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Xing icon</title><path d="M18.188 0c-.517 0-.741.325-.927.66 0 0-7.455 13.224-7.702 13.657.015.024 4.919 9.023 4.919 9.023.17.308.436.66.967.66h3.454c.211 0 .375-.078.463-.22.089-.151.089-.346-.009-.536l-4.879-8.916c-.004-.006-.004-.016 0-.022L22.139.756c.095-.191.097-.387.006-.535C22.056.078 21.894 0 21.686 0h-3.498zM3.648 4.74c-.211 0-.385.074-.473.216-.09.149-.078.339.02.531l2.34 4.05c.004.01.004.016 0 .021L1.86 16.051c-.099.188-.093.381 0 .529.085.142.239.234.45.234h3.461c.518 0 .766-.348.945-.667l3.734-6.609-2.378-4.155c-.172-.315-.434-.659-.962-.659H3.648v.016z" style="fill: rgba(255, 255, 255, 0.5);"/></svg>

After

Width:  |  Height:  |  Size: 701 B

+5
View File
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<svg aria-labelledby="simpleicons-youtube-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<title id="simpleicons-youtube-icon">Youtube icon</title>
<path fill="currentColor" d="M23.498 6.186a3.02 3.02 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.02 3.02 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.02 3.02 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.02 3.02 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814M9.545 15.568V8.432L15.818 12z" style="fill: rgba(255, 255, 255, 0.5)"/>
</svg>

After

Width:  |  Height:  |  Size: 621 B

+60
View File
@@ -0,0 +1,60 @@
<!DOCTYPE html>
<html lang="<?php echo Theme::lang() ?>">
<head>
<?php include(THEME_DIR_PHP.'head.php'); ?>
</head>
<body>
<!-- Load Bludit Plugins: Site Body Begin -->
<?php Theme::plugins('siteBodyBegin'); ?>
<!-- Navbar -->
<?php include(THEME_DIR_PHP.'navbar.php'); ?>
<!-- Content -->
<div class="container">
<div class="row">
<!-- Blog Posts -->
<div class="col-md-8">
<?php
// Bludit content are pages
// But if you order the content by date
// These pages works as posts
// $WHERE_AM_I variable detect where the user is browsing
// If the user is watching a particular page/post the variable takes the value "page"
// If the user is watching the frontpage the variable takes the value "home"
if ($WHERE_AM_I == 'page') {
include(THEME_DIR_PHP.'page.php');
} else {
include(THEME_DIR_PHP.'home.php');
}
?>
</div>
<!-- Right Sidebar -->
<div class="col-md-3 offset-md-1">
<?php include(THEME_DIR_PHP.'sidebar.php'); ?>
</div>
</div>
</div>
<!-- Footer -->
<?php include(THEME_DIR_PHP.'footer.php'); ?>
<!-- Javascript -->
<?php
// Include Jquery file from Bludit Core
echo Theme::jquery();
// Include javascript Bootstrap file from Bludit Core
echo Theme::jsBootstrap();
?>
<!-- Load Bludit Plugins: Site Body End -->
<?php Theme::plugins('siteBodyEnd'); ?>
</body>
</html>
+7
View File
@@ -0,0 +1,7 @@
{
"theme-data":
{
"name": "Blog X",
"description": "Theme für Blogs mit Navigatiationsleiste mit statischen Seiten und Social Media Icons, rechter Seitenleiste und Angabe der Lesezeit."
}
}
+7
View File
@@ -0,0 +1,7 @@
{
"theme-data":
{
"name": "Blog X",
"description": "Theme für Blogs mit Navigatiationsleiste mit statischen Seiten und Social Media Icons, rechter Seitenleiste und Angabe der Lesezeit."
}
}
+7
View File
@@ -0,0 +1,7 @@
{
"theme-data":
{
"name": "Blog X",
"description": "Theme for bloggers, with right sidebar, reading time and navbar with social icons and static pages."
}
}
+7
View File
@@ -0,0 +1,7 @@
{
"theme-data":
{
"name": "Blog X",
"description": "Tema para bloggers, soporte para tiempo de lectura y barra de navegación con iconos sociales y páginas estáticas."
}
}
+7
View File
@@ -0,0 +1,7 @@
{
"theme-data":
{
"name": "Blog X",
"description": "قالبی برای وبلاگ نویس ها، به همراه نوار کناری، زمان مطالعه و نوار ناوبری به همراه آیکن های شبکه مجازی و صفحات استاتیک."
}
}
+7
View File
@@ -0,0 +1,7 @@
{
"theme-data":
{
"name": "Blog X",
"description": "Tema per blogger, con barra laterale a destra, tempo di lettura e barra di navigazione con icone social e pagine statiche."
}
}
+7
View File
@@ -0,0 +1,7 @@
{
"theme-data":
{
"name": "Blog X",
"description": "ブロガー向けテーマ。右サイドバー、読了時間、ソーシャルアイコンと固定ページへリンクするnavbarを備えています。"
}
}
+7
View File
@@ -0,0 +1,7 @@
{
"theme-data":
{
"name": "Blog X",
"description": "Thema voor bloggers, met zijbalk rechts, leestijdindicatie en navigatiebalk met social media en statische pagina's."
}
}
+7
View File
@@ -0,0 +1,7 @@
{
"theme-data":
{
"name": "Blog X",
"description": "Тема подходит для блогеров, с боковой панелью справа. Присутствует информация о пнримерном временем чтения материала, есть блок навигации со значками социальных сетей и списом статических страниц."
}
}
+7
View File
@@ -0,0 +1,7 @@
{
"theme-data":
{
"name": "Blog X",
"description": "Blog yazarları için tema, sağ kenar çubuğu ile birlikte. Okuma süresi, kenar çubuğunda sosyal simgeler ve sabit sayfalar."
}
}
+10
View File
@@ -0,0 +1,10 @@
{
"author": "Bludit",
"email": "",
"website": "https://themes.bludit.com",
"version": "3.22.0",
"releaseDate": "2026-05-10",
"license": "MIT",
"compatible": "3.22",
"notes": ""
}
+20
View File
@@ -0,0 +1,20 @@
<footer class="footer footer-modern">
<div class="container">
<div class="row align-items-center">
<?php if (defined('BLUDIT_PRO')): ?>
<div class="col-12 text-center">
<p class="m-0 text-uppercase"><?php echo $site->footer(); ?></p>
</div>
<?php else: ?>
<div class="col-md-6 text-center text-md-left mb-3 mb-md-0">
<p class="m-0 text-uppercase"><?php echo $site->footer(); ?></p>
</div>
<div class="col-md-6 text-center text-md-right">
<p class="m-0">
Powered by <a href="https://www.bludit.com" target="_blank" rel="noopener"><strong>BLUDIT</strong></a>
</p>
</div>
<?php endif; ?>
</div>
</div>
</footer>
+24
View File
@@ -0,0 +1,24 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="generator" content="Bludit">
<!-- Dynamic title tag -->
<?php echo Theme::metaTags('title'); ?>
<!-- Dynamic description tag -->
<?php echo Theme::metaTags('description'); ?>
<!-- Include Favicon -->
<?php echo Theme::favicon('img/favicon.png'); ?>
<!-- Include Bootstrap CSS file bootstrap.css -->
<?php echo Theme::cssBootstrap(); ?>
<!-- Include CSS Bootstrap ICONS file from Bludit Core -->
<?php echo Theme::cssBootstrapIcons(); ?>
<!-- Include CSS Styles from this theme -->
<?php echo Theme::css('css/style.css'); ?>
<!-- Load Bludit Plugins: Site head -->
<?php Theme::plugins('siteHead'); ?>
+99
View File
@@ -0,0 +1,99 @@
<?php if (empty($content)) : ?>
<div class="mt-4">
<?php $language->p('No pages found') ?>
</div>
<?php endif ?>
<?php foreach ($content as $page) : ?>
<!-- Post -->
<div class="card card-modern my-5">
<!-- Load Bludit Plugins: Page Begin -->
<?php Theme::plugins('pageBegin'); ?>
<!-- Cover image with gradient overlay -->
<?php if ($page->coverImage()) : ?>
<div class="cover-image-wrapper">
<img class="card-img-top" alt="<?php echo $page->title(); ?>" src="<?php echo $page->coverImage(); ?>" />
</div>
<?php endif ?>
<div class="card-body">
<!-- Title -->
<a href="<?php echo $page->permalink(); ?>">
<h2 class="title"><?php echo $page->title(); ?></h2>
</a>
<!-- Creation date and reading time -->
<div class="metadata mb-4">
<span><i class="bi bi-calendar"></i><?php echo $page->date(); ?></span>
<span><i class="bi bi-clock-history"></i><?php echo $L->get('Reading time') . ': ' . $page->readingTime(); ?></span>
</div>
<!-- Breaked content -->
<?php echo $page->contentBreak(); ?>
<!-- "Read more" button -->
<?php if ($page->readMore()) : ?>
<a class="btn-primary-gradient mt-3" href="<?php echo $page->permalink(); ?>">
<?php echo $L->get('Read more'); ?>
<i class="bi bi-arrow-right"></i>
</a>
<?php endif ?>
<!-- Tags and Category -->
<?php $tagsList = $page->tags(true); $categoryKey = $page->categoryKey(); ?>
<?php if (!empty($tagsList) || $categoryKey) : ?>
<div class="post-taxonomy mt-3">
<?php if ($categoryKey) : ?>
<a class="taxonomy-badge taxonomy-category" href="<?php echo $page->categoryPermalink(); ?>">
<i class="bi bi-folder"></i><?php echo $page->category(); ?>
</a>
<?php endif ?>
<?php foreach ($tagsList as $tagKey => $tagName) : ?>
<a class="taxonomy-badge taxonomy-tag" href="<?php echo DOMAIN_TAGS . $tagKey; ?>"><i class="bi bi-tag"></i><?php echo $tagName; ?></a>
<?php endforeach ?>
</div>
<?php endif ?>
</div>
<!-- Load Bludit Plugins: Page End -->
<?php Theme::plugins('pageEnd'); ?>
</div>
<?php endforeach ?>
<!-- Pagination -->
<?php if (Paginator::numberOfPages() > 1) : ?>
<nav class="paginator mt-5">
<ul class="pagination flex-wrap justify-content-center">
<!-- Previous button -->
<?php if (Paginator::showPrev()) : ?>
<li class="page-item mr-2">
<a class="page-link" href="<?php echo htmlspecialchars(Paginator::previousPageUrl(), ENT_QUOTES, 'UTF-8') ?>" tabindex="-1">
<i class="bi bi-chevron-left"></i> <?php echo $L->get('Previous'); ?>
</a>
</li>
<?php endif; ?>
<!-- Home button -->
<li class="page-item mx-2 <?php if (Paginator::currentPage() == 1) echo 'disabled' ?>">
<a class="page-link" href="<?php echo Theme::siteUrl() ?>">
<i class="bi bi-house-door"></i> Home
</a>
</li>
<!-- Next button -->
<?php if (Paginator::showNext()) : ?>
<li class="page-item ml-2">
<a class="page-link" href="<?php echo htmlspecialchars(Paginator::nextPageUrl(), ENT_QUOTES, 'UTF-8') ?>">
<?php echo $L->get('Next'); ?> <i class="bi bi-chevron-right"></i>
</a>
</li>
<?php endif; ?>
</ul>
</nav>
<?php endif ?>
+39
View File
@@ -0,0 +1,39 @@
<nav class="navbar navbar-expand-md navbar-dark fixed-top navbar-modern text-uppercase">
<div class="container">
<a class="navbar-brand" href="<?php echo Theme::siteUrl() ?>">
<span class="text-white"><?php echo $site->title() ?></span>
</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarResponsive">
<ul class="navbar-nav ml-auto">
<!-- Blog link (when homepage is set to a static page) -->
<?php if ($site->homepage()): ?>
<li class="nav-item">
<a class="nav-link<?php echo ($WHERE_AM_I === 'blog') ? ' active' : '' ?>" href="<?php echo DOMAIN_BASE . ltrim($url->filters('blog'), '/') ?>"><?php echo $L->get('Blog') ?></a>
</li>
<?php endif; ?>
<!-- Static pages -->
<?php foreach ($staticContent as $staticPage) : ?>
<li class="nav-item">
<a class="nav-link<?php echo ($url->slug() == $staticPage->slug()) ? ' active' : '' ?>" href="<?php echo $staticPage->permalink() ?>"><?php echo $staticPage->title() ?></a>
</li>
<?php endforeach ?>
<!-- Social Networks -->
<?php foreach (Theme::socialNetworks() as $key => $label) : ?>
<li class="nav-item">
<a class="nav-link" href="<?php echo $site->{$key}(); ?>" target="_blank" rel="noopener">
<img class="d-none d-sm-block nav-svg-icon" src="<?php echo DOMAIN_THEME . 'img/' . $key . '.svg' ?>" alt="<?php echo $label ?>" />
<span class="d-inline d-sm-none"><?php echo $label; ?></span>
</a>
</li>
<?php endforeach; ?>
</ul>
</div>
</div>
</nav>
+51
View File
@@ -0,0 +1,51 @@
<!-- Post -->
<div class="card card-modern my-5">
<!-- Load Bludit Plugins: Page Begin -->
<?php Theme::plugins('pageBegin'); ?>
<!-- Cover image with gradient overlay -->
<?php if ($page->coverImage()): ?>
<div class="cover-image-wrapper">
<img class="card-img-top" alt="<?php echo $page->title(); ?>" src="<?php echo $page->coverImage(); ?>"/>
</div>
<?php endif ?>
<div class="card-body">
<!-- Title -->
<h1 class="title"><?php echo $page->title(); ?></h1>
<?php if (!$page->isStatic() && !$url->notFound()): ?>
<!-- Creation date and reading time -->
<div class="metadata mb-4">
<span><i class="bi bi-calendar"></i><?php echo $page->date(); ?></span>
<span><i class="bi bi-clock-history"></i><?php echo $L->get('Reading time') . ': ' . $page->readingTime() ?></span>
</div>
<?php endif ?>
<!-- Full content -->
<div class="content">
<?php echo $page->content(); ?>
</div>
<!-- Tags and Category -->
<?php $tagsList = $page->tags(true); $categoryKey = $page->categoryKey(); ?>
<?php if (!empty($tagsList) || $categoryKey) : ?>
<div class="post-taxonomy mt-3">
<?php if ($categoryKey) : ?>
<a class="taxonomy-badge taxonomy-category" href="<?php echo $page->categoryPermalink(); ?>">
<i class="bi bi-folder"></i><?php echo $page->category(); ?>
</a>
<?php endif ?>
<?php foreach ($tagsList as $tagKey => $tagName) : ?>
<a class="taxonomy-badge taxonomy-tag" href="<?php echo DOMAIN_TAGS . $tagKey; ?>"><i class="bi bi-tag"></i><?php echo $tagName; ?></a>
<?php endforeach ?>
</div>
<?php endif ?>
</div>
<!-- Load Bludit Plugins: Page End -->
<?php Theme::plugins('pageEnd'); ?>
</div>
+3
View File
@@ -0,0 +1,3 @@
<div class="sidebar-container">
<?php Theme::plugins('siteSidebar') ?>
</div>