Сайт провинциального самурая

Сайт провинциального самурая

Шаблон морды категории ВебДваНольнутого Портатора

Шаблон морды категории :

Шаблон морды категории: ./data/tpl/page.php - состоит из двух логических частей:

<?php /* Выше этой строки в файле ничего не должно быть */

   global $edit;

# Сколько анонсов статей отображать на странице:
   $m=10;

# Если хочется вставить на страницу категории с анонсами 
# какие-нибудь рекламные блоки, заданные в ./data/add.php
# то оговаривайте, после какого по счёту блока что вставлять.
   $page_add=array(
      "3"=>"<center>".$_s['add_468_60']."</center>",
      "5"=>"<center>".$_s['add_468_60']."</center>",
      "10"=>"<center>".$_s['add_468_60']."</center>",
   );

# Вёрстка страницы с анонсами заметок категории задаётся данным шаблоном:

function structure_cat_anonse($subj,$anonce,$link,$numbercomments,$edit) {
   global $edit;

# Структура анонсов статей на морде категории:
# $link - URL статьи.
# $subj - заголовок анонса статьи.
# $anonce - анонс статьи.
# $numbercomments - кнопка, отображающая число комментов к статье.
# Её внешний вид ПОЛНОСТЬЮ определяется дивом класса "com".
# Наличие или отсутствие этой кнопки определяется разрешением 
# или запретом отображения комментов в сеттингах.
# $edit - кнопочки редактирования поста в режиме админки.
# Внутри контейнера EOF обычный HTML код.
# C употреблением указанных выше переменных:


   $link=($link=="#") ? $subj: "<a href=$link>$subj</a>";
   return <<<EOF 

<h1 class=part>$link</h1>
$numbercomments
<div class=clear></div>
$edit
<p class=title>$anonce</p>
<div class=clear></div>

EOF;

# Завершение шаблона анонса для морды категории.

}

Из комментариев понятно, что этот кусок кода, а вернее, функция, определяет внешний вид анонса статьи на морде категории. Собственно, HTML кода тут чуть, все стили прописаны в CSS.

После того, как мы нагенерили анонсов в соответствии с данным шаблоном, далее приступаем к оформлению страницы с анонсами:

# Вёрстка страницы морды категории:

function structure_cat_page() {
   global $_s,$content;
   
# Если контента нет (ошибочная адресация), то выводим отлуп:
   if ($content=="") return "<h1 class=panel>".$_s['lang']['page_empty']."</h1>";

# Если контент присутствует, то как-нибудь его оформляем:
# Внутри контейнера EOF обычный HTML код.
# C употреблением указанных выше переменных:

   return <<<EOF 

<div class=Page>
   <!-- google_ad_section_start -->
   $content
   <!-- google_ad_section_end -->
</div> 

EOF;

# Завершение шаблона морды категории.

}

/* Ниже этой строки в файле ничего не должно быть. */ ?>

Тут и того проще- все эти анонсы, упавшие в переменную $content, окаймляем нужными тегами, присовокупляя всё, что Вам захочется добавить в шаблон.

Гугловые блоки, если они заказаны к размещению на странице категории, встанут в указанные места сами собой.

Если тулза раскидывания рекламных блоков между анонсами артиклей не нужна (Вы явно указываете в шаблоне страницы, где какой блок воткнуть, например, один сверху, другой снизу), то массив $page_add просто убиваете, а второй фрагмент кода делаете, например, таким:

# Вёрстка страницы морды категории:

function structure_cat_page() {
   global $_s,$content;
   
# Если контента нет (ошибочная адресация), то выводим отлуп:
   if ($content=="") return "<h1 class=panel>".$_s['lang']['page_empty']."</h1>";

# Вспоминаем из массива $_s код всяких нужных нам тут рекламных блоков:
   $add_468_60=($_s['add_468_60']) ? $_s['add_468_60']: "";

# Если контент присутствует, то как-нибудь его оформляем:
# Внутри контейнера EOF обычный HTML код.
# C употреблением указанных выше переменных:

   return <<<EOF 

<div class=Page>
   $add_468_60
   <!-- google_ad_section_start -->
   $content
   <!-- google_ad_section_end -->
   $add_468_60
</div> 

EOF;

# Завершение шаблона морды категории.

}

/* Ниже этой строки в файле ничего не должно быть. */ ?>

Стройте страницу категории как нужно и удобно- конструктор же...