Вы не вошли.
Задача:
Выложить какой-то информационный блок (реклама, cсылки на разделы, поздравления,...) только на главной странице сразу перед новостями.
Что требуется для решения:
1. Плагин ads
Решение:
1. Активировать плагин ads
2. В нашем примере будем использовать рекламный блок # 1 плагина ads
В настройках плагина в разделе "Настройки рекламного блока № 1" необходимо сделать:
2.1. Выбрать "размещение переменной" = морда
2.2. Положить в "динамически изменяемый текст" то содержимое, которое вы хотите использовать.
Учтите, что в этом блоке:
* работает HTML, JScript
* не работают BB-коды и PHP
3. В шаблоне сайта mail.tpl (для шаблона по умолчанию: /templates/default/main.tpl) перед переменной {mainblock} вставить {ads1}
Вне форума
к сожалению, это не всегда работает.
например, если в качестве элемента дизайна используются таблицы с бордером.
пример, утрированный:
<table width="100%" width="100%" border="1">
<tr><td>{ads1}</td><td>{ads2}</td><td>{ads3}</td></tr>
</table>
и в блоках ads прописан параметр "морда"
как следствие, имеем непонятные ячейки на всех страницах, кроме главной.
какие еще есть предложения?
Вне форума
Морда - только на головной странице
Нигде - не отображать нигде
Морда - только на головной странице
!Морда - везде кроме морды
Сквозная - на всех страницах
В статической странице - Внутри шаблона статической страницы
Новость.короткая - в короткой новости (шаблон news.short.tpl)
Новость.полная - в полной новости (шаблон news.full.tpl)
Новость - в короткой и полной новости (шаблоны news.short.tpl, news.full.tpl)
// ой. тебе надо вывести табличный блок только на главной? Тогода в ads1 можно добавить весь код
<table width="100%" width="100%" border="1">
<tr><td>КОД ДЛЯ ADS1</td><td>{ads2}</td><td>{ads3}</td></tr>
</table>Отредактировано Wolverine (2009-05-19 13:34:35)
Вне форума
это утрированный вид кода таблицы, чтоб была понятна суть проблемы.
в полном коде шаблона ипользуются вложенные бордерные таблицы для визульного разделения материалов.
таким образом, получается, что в таблице я вынужден зарезервировать поле для блока ads.
а это приводит к выводу пустой бордерной ячейки.
я пока вижу только дин выход:
иметь блок ads1 в который убрана строка/столбец таблицы и уже внутри блока ads1 прописано отображение блоков ads2, ads3 и т.д. для отображения материалов..
но это полный пи...
поменяйте структуру шаблонов!!!
чтобы main не был связан с главной страницей, а был просто общим шаблоном всех страниц!
Отредактировано Dmil (2009-05-19 14:41:17)
Вне форума
и все же, я не вижу ситуации, в которой ячейку таблицы нельзя сунуть внутрь ads
а внутри одного блока нельзя прописать отображение другого, если я прав
main и есть общий шаблон всех страниц
Вне форума
к сожалению, main сейчас не только общий шаблон для всех страниц, но еще и вид главной страницы,
а это приводит к тому, что приходится иметь параметры в виде "морда" при отображении.
всего-то навсего надо поменять иерархию:
main - общее оформление
{mainblock} внутри него отображает шаблон отображения категории
при создании категории он и указывается.
все! куча проблем решена! нет проблем с дизайном страниц, нет проблем с публикацией! нет проблем с шаблонами отображения новостей на разных страницах!
при публикации новости просто указывается набор категорий, где она дложна быть видна!
затычки "морда-неморда" не нужны!
п.с. привожу пример кода таблицы шаблона, тоже немного утрировано.
<table border=1>
<tr>
<td>
<table border=1>
<tr><td>{ads1}</td><td>{ads2}</td><td>{ads3}</td></tr>
</table>
</td>
</tr>
<tr>
...............
Отредактировано Dmil (2009-05-19 15:08:35)
Вне форума
это тот же самый пример, что и был выше
и я снова повторю то же самое: вставь <td></td> внутрь ads
ads1 = <td>абв</td>
ads2 = <td>где</td>
ads3 = <td>жзи</td>
<table border=1>
<tr>
<td>
<table border=1>
<tr>{ads1}{ads2}{ads3}</tr>
</table>
</td>
</tr>
<tr>
Вне форума
вот смотрите.
есть таблица поля
в ней для блока информации выделена строка.
в этой строке есть другая таблица, содержащая только модули главной страницы
так как обе таблицы бордерные, то при отображении других страниц блоки ads не отбразятся, а вот строка внешней страницы - отобразится в виде артефактов.
Вне форума
Dmil, ничего не поняла ![]()
Для решения вопроса, если исходить из утрированного примера, то делать так:
вставить в main:
<table border="1">
<tr>
<td>
{ads1}
</td>
<tr>
</table>в ads1 вставить:
<table width="100%" border="1">
<tr>
<td>КОНТЕНТ-1</td>
<td>КОНТЕНТ-2</td>
<td>КОНТЕНТ-Х</td>
</tr>
</table>и будет счастье ))
Вне форума
ну так "любой контент" это в том числе и ссылки на плагины
а вложенность тут с одной стороны не работает. с другой - плоха в плане из-за того что может получиться рекурсия, что приведёт к краху...
Отредактировано Dmil (2009-05-20 12:35:24)
Вне форума
да, видимо, так и придется делать... можно сказать, что проблема решена. (если не считать, что начинаются запутки с понятиями "главная страница", "главный шаблон" и пункт меню "главная")
Вне форума
Вне форума
Proxx, сейчас это работает с помощью блоков
Все сайты, что могут быть сделаны на ng cms, должны быть сделаны на ng cms.
Расширив границы сознания, мы открываем новые горизонты жизни.
Вне форума
easmik, блин, я походу вообще нуб последний... Или ещё не разобрался... ![]()
На главной перед новостями хочу сделать наподобие картинки "Последние новости", н моем шаблоне на главной идет вывод новостей в 2 колонки, поэтому ставить в news.short.tpl бестолку - будет повторятся 2 раза...
Какие могут быть варианты решений? :|
Что стоит материальный мир, когда есть возможность создавать вечное?
Вне форума
Proxx, news.table.tpl туда можно вставить блок и если нужно задать условия в каких категориях оно будет выводиться. Или же в main.tpl условный блок.
Все сайты, что могут быть сделаны на ng cms, должны быть сделаны на ng cms.
Расширив границы сознания, мы открываем новые горизонты жизни.
Вне форума
easmik, условный блок... как всё запущенно ![]()
Типа, если главная - то блок выводится, если нет - то нет? Или как? Разжуйте мне пжлст, я ток 3 день с cms
Что стоит материальный мир, когда есть возможность создавать вечное?
Вне форума
Proxx, да с блоками логика верная. могу не только разжевать на конкретном примере, но и прописать куда нужно. Это будет Вам стоить ссылки на ngcms с Вашего сайта и обещания не убирать её от туда.
Все сайты, что могут быть сделаны на ng cms, должны быть сделаны на ng cms.
Расширив границы сознания, мы открываем новые горизонты жизни.
Вне форума
easmik, я ждал весь день Вашего ответа, ибо работать стоИт ![]()
Ссылку не сделаю, а поставлю баннер 88/31 (даже сам сделаю, ибо шаблон предполагает лишь баннера)... если можно... или обязательно ссылка?
Отредактировано Proxx (2013-01-12 22:30:08)
Что стоит материальный мир, когда есть возможность создавать вечное?
Вне форума
Proxx, без разницы.
в main.tpl перед {mainblok} нужно вставить конструкцию [ifhandler:news:main]Ваш блок[/ifhandler]
Все сайты, что могут быть сделаны на ng cms, должны быть сделаны на ng cms.
Расширив границы сознания, мы открываем новые горизонты жизни.
Вне форума
[ Сгенерировано за 0.019 сек, 7 запросов выполнено - Использовано памяти: 621.8 Кбайт (Пик: 674.8 Кбайт) ]