Главные новости

Вывод категории cmscode в 2 и 3 колонки

Вывод категории cmscode в 2 и 3 колонки

Вывод категории cmscode в 2 и 3 колонки
Малое неудобство это число статей на страницу, если к примеру вам надо вывести 10 статей, то указываем 9 статей на страницу ( так как в php отсчет идет не с 1, а с 0 и получается что 9=10 статьям 0,1,2,3,4,5.6,7,8,9 это связано с выводом из массива данныйх) 

Вывод создан полуадаптивным и если вы увеличите в зумме браузера шрифт ипрочее то позиции данных статей не искозятся и не будут прыгать (а то при float:left; они могли перескакиватьили получалась ыб дранина.)

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

Описание некоторых параметров

$chislo_v_ryad=2; отвечает за 2 или 3 колонки

$chislosimvlov отвечает за число символов краткой статьи

if($chislo_v_ryad==2){$chislo_v_ryads='1.8'; $max_width_img='339px'; $chislosimvol_title=140;$height_img='150px';
$main_divstyle='text-align:justify; width:'.$procent.'%; min-height:162px; margin:0px 5px 10px 5px; float:left;';
$titlestyle='font-size: 16px; line-height: 120%;margin: 0px 0px 5px 0px; padding: 0px; min-height:40px;';
$texts_style="font-size:16px; min-height:90px; text-align:justify;";
}

$title_categor_on=1; отвечает за заголовок категории 1вкл,0выкл
$titleon=1; отвечает за вывод титульника
$texton=1; за вывод краткого текста
$imgon=1; показывать ли фотку да нет
$dateonof=1; отображать ли дату
$imgpicher='big'; может принемать 3 значения big small original или если фотки нет то выводит заглушку
$dateparams='d.m.Y H:i'; вывод даты по примеру date php в строку можно вписывать и свои слова к примеру 'Создано d.m.Y в H:i'

условие для 2х колонок где вам придется регулировать ширину максимальную для изображения в px и остальные стили аналогично и для 3х колонок условие идет чуть ниже

Полный код скрипта

<?php
$chislosimvlov=330;

$chislo_v_ryad=2;
if($chislo_v_ryad==2){$chislo_v_ryads='1.8'; $max_width_img='339px'; $chislosimvol_title=140;$height_img='150px';
$main_divstyle='text-align:justify; width:'.$procent.'%; min-height:162px; margin:0px 5px 10px 5px; float:left;';
$titlestyle='font-size: 16px; line-height: 120%;margin: 0px 0px 5px 0px; padding: 0px; min-height:40px;';
$texts_style="font-size:16px; min-height:90px; text-align:justify;";
}
else if($chislo_v_ryad==3){$chislo_v_ryads='1.8'; $max_width_img='200px'; $chislosimvol_title=80; $height_img='80px';
$main_divstyle='text-align:justify; width:'.$procent.'%; min-height:162px; margin:0px 5px 10px 5px; float:left;';
$titlestyle='font-size: 16px; line-height: 120%;margin: 0px 0px 5px 0px; padding: 0px; min-height:40px;';
$texts_style="font-size:14px; min-height:80px; text-align:justify;";
}
$procent=100/$chislo_v_ryad-$chislo_v_ryads;
$title_categor_on=1;
$titleon=1;
$texton=1;
$imgon=1;
$dateonof=1;
$imgpicher='big';
$dateparams='d.m.Y H:i';

/*$cod_socialnih_knopok='<script src="//yastatic.net/es5-shims/0.0.2/es5-shims.min.js"></script>
<script src="//yastatic.net/share2/share.js"></script>
<div class="ya-share2" data-services="vkontakte,facebook,odnoklassniki,moimir,gplus,twitter"></div>';*/


$main_divstyle='text-align:justify; width:'.$procent.'%; min-height:162px; margin:0px 5px 10px 5px; float:left;';
$imgstyle='width:auto;max-width:'.$max_width_img.'; height:'.$height_img.';margin:0px 0px 0px 0px;';

if($title_categor_on==1){
echo '<div style=" background-color:#f0f0f0; margin: 6px 0px 5px 0px; padding:10px 10px 11px 10px; font-size:14px;"><a style="сolor:blue; font-size:14px; font-weight: bold;" href="'.$p.'index.html">Главная</a> » '.$title.'</div><div style="clear: both;"></div>';}


include $p.'funcktions/time.html';
$config_site=new CMSCODE_site();
if($config_site->time_onof==1){
$real_time_public=time_now ($config_site->time_year, $config_site->time_month, $config_site->time_day, $config_site->time_hour,$config_site->time_min, $config_site->time_sec);
$real_time_public;}
else{$real_time_public=date('Y.m.d.H.i.s');}
$handle = fopen($p.'bd/'.$catname.'.html', "r");
$datas = fgets($handle);
while (($datas = fgets($handle)) !== FALSE)
{$data=explode('_/\_',$datas);

if($data[18]=='1' and $data[5]<=$real_time_public){
$massiv[]=array("$data[0]","$data[5]");
}

}
fclose($handle);

if($massiv==NULL){}
else{
/*сортировка массива начало*/
foreach ($massiv as $key => $row) {
$distance[$key] = $row['1']; }
if($kolstateysort=='1'){$sorts=SORT_ASC;}
elseif($kolstateysort=='0'){$sorts=SORT_DESC;}
array_multisort($distance, $sorts, $massiv);

$strokvsego=count($massiv);
$result =$massiv;
//число страниц вывода
if(isset($_GET['page'])) $page = $_GET['page'];
else $page = 1;
// Число страниц
$total=$strokvsego-1;
$number = (int)($total/$pnumber);
if((float)($total/$pnumber) - $number != 0) $number++;
$start = $page * $pnumber - $pnumber;
$end = $page*$pnumber;
if($end > $total) $end = $total;
// Постраничная навигация
$tota = intval(($total - 1) / $pnumber) + 1;

if($page>$tota){exit("<HR><center><h1>Такой страницы на этом сайте еще нет (или уже нет). <a href='".$b."index.html'>На Главную</a><h1></center><HR>"); }
// Проверяем нужны ли стрелки назад
if ($page != 1) $pervpage = ' <a href= ./'."$catname.html".'?page=1 class="postranichnayanavigacia">«</a>
<!-- <a href= ./'."$catname.html".'?page='. ($page - 1) .' class="postranichnayanavigacia">назад</a>-->';
// Проверяем нужны ли стрелки вперед
if ($page != $tota) $nextpage = ' <!-- <a href= ./'."$catname.html".'?page='. ($page + 1) .' class="postranichnayanavigacia">в перёд</a>-->
<a href= ./'."$catname.html".'?page=' .$tota. ' class="postranichnayanavigacia">»</a> ';
// Находим 5 ближайшие станицы с обоих краев, если они есть
if($page - 5 > 0) $page5left = ' <a href= ./'."$catname.html".'?page='. ($page - 5) .' class="postranichnayanavigacia">'. ($page

- 5) .'</a> ';
if($page - 4 > 0) $page4left = ' <a href= ./'."$catname.html".'?page='. ($page - 4) .' class="postranichnayanavigacia">'. ($page

- 4) .'</a> ';
if($page - 3 > 0) $page3left = ' <a href= ./'."$catname.html".'?page='. ($page - 3) .' class="postranichnayanavigacia">'. ($page

- 3) .'</a> ';
if($page - 2 > 0) $page2left = ' <a href= ./'."$catname.html".'?page='. ($page - 2) .' class="postranichnayanavigacia">'. ($page

- 2) .'</a> ';
if($page - 1 > 0) $page1left = ' <a href= ./'."$catname.html".'?page='. ($page - 1) .' class="postranichnayanavigacia">'. ($page -

1) .'</a> ';
if($page + 5 <= $tota) $page5right = '<a href= ./'."$catname.html".'?page='. ($page + 5) .' class="postranichnayanavigacia"> '.

($page + 5) .'</a> ';
if($page + 4 <= $tota) $page4right = '<a href= ./'."$catname.html".'?page='. ($page + 4) .' class="postranichnayanavigacia"> '.

($page + 4) .'</a> ';
if($page + 3 <= $tota) $page3right = '<a href= ./'."$catname.html".'?page='. ($page + 3) .' class="postranichnayanavigacia"> '.

($page + 3) .'</a> ';
if($page + 2 <= $tota) $page2right = '<a href= ./'."$catname.html".'?page='. ($page + 2) .' class="postranichnayanavigacia"> '.

($page + 2) .'</a> ';
if($page + 1 <= $tota) $page1right = '<a href= ./'."$catname.html".'?page='. ($page + 1) .' class="postranichnayanavigacia">'.

($page + 1) .'</a> ';
// Вывод меню
if($total<=$pnumber){}



else{
?>
<?php
if ($page >= 1 and $total > $pnumber) $pages =" <span class='postranichnayanavigacia'>$page</span> ";
elseif ($total < $pnumber) $pages ='';
'<br><div align="center">'.$pervpage.$page4left. $page3left. $page2left. $page1left. $pages. $page1right.$page2right.$page3right.$page4right.$nextpage."<br/><br/></div>";} ?>

<?php $z=0;
for($i = $start; $i <= $end; $i++){
$asfd=$massiv[$i];

$handles = fopen($p.'bd/'.$catname.'.html', "r");
$datas = fgets($handles);
while (($datasm = fgets($handles)) !== FALSE)
{$datal=explode('_/\_',$datasm);
if($datal[0]==$asfd[0]){
$dfsdg=$datal;

if($imgon==1){
clearstatcache();
$imgpichers=str_replace('big','image/'.$dfsdg['17'].'/'.$dfsdg[3].'.jpg',$imgpicher);
$imgpichers=str_replace('small','image/'.$dfsdg['17'].'/1/'.$dfsdg[3].'.jpg',$imgpichers);
$imgpichers=str_replace('original','images/'.$dfsdg['17'].'/1/'.$dfsdg[3].'.jpg',$imgpichers);

if (file_exists($p.$imgpichers)){
$imgs='<div style="text-align:center; width:100%;"><img src="'.$p.$imgpichers.'" style="'.$imgstyle.'" alt="'.$data[1].'"></div>';
}
else{$imgpichers='image/nopic.jpg';
$imgs='<div style="text-align:center; width:100%;"><img src="'.$p.$imgpichers.'" style="'.$imgstyle.'" alt="'.$data[1].'"></div>';
}

}
else{$imgs='';}

if($dateonof==1){
$dataexplode=explode('.',$data['5']);
$dateparam=str_replace('Y',$dataexplode[0],$dateparams);
$dateparam=str_replace('m',$dataexplode[1],$dateparam);
$dateparam=str_replace('d',$dataexplode[2],$dateparam);
$dateparam=str_replace('H',$dataexplode[3],$dateparam);
$dateparam=str_replace('i',$dataexplode[4],$dateparam);
$dateparam=str_replace('s',$dataexplode[5],$dateparam);

$dateparam='<span style=" font-size: 11px; font-weight: 900; margin: 4px 10px 0px 0px; text-align: left; float: left;">'.$dateparam.'</span>';
}


if($texton==1){$texts=$dfsdg['14'];
$string = strip_tags($texts);
$string=str_replace('&nbsp;','',$string);
if(strlen($string)<=$chislosimvlov){$texts='<div style="'.$texts_style.'">'.$dateparam.$string.'</div>';}
else{
$string = substr($string, 0, $chislosimvlov);
$string = rtrim($string, "!,.-");
$string = substr($string, 0, strrpos($string, ' ')); $string=$string."…"; $texts='<div style="'.$texts_style.'">'.$dateparam.$string.'</div>';} }
else{$texts='';}




if($titleon==1){$titles=$dfsdg['1'];}
else{$titles='';}

$string = strip_tags($titles);
$string=str_replace('&nbsp;','',$string);
if(strlen($string)<=$chislosimvol_title){$titles=$string;}
else{
$string = substr($string, 0, $chislosimvol_title);
$string = rtrim($string, "!,.-");
$string = substr($string, 0, strrpos($string, ' ')); $string=$string."…"; $titles=$string;}

$z++;
if($chislo_v_ryad==$z){$z=0; $noviyryad='<div style="clear: both;"></div>';}
else if($chislo_v_ryad==$z){$z=0; $noviyryad='<div style="clear: both;"></div>';}
else{$noviyryad='';}

echo '<div style="'.$main_divstyle.'"><h4 style="'.$titlestyle.'"><a style="text-decoration: none; font-weight: bold;" class="ssilka1" href="./'.$dfsdg['17'].'/'.$dfsdg['0'].'">'.$titles.'</a></h4>'.$imgs.
$texts.'<div style="margin-top:5px;"><a class="readon" href="./'.$dfsdg['17'].'/'.$dfsdg['0'].'">Подробнее...</a>
</div> </div>'.$noviyryad;
break;
}

}
fclose($handles);


}
// Вывод меню

if($total<=$pnumber){}
else{echo '<div style="clear: both;"></div> <br/> <br/><div align="center"> '.$pervpage. $page4left .$page3left. $page2left.

$page1left.'<b>'.$pages.'</b>'.

$page1right.$page2right.$page3right.$page4right.$nextpage.'<br/></div>';}

}?>