v1.0.0.0
StocketBase
- <?php
-
- declare(strict_types=1);
-
- require_once __DIR__ . '/includes/config.php';
- require_once __DIR__ . '/includes/database.php';
- require_once __DIR__ . '/includes/user-auth.php';
- require_once __DIR__ . '/includes/language.php';
- require_once __DIR__ . '/includes/site-front.php';
- require_once __DIR__ . '/includes/block-editor.php';
-
- UserAuth::boot();
-
- $db = Database::site();
- $settings = SiteFront::settings();
-
- $slug = trim((string) ($_GET['slug'] ?? ''));
-
- $statement = $db->prepare("SELECT * FROM pages WHERE slug = :slug AND status = 'published' LIMIT 1");
- $statement->execute(['slug' => $slug]);
- $page = $statement->fetch();
-
- if (!$page) {
- http_response_code(404);
- $pageTitle = 'Not found - ' . $settings['site_name'];
- require __DIR__ . '/includes/front-header.php';
- echo '<p>' . htmlspecialchars(Language::get('page_not_found', 'Page not found.')) . '</p>';
- require __DIR__ . '/includes/front-footer.php';
- exit;
- }
-
- $page = Languages::pages([$page])[0];
-
- if (BlockEditor::containsBlock((string) $page['content_blocks'], 'contact_form')) {
- require_once __DIR__ . '/includes/contact-form.php';
- ContactForm::handleRequest((string) $page['title']);
- }
-
- $pageTitle = $page['title'] . ' - ' . $settings['site_name'];
- $pageDescription = $settings['seo_description'];
- $pageType = 'pages';
-
- require __DIR__ . '/includes/front-header.php';
-
- ?>
- <article class="article-view">
- <h1 class="article-title"><?= htmlspecialchars($page['title']) ?></h1>
- <div class="article-content">
- <?= BlockEditor::render($page['content_blocks']) ?>
- </div>
- </article>
-
- <?php require __DIR__ . '/includes/front-footer.php'; ?>