Создайте свой собственный шаблон контента introtext

Этот мануал написан Робином Линдстремом (псевдоним Divining), официальным модератором форума jSeblod CCK, за что ему большое спасибо.

Несколько слов про index2

Index2.php - это файл шаблона, который используется для управления списками (или previews, или intros — он предоставляет практически бесконечные возможности, если вы используете ваше воображение).

Например, когда вы создаете ссылку в меню на список статей выбранной категории, используя пункт меню «Category Blog Layout», с index2.php вы можете контролировать, какие элементы должны появиться, и как их разместить.

Другой пример. Когда вы используете модуль чтобы вывести вступления к статьям, результаты выводятся при помощи index2.php.

Итак, начнем!

Шаг 1 — первые шаги на пути к собственному шаблону.

1) Войдите в административную панель и выберите менеджер контента.
2) Найдите пункт «Свой тип контента» и отметьте его галочкой.
3) Прокрутите страницу вниз, и в нижней части менеджера типов контента вы найдете функцию «Генератор шаблона».
4) В поле «Создать шаблон» выберите «Контент» и нажмите на кнопку «Создать».

Далее вам будет предложено сделать выбор относительно полученного файла «your_template.zip». Просто сохраните его там, где вы cможете его найти, а затем распакуйте.

1) Откройте распакованную папку.
2) Найдите и откройте templateDetails.xml в вашем любимом текстовом редакторе.
3) Добавьте следующую строку ниже строки <!-- CSS -->:

<filename>css/style.css</filename>

4) Добавьте следующую строку в разделе <filename> index.php </filename>

<filename>index2.php</filename>

5) Сохраните и закройте файл templateDetails.xml
6) Создайте новый файл в корневом каталоге шаблона с именем «index2.php»
7) Добавьте следующую информацию в верхней части файла «index2.php»:

<?php
// No Direct Access
defined( '_JEXEC' ) or die( 'Restricted access' );
?>

<?php
/**
* Init jSeblod Process Object { !Important; !Required; }
**/
$jSeblod = clone $this;
?>

<?php
// Add CSS
$document =& JFactory::getDocument();
$document->addStyleSheet( $this->baseurl.'/templates/'.$this->template.'/css/style.css' );
?>

8) Теперь у нас есть основа. Давайте двигаться дальше, чтобы выбранный вами контент отображался в виде «article preview».

Шаг 2 - Включите свое воображение!

1) Откройте файл шаблона «index.php» — здесь вы найдете все доступные поля контента, например:

<?php echo $jSeblod->YOUR FIELD NAME->value; ?>

2) Скопируйте поля, которые вы хотите показать на экране «Article preview page» (в вашем случае «Blog Layout Page»).

3) Вставьте соответствующие поля в ваш «index2.php», и приступайте к созданию «div»-ов для разметки контента, например:

<div align="center" class="cck_content">
<div class="cck_title"><h5><?php echo $jSeblod->YOUR TITLE FIELD->value; ?></h5></div>
<div class="cck_author">By: <?php echo $this->content->author ?></div>
<div class="cck_category"><em><?php echo $this->content->category ?></em></div>
<?php echo $jSeblod->nm_button_read->value; ?>
</div>

4) Сохраните ваш «index2.php» и загрузите новый шаблон через менеджер шаблонов jSeBlod CCK.
5) Перейдите на страницу "Типы контента" и назначте ваш новый шаблон контента.
6) На странице категории, для которой применен шаблон, проверьте, все ли в порядке.

Если вы где-то использовали шаблон «default content» ранее, то «article mainpage» может выглядеть немного иначе. Если вы не хотите создавать свой пользовательский стиль для главной страницы, то вы должны скопировать и заменить содержимое в index.php вашего шаблона из шаблона «Default content».

Кроме того, я советую вам добавить строку для подключения CSS. Когда вы будете готовы к созданию стилей — делайте это с помощью CSS. Просто создайте style.css и поместить его в папку CSS шаблона.

Вот и все! Теперь немного поиграйтесь с настройками и исследуйте бесконечные возможности jSeBlod-CCK!

Спасибо Johnpro за помощь в переводе статьи.

 
Комментарии  
 
+2 # Алексей 14.05.2010 20:05
Спасибо за статью.. ток че т не получается... как я понял, если я вывожу список статей блогом, то должен исполняться index2.php шаблона для каждой статьи в списке, а когда вывожу единичню статью (нажиммая, например на ссылку read more) должен исполнится файл index.php для выводимой статьи? Правильно я понял концепцию?:)
Ответить | Ответить с цитатой | Цитировать
 
 
0 # zhart 15.05.2010 09:02
Концепцию вы поняли правильно (если конечно я также понял ее правильно :) ).
Откровенно говоря, сам подобные манипуляции пока не делал.
А что конкретно не получается, на каком этапе проблемы возникают?
Ответить | Ответить с цитатой | Цитировать
 
 
0 # Алексей 15.05.2010 09:07
Уже разобрался:) Оказывается, чтобы эта концепция работала, необходимо добавить поле read_more и сделать его активным при добавлении нового материала. Иначе поведение становилось довольно странным: может исполняться либо только index.php, либо только index2.php. Эту логику пока не уяснил:) Вообще тут столько логики нужно уяснить, что страшно становится)))
Ответить | Ответить с цитатой | Цитировать
 
 
0 # zhart 15.05.2010 09:09
Алексей, спасибо за полезную информацию.
Да, логики много, компонент не самый простой для понимания. Ну да ничего, прорвемся общими силами :)
Ответить | Ответить с цитатой | Цитировать
 
 
+1 # Алексей 15.05.2010 12:13
А вот как достать просто ссылку на статью? т.е. там есть сразу готовая ссылка c тегами (read_more), но мне нужно, например, сделать ссылкой на статью картинку . Может немного оффтоп, но все ж:)
Ответить | Ответить с цитатой | Цитировать
 
 
0 # MOTORIST 24.05.2010 16:52
Как изменить отображение items (преьюшек, материала) в 4 колонки. Где можно изменить шаблон?
Ответить | Ответить с цитатой | Цитировать
 
 
0 # Алексей 25.05.2010 19:13
Цитирую Алексей:
А вот как достать просто ссылку на статью? т.е. там есть сразу готовая ссылка c тегами (read_more), но мне нужно, например, сделать ссылкой на статью картинку . Может немного оффтоп, но все ж:)

нашел $this->content->art_link

Цитирую MOTORIST:
Как изменить отображение items (преьюшек, материала) в 4 колонки. Где можно изменить шаблон?

если я правильно понял, то нужно менять стандартный жумловский шаблон блога
Ответить | Ответить с цитатой | Цитировать
 
 
0 # tiesto 05.07.2010 06:59
Выражаю признательную благодарность автору за переводы, и молю о помощи!!! Не выводится картинка в файле index2.php. Все поля есть а картинки нет (из базы не приходит). :'(
Ответить | Ответить с цитатой | Цитировать
 
 
0 # zhart 05.07.2010 07:52
tiesto, такие вопросы лучше задавать на форуме, на то он и создан.
Ответить | Ответить с цитатой | Цитировать
 
Добавить комментарий


Защитный код
Обновить