Опыт генерация статических html страниц по шаблонам Smarty?

  • Автор темы Автор темы Camillo
  • Дата начала Дата начала

Camillo

Новичок
Опыт генерация статических html страниц по шаблонам Smarty?

Привет всем.

Хотелось бы используя шаблоны Smarty попробовать сгенерировать статические .html страницы. Если у присутствующих такой опыт?

На данный момент - единственный выход, который я вижу - это банально считывать по крону (например 1 раз в час) динамически сгенерированную страницу и создавать (оверрайтить) на ее основе .html файл. Разумеется такое решение - не самое разумное.

Подскажите пожалуйста как сделать лучше?

Спасибо.
 
Если хочется "настоящей" статики - то, пожалуй, иначе не сделаешь. Если допустимо обрабатывать входящие запросы простеньким скриптом, можно смотреть на дату создания статического файла и по необходимости - перегенерировать. Преимущества второго варианта спорны....
 
Camillo

не понимаю, что мешает включить кэширование и поставить ему бесконечное действие? смарти постепенно закэширует все страницы сайта и они будут выдаваться статически
 
Автор оригинала: kvf77
Camillo

не понимаю, что мешает включить кэширование и поставить ему бесконечное действие? смарти постепенно закэширует все страницы сайта и они будут выдаваться статически
Обьясняю. Вот пример одного кэша

PHP:
<?php $_config_vars = array (
  'kost_tree_image_dir' => './images/tree/',
); ?>

А если уж так бы и было (смарти выводил бы ХТМЛ чистый), то ждать тоже ОЧЕНЬ глупо.
 
Это то, во что кэширует Smarty. Как видишь, далеко не HTML.
Другой пример.
Исходник
PHP:
<div align="center">
    <table class="registertable">
        <tr>
            <td>
                {html_image file="images/other/box_loh.jpg"}
            </td>
        </tr>
    </table>
</div>
Кэш
PHP:
<div align="center">
    <table class="registertable">
        <tr>
            <td>
                <?php echo smarty_function_html_image(array('file' => "images/other/box_loh.jpg"), $this);?>
            </td>
        </tr>
    </table>
</div>
 
Не, кэширование в данном случае не катит...

Сделал как и хотел.
 
Автор оригинала: Camillo
Не, кэширование в данном случае не катит...

Сделал как и хотел.
Да я, собственно, это своими "исходниками кэшей" и пытаюсь обьяснить.
 
kost
то что ты приводил это не "исходники кешей", а скомпилированные шаблоны.
"Кеш" в smarty тоже не чистый html, но php-кода нет совсем - только сериализованная информация(в самом верху) о самом шаблоне(время,инсёрты и т.д.)
 
ААА! Благодарю за раздупление. Вот это - хэш.

PHP:
274
a:5:{s:8:"template";a:6:{s:9:"index.tpl";
b:1;s:8:"meta.tpl";b:1;s:7:"hat.tpl";b:1;s:8:"main.tpl";b:1;s:8:"news.tpl";b:1;s:13:"subscribe.tpl";b:1;}s:6:"config";a:1:{s:13:"parampam.conf";b:1;}s:9:"timestamp";i:1138038954;s:7:"expires";i:1138042554;s:13:"cache_serials";a:0:{}}
<html>
<head>
...

Тогда встречный вопрос: А почему этот метод "не катит"?
 
kost
вот вишь как все просто - а ты спорил - слушай вумных дядей, они плохого не подскажут
 
Автор оригинала: kvf77
вот вишь как все просто - а ты спорил - слушай вумных дядей, они плохого не подскажут
Если б не спросил так и плавал бы :D

А почему это не подходит до сих пор так и не понял. Но, думаю, уже не важно.
 
Сверху