Вывод новостей (статьей), Версия 3.12

Статус
В этой теме нельзя размещать новые ответы.
  • Заблокирован
  • #21
Зайди в компонет с которого выводятся твои статьи или что там у тебя и в разделе этого компонента в разделе Системные настройки закоменту строчку:
if ($cc_settings[ListingStyle]=='fixed') $recNum = $cc_settings[FixedNumRows];
//if ($cc_settings[ListingStyle]=='fixed') $recNum = $cc_settings[FixedNumRows];
 
Появилась новая проблема - слишком много запросов к Базе - хостер ругается.

А описанная функция вывода новостей на сайте НетКэт:
".listQuery("SELECT a.subdivision_Name as linkname, a.Hidden_URL as link, a.Subdivision_ID AS sub,b.Sub_Class_ID AS cc FROM Subdivision AS a,Sub_Class AS b WHERE a.Subdivision_ID=b.Subdivision_ID AND a.Parent_Sub_ID='XX' AND a.Checked=1 AND b.Checked=1 ORDER BY a.Priority","<br><a href=\$data[link]>\$data[linkname]</a><br><hr width=90%>\".s_list_class(\$data[sub],\$data[cc],\"&recNum=3&isTitle=1\").\"")."
не срабатывает...

Кто-нить может привести альтернативный пример запроса к Базе для вывода 5 последних новостей из раздела, подраздела.
Буду благодарен!
 
ограничьте sql-запрос ч/з LIMIT

да и зачем городить такую конструкцию, вам же нужно только получить id'шники sub и сс
 
4 часа шастаю по Вашему форуму и по неткату, и не могу понять как новость добавить... ну неужели я такой тупой...
подскажите тупому разобраться в этой умной системе :thenks:
".s_list_class(1,2,"recNum=1")."
"1" = номер раздела
"2" = номер шаблона в разделе.
Номера смотреть в админке.
 
  • Заблокирован
  • #25
в шаблоне вывода данных (компоненты) новостей
PHP:
".opt_case(!$isTitle,
"Дата публикации: 
$f_date_day.$f_date_month.$f_date_year</br>
Анонс: 
$f_TextAnons</br>
Новость: 
$f_TextFull", 
"Дата публикации: 
$f_date_day.$f_date_month.$f_date_year</br>
<p>$f_TextAnons</p>"
)."
в макете дизайна
PHP:
".s_list_class(10,80,"&recNum=10&isTitle=1")."
где 10-номер раздела(в админке на карте сайта слева от названия раздела)
80-номер шаблона(компанента) в этом разделе (его можно увидеть в адресной строке браузера если перейти в сам раздел)
recNum=10-количество выводимых анонсов новостей
isTitle=1 переменная, которой мы собственно и определяем, показвать только анонсы или весь текст
Делаю всё так как ты описал.Но у меня сначала выводится обычный вывод,а затем тот который должен выводится.То ест ьсразу два.В чём проблема?Как сделать что бы выводились только заголовки.
 
PHP:
".(!$isTitle=1?"
Заголовок: $f_Name
Дата публикации: $f_date_day.$f_date_month.$f_date_year<br/>
Анонс: $f_TextAnons<br/>
Новость: $f_TextFull
":"
Заголовок: $f_Name
")."

про Для просмотра ссылки Войди или Зарегистрируйся
 
  • Заблокирован
  • #27
Я ещё раз повторюсь.
Я вывожу новость так
".s_list_class(10,80,"&recNum=10&isTitle=1")."
В компоненте в суфексе в самомнизу прописываю
".(!$isTitle=1?"
Заголовок: $f_Name
Дата публикации: $f_date_day.$f_date_month.$f_date_year<br/>
Анонс: $f_TextAnons</br>
Новость: $f_TextFull",
":"
Заголовок: $f_Name
")."
Но у меня выводится сначала обычный вывод то есть анонс,а затем выводится то что я указал в $isTitle=1 .То есть сразу два варианта выводятся.
Объясните пожалуйста как самому тупому всё по полочкам.
как вывести толлько заголовки новостей.
Что куда вставить в какое поля куда именна подробно.помогите пожалуйста.
Спасибо!
 
Я ещё раз повторюсь.
Я вывожу новость так.....
Но у меня выводится сначала обычный вывод то есть анонс,а затем выводится то что я указал в $isTitle=1 .То есть сразу два варианта выводятся.
Объясните пожалуйста как самому тупому всё по полочкам.
как вывести толлько заголовки новостей.
Что куда вставить в какое поля куда именна подробно.помогите пожалуйста.
Спасибо!
Смотри... поясню что тут за код, может это поможет разобраться.
!$isTitle=1? - это проверка переменной isTitle, её значение ты задаёшь в ссылке &isTitle=1, или не задаёшь, и тогда она не равна 1. По результатам проверки условия выводится ОДИН ИЗ блоков: или
PHP:
 "Заголовок: $f_Name
Дата публикации: $f_date_day.$f_date_month.$f_date_year<br/>
Анонс: $f_TextAnons</br>
Новость: $f_TextFull", "
или
PHP:
"
Заголовок: $f_Name "
так вот, судя по тому что ты написал...
...В компоненте в суффиксе в самом низу прописываю ...
выше этого кода у тебя прописан вывод без условий, его то ты и видишь каждый раз...
Но у меня выводится сначала обычный вывод то есть анонс,а затем выводится то что я указал в $isTitle=1 .То есть сразу два варианта выводятся.
....а под ним уже вывод в зависимости от условий...просто убери лишний код.
ЗЫ это моя гипотеза, чтобы разобраться наверняка нужен весь твой код этого компонента.
 
повторюсь..
надо смотреть твои компоненты и шаблоны
попробуй вывести дебаг через print_r
 
  • Заблокирован
  • #30
Вот код моего компонента:
Префикс списка объектов:
$f_AdminCommon
<div class='nc_list nc_news'>
Объект в списке:
$f_AdminButtons
<div class='nc_row'>
".opt( $cc_settings[Group]=='date'&& $groupHeader=( $curDep == $f_Date_day ? NULL : $curDep=$f_Date_day ) , "<h4 class='nc_group'>$groupHeader.$f_Date_month.$f_Date_year</h4>" )
.opt( $cc_settings[Group]=='month'&& $groupHeader=( $curDep == $f_Date_month ? NULL : $curDep=$f_Date_month ) , "<h4 class='nc_group'>$groupHeader.$f_Date_year</h4>" )."

<h3>".opt_case($cc_settings[FullLink]=='title' && ($f_Text || $f_ExtLink) , "<a href='".opt_case($f_Text,$fullLink,$f_ExtLink)."'>$f_Title</a>" , "$f_Title")."</h3>
".opt( $f_Picture , "<img class='nc_row_img' src='$f_Picture' alt='$f_Picture' />" )
.opt( $f_Announce , "<p class='nc_announce'>$f_Announce</p>" )
.opt( $f_SourceTitle || $f_SourceLink ,
"<div class='nc_source'><span>Источник: </span>".opt_case( $f_SourceTitle && $f_SourceLink , "<a href='$f_SourceLink'>$f_SourceTitle</a>",
opt_case( !$f_SourceLink,$f_SourceTitle , "<a href='$f_SourceLink'>$f_SourceLink</a>" )
)."</div>")."

".opt( $cc_settings['ShowComments'] && $cc_settings['CommentsSUB'] && $cc_settings['CommentsCC'] , "<div class='nc_comments_count'><span>Комментарии: </span>".(int)s_list_class($cc_settings[CommentsSUB], $cc_settings[CommentsCC], "&scID=$cc&objID=$f_RowID&CountComments=1", true)."</div>" )."

".opt( $cc_settings[DateStyle]!='disable' , "<div class='nc_datetime'>".
opt( $cc_settings[FullLink]=='date' && ($f_Text || $f_ExtLink) , "<a href='".opt_case($f_Text,$fullLink,$f_ExtLink)."'>").
opt( $cc_settings[DateStyle]!='time' , "<span class='nc_date'>$f_Date_day.$f_Date_month.$f_Date_year </span>" ).
opt( $cc_settings[DateStyle]!='date' , "<span class='nc_time'>$f_Date_hours:$f_Date_minutes </span>" ).
opt( $cc_settings[FullLink]=='date' && ($f_Text || $f_ExtLink) , "</a>" )."</div>"
)
.opt($cc_settings[FullLink]=='more' && ($f_Text || $f_ExtLink) , "<span class='nc_more'><a href='".opt_case($f_Text,$fullLink,$f_ExtLink)."'>подробнее...</a></span>")."
<div style='clear:both'></div>
</div>
Суффикс списка объектов:
".opt( !$nc_title ,
opt($totRows>$f_RowNum && $cc_settings[ListingStyle]=='fixed' , "<div class='nc_pagination'>Страницы: ".browse_messages($cc_env, 5)."</div>" )
.opt($totRows && $cc_settings[ListingStyle]=='day' , "<div class='nc_pagination'>Архив по дням: ".listQuery("SELECT DATE_FORMAT(Date,'%Y') AS year, DATE_FORMAT(Date,'%m') AS month, DATE_FORMAT(Date,'%d') AS day FROM Message$classID WHERE Subdivision_ID=$sub AND Sub_Class_ID=$cc AND DATE_FORMAT(Date,'%Y%m')='$year$month' GROUP BY DATE_FORMAT(Date,'%d') ORDER BY Date" , '".($i?" | ":NULL).($data[day]=="'.$day.'"?$data[day]:"<a href='.$SUB_FOLDER.$current_sub[Hidden_URL].'$data[year]/$data[month]/$data[day]/>$data[day]</a>")."' )."</div>")
.opt($totRows && $cc_settings[ListingStyle]=='month', "<div class='nc_pagination'>Архив по месяцам: ".listQuery("SELECT DATE_FORMAT(Date,'%Y') AS year, DATE_FORMAT(Date,'%m') AS month FROM Message$classID WHERE Subdivision_ID=$sub AND Sub_Class_ID=$cc AND DATE_FORMAT(Date,'%Y')='$year' GROUP BY DATE_FORMAT(Date,'%m') ORDER BY Date" , '".($i?" | ":NULL).($data[month]=="'.$month.'"?$data[month]:"<a href='.$SUB_FOLDER.$current_sub[Hidden_URL].'$data[year]/$data[month]/>$data[month]</a>")."' )."</div>")
.opt($totRows && $cc_settings[ListingStyle]=='year', "<div class='nc_pagination'>Архив по годам: ".listQuery("SELECT DATE_FORMAT(Date,'%Y') AS year FROM Message$classID WHERE Subdivision_ID=$sub AND Sub_Class_ID=$cc GROUP BY DATE_FORMAT(Date,'%Y') ORDER BY Date" , '".($i?" | ":NULL).($data[year]=="'.$year.'"?$data[year]:"<a href='.$SUB_FOLDER.$current_sub[Hidden_URL].'$data[year]/>$data[year]</a>")."' )."</div>")
)."

</div>
Отображение объекта:
<div class='nc_full nc_news'>
<h2>$f_Title</h2>
".opt( $f_Picture , "<img class='nc_row_img' src='$f_Picture' alt='$f_Picture' />" )."
<div class='nc_full_text'>$f_Text</div>
".opt( $cc_settings[DateStyle]!='disable' , "<div class='nc_datetime'>".
opt( $cc_settings[DateStyle]!='time' , "<span class='nc_date'>$f_Date_day.$f_Date_month.$f_Date_year </span>" ).
opt( $cc_settings[DateStyle]!='date' , "<span class='nc_time'>$f_Date_hours:$f_Date_minutes </span>" )."</div>"
)
.opt( $f_SourceTitle || $f_SourceLink ,
"<div class='nc_source'><span>Источник: </span>".opt_case( $f_SourceTitle && $f_SourceLink , "<a href='$f_SourceLink'>$f_SourceTitle</a>",
opt_case( !$f_SourceLink,$f_SourceTitle , "<a href='$f_SourceLink'>$f_SourceLink</a>" )
)."</div>"
)."
<div class='nc_clearer'></div>

".opt( $cc_settings['ShowComments'] && $cc_settings['CommentsSUB'] && $cc_settings['CommentsCC'] , "<div class='nc_comments'>".s_list_class( $cc_settings[CommentsSUB], $cc_settings[CommentsCC], "&scID=$cc&objID=$f_RowID&backlink=".urlencode(htmlspecialchars($GLOBALS[client_url]))."", true)."</div>")."

</div>
Системные настройки:
list( $year, $month, $day ) = split('-', $GLOBALS[date]);
if(!$year) $year = date('Y');
if(!$month) $month= date('m');
if(!$day) $day = date('d');

if ($cc_settings[ListingStyle]=='fixed' && !$recNum ) $recNum = $cc_settings[FixedNumRows];
Теперь помогите разобратся с этим.
Что и куда вставить,и чем вывести.
Спасибо!
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху