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

О галереи для статичного сайта cmscode

О галереи  для статичного сайта cmscode

Галерея встроена по умолчанию в один из компонентов an_k2 cmscode. Вам надо выбрать для себя каким щаблонов вывода галереи вы будете пользоваться и после выбора встроить нужный код в шаблон статьи и вуаля он будет работать быстро и четко и без всяких проблем.
Галерея строится и работает на zip библеотечке с этого сайта там вы можете ознакомиться с условиями её использования http://www.phpconcept.net
Учтите что данные коды скритов ниже сделаны только для статичной версии сайта чтобы можно было преобразовать изображения в bas64 из архива и сохранить в статике.
На данный момент есть 2 вареанта вывода один

1. написан на js и быстрее и оптимизированней, но я не знаю как он будет работать на мобильниках и прочих браузерах у которых js отрублен 

<?php $textstatii=str_replace('_/\_',"_/\_",$dfsdg[15]);
echo '<h1 align="center" style="margin-top:5px; padding-left:9px;">'.$dfsdg[1].'</h1>
<div align="justify" style="padding:10px 0px 10px 0px; /*color:#a8a8a8;*/ font-size:14px; line-height: 150%; " >'.$textstatii.'</div>';
$asdk=$p.'file/gallery/'.$dfsdg[17].'/'.$dfsdg[0].'.zip'; clearstatcache ();
if(file_exists($asdk)){
include $p.'modul/mod_k2gallery/gallery1.html';
$vd=explode('|',$dfsdg[11]);
$vsegoooo=count($vd);
echo '<h4>Галерея</h4>';?>

<script>
function g(id) {
var str = gallery[id];
var name=gallery[""+id+"_"];

var temp='<div class="k2_gallery"><a class="fancybox" rel="group" href="data: image/jpg;base64,'+str+'" title="'+name+'"><img src="data: image/jpeg;base64,'+str+'" alt="'+name+'" /></a></div>';
document.write(temp);

}
var gallery = [];</script>
<?php
for($z=0;$z< $vsegoooo;$z++){

//$base=base64_encode($p.'|'.$vd[$z].'|'.'file/gallery/'.$dfsdg[17].'/'.$dfsdg[0].'.zip');

$archive = new PclZip($p.'file/gallery/'.$dfsdg[17].'/'.$dfsdg[0].'.zip');
$list=$archive->extract(PCLZIP_OPT_BY_NAME, $vd[$z],PCLZIP_OPT_EXTRACT_AS_STRING);
$base=base64_encode($list[0]['content']);
echo '<script>
gallery["'.$z.'_"]="'.$vd[$z].'";
gallery["'.$z.'"]="'.$base.'";
g('.$z.');</script>';

// echo'<div class="k2_gallery"><a class="fancybox" rel="group" href="data:image/jpg;base64,'.$base.'" title="'.$vd[$z].'"><img src="data:image/jpg;base64,'.$base.'" alt="$vd[$z]"/></a></div>';
if ($list == 0) {
echo "ERROR : ".$archive->errorInfo(true);
}

}
}
?>


2. 2й не оптимизированный но рабочий вареант закодированные изображения в base64 выводятся быстро и четко но чутка помедленее чем 1й варенат так как base64 выводится для них 2жды 

 

<?php $textstatii=str_replace('_/\_',"_/\_",$dfsdg[15]);
echo '<h1 align="center" style="margin-top:5px; padding-left:9px;">'.$dfsdg[1].'</h1>
<div align="justify" style="padding:10px 0px 10px 0px; /*color:#a8a8a8;*/ font-size:14px; " >'.$textstatii.'</div>';
$asdk=$p.'file/gallery/'.$dfsdg[17].'/'.$dfsdg[0].'.zip'; clearstatcache ();
if(file_exists($asdk)){
include $p.'modul/mod_k2gallery/gallery1.html';
$vd=explode('|',$dfsdg[11]);
$vsegoooo=count($vd);
for($z=0;$z< $vsegoooo;$z++){
$archive = new PclZip($p.'file/gallery/'.$dfsdg[17].'/'.$dfsdg[0].'.zip');
$list=$archive->extract(PCLZIP_OPT_BY_NAME, $vd[$z],PCLZIP_OPT_EXTRACT_AS_STRING);
$base=base64_encode($list[0]['content']);
echo'<div class="k2_gallery"><a class="fancybox" rel="group" href="data:image/jpg;base64,'.$base.'" title="'.$vd[$z].'"><img src="data:image/jpg;base64,'.$base.'" alt="$vd[$z]"/></a></div>';
if ($list == 0) {
echo "ERROR : ".$archive->errorInfo(true);
}

}
}
?>