Добрый день! Есть раздел "Новости", соответственно хочется сделать раздел "Архив новостей". Подскажите, как правильно это сделать? Есть два варианта: на маркет плэйсе есть компонент архива новостей, правда, он генерирует только ссылку, а фильтрацию настраивать нужно самостоятельно. подскажите, может кто сталкивлся с этим уже? Или есть примеры по этому компоненту? Второй вариант-
| Код |
|---|
<? CModule::IncludeModule('iblock'); $arrNews =
CIBlockElement::GetList(array('ACTIVE_FROM'=>'DESC'),array('IBLOCK_TYPE'=>'simple',
'IBLOCK_ID'=>3, 'ACTIVE'=>'Y', 'ACTIVE_DATE'=>'Y'));
while ($prodtype = $arrNews->GetNext()):
$arrYear[] =
substr($prodtype['ACTIVE_FROM'],6,4).'-'.substr($prodtype['ACTIVE_FROM'],3,2);
endwhile;
$resultYear = array_keys(array_count_values($arrYear));
for($i = 0; $i < sizeof($resultYear); $i++):
$cYear = substr($resultYear[$i],0,4);
$cMon = substr($resultYear[$i],5,2);
$cirMon = Array(
'01'=>'Январь',
'02'=>'Февраль',
'03'=>'Март',
'04'=>'Апрель',
'05'=>'Май',
'06'=>'Июнь',
'07'=>'Июль',
'08'=>'Август',
'09'=>'Сентябрь',
'10'=>'Октябрь',
'11'=>'Ноябрь',
'12'=>'Декабрь');
if ($cc != $cYear):
$linkYear = $cYear;
if ($i != 0) echo '</div>';
echo '<b';
if ($cYear != date("Y") echo '
class="arch-year-link"';
'>'.$cYear.'</b><br /><div
class="month-box">';
endif;
echo '<a
href="'.SITE_DIR.'/novosti/111.php?'.urlencode('DateFilter[>=DATE_ACTIVE_FROM]').'='.urlencode('01.'.$cMon.'.'.$linkYear).'&'.urlencode('DateFilter[<=DATE_ACTIVE_FROM]').'='.urlencode('31.'.$cMon.'.'.$linkYear).'">'.$cirMon[$cMon].'</a><br
/>';
$cc = $cYear;
endfor; echo '</div>';
?> |
Вот такой вот код. Пробовала-не очень-то он и работает, не знаю, может накосячила где-то, но он выводит просто месяцы, не как ссылки, а как обычный текст.