Я использую вот такой простейший шаблон: Код (Text): <!DOCTYPE html> <html lang=ru> <head> <title><?php echo $title; ?></title> <meta name="description" content="<?php echo $description; ?>"> <meta name="keywords" content="<?php echo $keywords; ?>"> <meta charset=utf-8> <link rel="canonical" href="<?php echo $canonical; ?>" /> <link rel="stylesheet" href="<?php echo $css; ?>" type="text/css"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="shortcut icon" href="/favicon.ico" /> </head> <body> <?php echo $text; ?> </body> </html> Содержимое каждой из упомянутых здесь переменных вытаскивается из базы данных и все нормально работает. При этом собственно контент страницы находится в переменной $text. Но на практике нужны шаблоны гораздо сложнее, поскольку контент обычно разбит на смысловые фрагменты: верх и низ страницы, рекламные блоки и др. Можно сделать в базе данных столбец для каждого такого фрагмента ($text_1, $text_2 и др.) и тоже все будет нормально. А как поступают на практике? (функцию eval использовать не хочу).
Там в конце: https://gency.ru/g-drive-quick-start --- Добавлено --- Многие блоки тупо кешируются в готовом виде (т.е. HTML-). Как пить дать, на сайте по ссылке все перекешировано в сайдбаре и т.п., хотя я там особо не лез «под капот» (моя задача на том сайте за текстами следить). Заметил, что ссылки на отмодерированные комменты не сразу появляются в сайдбаре и т.п. --- Добавлено --- Вот еще (там в конце архив шаблона есть): https://gency.ru/creating-simple-blog-template
Не хочешь, не используй. Обычно разные шаблонизаторы готовые используют, ваш способ тоже подходит, при небольшой загрузке
@ADSoft, у ТСа основная проблема в том, что практически полные страницы хранятся, как контент. Это не столько с нагрузкой связано (хотя сохранять будет сложнее), сколько с удобством редактирования. Даже если редактор суперпродвинутый, одни и те же блоки на разных страницах могут немного по-разному сохраняться, их наверняка нужно отдельно редактировать для каждой страницы и т.п. Про дублирование данных я уже молчу. Это чуть ли не нарушение основного принципа ведения БД. --- Добавлено --- @Vladd55, в движке по ссылке эта проблема решена. Там вложенные шаблоны могут по условию (на основе флага в роуте и т.п.) подключаться. Т.е. для одних страниц можно хранить практически полный контент страницы, а для других – «чистый контент», который будет дополнительно прогоняться через вложенный шаблон (или даже шаблоны).
@miketomlin мне просто не очень импонирует чоо вы надо или не надо в качестве примера ррриводите тот двиг, прям чуствуется агнажированость... А челу просо элементарнын вещи нужно объяснить
@ADSoft, там элементарная поделка, в которой эти элементарные вещи реализованы. У меня уже по большей части иссяк юношеский максимализм, чтобы пересказывать все это по 100 раз. У вас, вижу, тоже. --- Добавлено --- Я практически не пощу ссылки на что-то более сложное, хотя мог бы так засрать завалить форум, т.к. работаю в софтверной конторе.