Многие пользователи скриптов Мастера Lasto, очень часто не подозревают о возможностях оных, не смотря на то, что практически все скрипты имеют собственные страницы онлайн-мануалов и великолепно документированы в соответствующих файлах отдаваемого дистрибутива.
В большинстве случаев это происходит по нескольким причинам:
Предлагаемый цикл статей поможет устранить данный пробел.
Вадим Ласто - талантливый программист, автор многочисленных скриптов - "nano CMS", "Lasto Blog", "Gold Shop" и т.д. и т.п. которые по многим своим параметрам не имеют аналогов не только в России, но и за бугром.
Часть скриптов отдается совершенно бесплатно, часть стоит чисто символическую сумму. Отзывчивая, всегда доступная и корректная помощь, позволяет начинающему, делающему свои первые шаги в Паутине, легко понять и освоить функционал и принципы работы скриптов.
Вадим Николаевич, как блогер на страницах своего блога, много пишет об актуальных проблемах русско-язычного сегмента Интернет и часто его размышления идут в разрез с общепринятым мнением.
Ярко выраженная индивидуальность изложения материала, перекрасное владение языком, чему можно только позавидовать, делает его публикации по тем или иным вопросам не забываемыми...
По дефолту в нем расположен html-код выводящий рекламные блоки типа небоскреб в колонки навигации. Мы же начнем с чистого листа. Удаляем все содержимое указанного файла - должно стать так:
<?php /* Выше этой строки в файле ничего не должно быть */ $counters=<<<counters counters; /* Ниже этой строки в файле ничего не должно быть. */ ?>
Для получения картинки, что приведена на скриншоте ниже, в блоках, которой можно расположить, как текстовую информацию, так и графику, а также рекламные баннеры на основе флеш:
необходимо в файл counters.php добавить следущее:
<?php /* Выше этой строки в файле ничего не должно быть */
$counters=<<<counters
<style type="text/css">
.counters {
border:#ccc 1px solid;margin:15px auto;
overflow:hidden;width:494px;
}
.bannercounters {
border:#ccc 1px solid;float:left;
margin:2px 0 2px 2px;width:160px;height:160px;
}
</style>
<div class="counters">
<div class="bannercounters">
banner counters.php
leftcounters
</div>
<div class="bannercounters">
banner counters.php
centercounters
</div>
<div class="bannercounters">
banner counters.php
rightcounters
</div>
</div>
<div class="counters">
Горизонтальный banner counters.php - width:494px;
</div>
counters;
/* Ниже этой строки в файле ничего не должно быть. */ ?>
С учетом того, что размеры контейнеров имеют фиксированную ширину, а блоки верхней части скриншота и фиксированную высоту это накладывает определенные ограничения на размещаемую в них информацию.
Оформление блоков может быть любым, все определяется только двумя классами стилей, которые можно вынести в общий файл XXX.css.
Интересной возможностью является разбиение содержимого файла counters.php на две или более частей, которые индивидуальными переменными могут быть интегрированы в нужное место файла design.php.
Прежде всего, снова обратимся к файлу counters.php для получения нужного функционала и произведем все необходимые нам действия:
<?php /* Выше этой строки в файле ничего не должно быть */
$counters=<<<counters
<style type="text/css">
.counters {
border:#ccc 1px solid;margin:10px auto;
overflow:hidden;width:494px;
}
.bannercounters {
border:#ccc 1px solid;overflow:hidden;
margin:10px auto;width:190px;
}
</style>
<!-- topcounters -->
<div class="counters">
Горизонтальный banner counters.php - width:494px;
</div>
<!-- topcounters -->
<!-- leftcounters -->
<div class="bannercounters">
banner counters.php
leftcounters
</div>
<!-- leftcounters -->
<!-- rightcounters -->
<div class="bannercounters">
banner counters.php
rightcounters
</div>
<!-- rightcounters -->
<!-- bottomcounters -->
<div class="counters">
Горизонтальный banner counters.php - width:494px;
</div>
<!-- bottomcounters -->
counters;
/* Ниже этой строки в файле ничего не должно быть. */ ?>
Секрет заключается в комментариях:
<!-- XXXcounters --> ... <!-- XXXcounters -->
В данном случае содержимое файла разбито на четыре части. Заключенный между ними html-код, может быть любым, также, как и его оформление, которое определяется двумя классами стилей.
Следующий шаг - редактирование файла design.php:
# Расфасовка содержимого по колонкам из файла counters.php
$leftcounters=$rightcounters=$topcounters=$bottomcounters='';
if (preg_match_all("~<\!-- leftcounters -->(.*)<\!-- leftcounters -->~Usi",$counters,$n)) $leftcounters=$n[1][0];
if (preg_match_all("~<\!-- rightcounters -->(.*)<\!-- rightcounters -->~Usi",$counters,$n)) $rightcounters=$n[1][0];
if (preg_match_all("~<\!-- topcounters -->(.*)<\!-- topcounters -->~Usi",$counters,$n)) $topcounters=$n[1][0];
if (preg_match_all("~<\!-- bottomcounters -->(.*)<\!-- bottomcounters -->~Usi",$counters,$n)) $bottomcounters=$n[1][0];
Эти строки размещаем перед строкой:
switch ($_s['settings']['designtype']) {
Полученные таким образом переменные:
$leftcounters $rightcounters $topcounters $bottomcounters
расставляем в нужные места шаблона страницы в том же файле design.php
По названию переменных должно быть понятно, какие куда.
Две верхних предназначены в основном для колонок навигации, последовательность их расположения по отношению к другим переменным - $menu, $add, $calendula, определяется самостоятельно.
Две нижних предназначены для области контента, оптимально перед и после переменной $echo, что не исключает их использования в header или footer, при соответствующем изменении html и css.
Будьте внимательны, соблюдайте синтаксис php, html и css, простой копипаст убережет от ошибок.
Все работоспособно и не однократно проверенно на практике.
Автор, благодарит Мастера Lasto за неоценимую помощь, приведшую к написанию данного поста, который, надеюсь, позволит поклонникам его творчества лучше разобраться в тонкостях и нюансах скрипта Lasto Blog.