Анонс статьи

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО
#1 30 ноября 2011 в 05:07
Приветствую всех!!!
Возник такой вопрос
В настройках контента есть такая опция как Выводить анонсы при просмотре статей:
подскажите пожалуйста в каком файле лежит код отвечающий за его вывод ни как не могу найти
#2 30 ноября 2011 в 09:56
templates/_default_/components/com_content_view.tpl
  1.  
  2. {if $cat.showdesc}
  3. <div class="con_desc">
  4. {if $article.image}
  5. <div class="con_image">
  6. <img src="/images/photos/small/{$article.image}" border="0" alt="{$article.title}" />
  7. </div>
  8. {/if}
  9. {$article.description}
  10. </div>
  11. {/if}
  12.  
#3 30 ноября 2011 в 10:00
Тоже как-то задавался этим вопросом, хотел анонс перенести чуть выше изображения, но поняв что {$article.description} это все вместе (и анонс и текст статьи) бросил эту затею =)
#4 30 ноября 2011 в 11:16

templates/_default_/components/com_content_view.tpl
Код PHP:
01
{if $cat.showdesc}
02
    <div class="con_desc">
03
        {if $article.image}
04
             <div class="con_image">
05
                  <img src="/images/photos/small/{$article.image}" border="0" alt="{$article.title}" />
06
             </div>
07
        {/if}
08
        {$article.description}
09
     </div>
10
{/if}

• Mike •
да спасибо но это я знаю
тут надо копать в сторону {$article.description}

Тоже как-то задавался этим вопросом, хотел анонс перенести чуть выше изображения, но поняв что {$article.description} это все вместе (и анонс и текст статьи) бросил эту затею =)

Анатолий
Я все таки думаю что где то должен быть вывод этого кода соединяющий в себе вывод анонса и контента
Может выражаюсь не правильно я не очень силен в php но вроде все понятно может админы подскажут???
#5 30 ноября 2011 в 11:51
А вообще description рыть надо в этих двух файлах: /components/content/frontend.php и /components/content/model.php
#6 30 ноября 2011 в 12:53
Что вы хотите сделать с анонсом? скрыть или модифицировать?
Тот блок кода, что я привел выше, отвечает за вывод анонса в отображении категории…
Задайте точный вопрос получите точный ответ…
#7 30 ноября 2011 в 13:04
Текст статьи формируется слиянием анонса(description) и содержимого (content) статьи…
Происходит данный процесс в файле components/content/frontend.php в разделе:
  1.  
  2. ///////////////////////////////////// READ ARTICLE//////////////////////////////////////
  3. if ($do=='read'){ ...
  4. ...
  5. //PREPARE CONTENT
  6. $article_content = $cfg['readdesc'] ? $article['description'].$article['content'] : $article['content'];
  7. ...
  8.  
за вывод отвечает файл шаблона templates/_default_/components/com_content_read.tpl…
— т.е., если в конфигурации задано отображать анонс — происходит одновременный вывод анонса и содержимого в одной переменной…
но с файлом шаблона /public_html/templates/_default_/components/com_content_view.tpl это никак не связано, там анонс идёт в “чистом” виде… и его можно модифицировать или скрыть…
#8 30 ноября 2011 в 21:11
я хочу модифицировать анонс мне нужно изменить стиль вывода поменять
#9 30 ноября 2011 в 21:12
как я понял мне нужно добавить пару дивов в $article['description']
#10 30 ноября 2011 в 22:20
Может проще в css подредактировать класс con_desc?

Но, как уже писалось выше, до сих пор не ясно что именно вы желаете сделать.
#11 30 ноября 2011 в 23:00

я хочу модифицировать анонс мне нужно изменить стиль вывода поменять

altyhovm

как я понял мне нужно добавить пару дивов в $article['description']

altyhovm
чтобы назначить свой стиль можно применить “обёртку” из дивов с указанием класса или, отталкиваясь от содержимого анонса которое обычно идет в тегах параграфа <p>… </p> добавить в существующий файл стилей свойства для выборки:
  1.  
  2. .con_desc p {
  3. ...свойства....
  4. }
  5.  
#12 30 ноября 2011 в 23:03

Но, как уже писалось выше, до сих пор не ясно что именно вы желаете сделать.

Max


вот пример статьи все что желтым это анонс а остальное это текст статьи
висходном коде это выглядит так
  1. <p>Библиотека имени Б. Корнилова приглашает всех желающих посетить мероприятия, посвященное новому учебному году - &quot;Время знаний пришло&quot;.</p><p>Центральная библиотека имени Б. Корнилова приглашает школьников и студентов посетить презентации и выставки, приуроченные к началу нового учебного года и Дню знаний под символическим названием &quot;Время знаний пришло&quot;, которые пройдут здесь в рамках декады знаний с 1 по 10 сентября.</p>
  2.  
  3. <p>В течении этого времени ребята смогут посетить электронную презентацию &quot;Город мой,&nbsp;на другой не похожий...&quot; , &quot;Литературный нобель&quot;, а также совершить экскурсию по библиотеке &quot;Информационные ресурсы в помощь школьникам и студентам&quot;.</p>
  4.  
  5. <p>Как отметила заведующая читального зала центральной библиотеки имени Б.Корнилова М.Ф. Касаткина, ребята смогут познакомиться с историей родного края, а также узнают о российских лауреатах нобелевской премии в области литературы.</p>
  6.  
  7. <p>Заявки на посещение всех презентаций принимаются в библиотеке по адресу: улица 1 Мая дом 4 или по телефону 8(83162)5-27-83.</p>
  8.  
мне надо к анонсу добавить тег <div id="стиль"></div> а найти этого не могу вот и прошу вас помочь мне в этом
#13 30 ноября 2011 в 23:23
Файл \components\content\frontend.php

строка
  1. $article_content = $cfg['readdesc'] ? $article['description'].$article['content'] : $article['content'];
заменить на строку типа
  1. $article_content = $cfg['readdesc'] ? '<div id="стиль">'.$article['description'].'</div>'.$article['content'] : $article['content'];
#14 30 ноября 2011 в 23:48
Более универсальное решение:
меняем
  1.  
  2. //PREPARE CONTENT
  3. $article_content = $cfg['readdesc'] ? $article['description'].$article['content'] : $article['content'];
  4.  
на следующее:
  1.  
  2. //PREPARE CONTENT
  3. $article_content = $article['content'];
  4. if ( $cfg['readdesc'] = 1 ) {
  5. $article_desc = $article['description'];
  6. }
  7.  
находим далее (ниже) строку:
  1.  
  2. $smarty->assign('article_content', $article_content);
  3.  
вставляем после неё:
  1.  
  2. if ($cfg['readdesс'] = 1 ) {
  3. $smarty->assign('article_desc', $article_desc);
  4. }
  5.  
т.е. передаём в шаблон,
соответственно в файле шаблона templates/_default_/components/com_content_read.tpl
добавляем в блок вывода текста статьи:
  1.  
  2. {* =============== Текст статьи =============================== *}
  3. <div class="con_text" style="overflow:hidden">
  4. {if $article_image}
  5. <div class="con_image" style="float:left;margin-top:10px;margin-right:20px;margin-bottom:20px">
  6. <img src="/images/photos/medium/{$article_image}" border="0" alt="{$article_image}"/>
  7. </div>
  8. {/if}
  9. {if $article_desc} {* добавлено *}
  10. <div class="anonce">{$article_desc}</div> {* добавлено *}
  11. {/if} {* добавлено *}
  12. <div class="article_cont">{$article_content}</div> {* добавлено *}
  13. </div>
  14.  
в стилях присваиваем свойства двум новым классам: .anonce и .article_cont
#15 1 декабря 2011 в 03:39
• Mike •, во, мне как раз это решение нужно было, чтоб анонс и текст были отдельные! Благодарю за наглядную реализацию данной задумки!
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.