MIDAV.RU

MIDAV.RU

Учусь делать сайты в свободное время .

Структрура компонента com_content в Joomla 2.5

Просмотров: 7571Комментарии: 8
Joomla

В версии Joomla 2.5 немного изменилась структура компонента com_content . Поскольку упразднили разделы , главную страницу . На главной теперь по умолчанию выводятся избраные материалы . Добавился новый вид вывода материалов - список категорий .

Поскольку чаще всего нужно изменить вывод материалов , нам придется работать с файлами видов или представлений . Как правило менять модели не потребуется .  Итак рассмотрим структуру видов com_content .

Оригинальные файлы расположены в папке components\com_content\views\ . В каждой папочке есть папка tmpl , в которой собственно и расположены нужные нам файлы . Структуру смотрим на скрине :

Структура com_content

Но лучше не изменять оригинальные файлы , а переопределить их в своем шаблоне . Так мы обезопасимся от потери изменений при обновлении системы .

Для этого создаем в своем шаблоне папку html и в ней папку com_content . Я покажу на примере стандартного шаблона Beez20 . Потом создаем в ней папку для нужного нам представления и копируем в нее нужные нам файлы из com_content/views . Если переопределять все представления com_content , то должна получится такая структура папок :

 Переопределение вывода com_content в своем шаблоне

Для конкретного примера сделаем простенькое изменение вывода отдельного материала . Например захотелось нам обернуть текст материала красивой рамочкой . В стандартном макете это будет сделать затруднительно . Поскольку текст не обрамлен отдельным контейнером , которому можно было бы эту рамочку назначить . Исправим это досадное неудобство smile

Нам понадобится изменить файл templates\beez_20\html\com_content\article\default.php , Который мы скопируем из components\com_content\views\article\tmpl\ .

Находим в этом файле строчку отвечающую за вывод текста и добавляем свой див . В примере я прописал стили прямо в теге :

<div style="border:2px solid #ccc; padding:5px;">
	<?php echo $this->item->text; ?>
</div>

Наслаждаемся результатом smile :

Добавление рамки в выводе материала Joomla2.5

Для изменения других нужных вам видов действуем по аналогии . Например для изменения вывода блога категории нужно будет изменять файл category/blog.php .

Комментариев: 8 RSS

test page

1 Турал 04-06-2012 16:09

А как к этим контактам добавить поля Skype и ICQ? Уже очень долго мучаюсь над этой проблемой, но ни адекватных сторонних расширений, ни нормальной инструции, как добавить дополнительные поля, я не нашел.

test page

2 Vadim 05-06-2012 21:39

А как к этим контактам добавить поля Skype и ICQ?

К каким контактам ? Поподробнее объясните .

test page

3 Marat 26-10-2012 17:41

А как переопределить файл модели компонета com_content?

test page

4 Vadim 26-10-2012 22:15

А как переопределить файл модели компонета com_content?

Хм.. просто переопределить не получится , мне кажется . А какова задача ?

test page

5 Marat 28-10-2012 10:17

К списку материалов добавить дополнительные поля. В принципе и не страшно переписать jooml'ский файл, или из view сделать запрос в базу(понятно, что не кошерно) но думал есть какое-то более простое решение.

test page

6 Vadim 28-10-2012 13:54

Какие именно поля хотите добавить к выводу ?

test page

7 Marat 29-10-2012 03:14

Спасибо за интерес к моей работе! Вот например первый комментарий от Турала.

Есть материалы о моих друзьях. Я могу вывести заголовки этих материалов в таблицу в виде ссылок (default_article.php). Хотелось бы вывести Skype и ICQ в этой

test page

8 Marat 29-10-2012 03:20

таблице. Данные по Skype и ICQ хранятся в дополнительной таблице, которая обслуживается дополнительным компонентом, который уже в основном написан. Есть 2 пути: 1)дописать модуль view в компонент; 2)использовать com_content.

Судя по Вашим ответам я склоняюсь к 1 варианту.

Оставьте комментарий!

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question


Используйте нормальные имена. Ваш комментарий будет опубликован после проверки.

     

  

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email. При регистрации на указанный адрес придет письмо со ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д., а также подписку на новые комментарии.

(обязательно)