Добрый день. Я еще только учусь программированию и разрабатываю сайт используя видео-уроки и статьи. Уже 2 дня не могу настроить постраничную навигацию на одной из своих страниц. Вернее одну я сделал с помощью видео-урока:
<?php
$query = $modx->newQuery('modResource');
$query->where(array(
'parent'=> 3,
'published' => 1,
'deleted' => 0
));
$lim=6;
if(isset($_GET["page"])){
$cnt=$_GET["page"]*$lim;
}else{
$cnt=0;
}
$to=0;
if(isset($_GET["page"])){
$to=$_GET["page"]*$lim+$lim;
}else{
$to=$lim;
}
////////////////////////////
$query->sortby('publishedon', 'DESC');
$query->prepare();
$docArray = $modx->getCollection('modResource',$query);
$allcount=0;
if(count($docArray)!=0){
foreach($docArray as $key => $value) {
$query2 = $modx->newQuery('modResource');
$query2->where(array(
'parent'=>$value->id,
'published' => 1,
'deleted' => 0
));
$query2->sortby('menuindex', 'ASC');
$query2->prepare();
$docArray2 = $modx->getCollection('modResource',$query2);
$allcount=$allcount+count($docArray2);
}
}
////////////////////////////
$counter=0;
if(count($docArray)!=0){
echo '<ul class="spisok-statei">';
foreach($docArray as $key => $value) {
$query2 = $modx->newQuery('modResource');
$query2->where(array(
'parent'=>$value->id,
'published' => 1,
'deleted' => 0
));
$query2->sortby('menuindex', 'ASC');
$query2->prepare();
$docArray2 = $modx->getCollection('modResource',$query2);
if(count($docArray2)!=0){
foreach($docArray2 as $key2 => $value2) {
$counter++;
if($counter>=$cnt){
$cnt++;
if($cnt>$to){break;}
$parent33 = $modx->getObject('modResource',$value2->id);
echo '<li>
<div><img src="'.$parent33->getTVValue('img').'"/></div>
<h3>'.$value2->menutitle.'</h3>
<span>'.date('d.m.Y', $value2->publishedon).'</span>
<p>'.$value2->introtext.'<a href="[[~'.$value2->id.']]">подробнее</a></p>
</li>';
}else{
}
}
}
if($cnt>$to){break;}
}
echo '</ul>';
if($allcount>$lim){
echo '<div class="pagination-news"><ul>';
$r=-1;
$rr=0;
$ost=$allcount%$lim;
if($ost>=1){
$to=$allcount/$lim+1;
}else{
$to=$allcount/$lim;
}
for($i=1; $i<=$to; $i++){
$r++;
$rr++;
if($r==0){
if(!isset($_GET["page"])){
echo "<li class='active'><a href='[[~".$modx->resource->get('id')."]]'>$rr</a></li>";
}else{
echo "<li><a href='[[~".$modx->resource->get('id')."]]'>$rr</a></li>";
}
}else{
if($_GET["page"]==$r){
echo "<li class='active'><a href='[[~".$modx->resource->get('id')."]]&page=$r'>$rr</a></li>";
}else{
echo "<li><a href='[[~".$modx->resource->get('id')."]]&page=$r'>$rr</a></li>";
}
}
}
echo '</ul>
</div>
<!-- /.pagination-news -->';
}
}
А вот со второй возникли проблемы. Что я имею сейчас:
<?php
$mas=$modx->getParentIds($modx->resource->get('id'));
$query = $modx->newQuery('modResource');
$query = $modx->newQuery('modResource');
$query->where(array(
'parent'=> 4,
'published' => 1,
'hidemenu'=>0,
'deleted' => 0
));
$query->sortby('publishedon', 'DESC');
$query->prepare();
$docArray = $modx->getCollection('modResource',$query);
if(count($docArray)!=0){
echo '<ul class="archiv">';
foreach($docArray as $key => $value) {
$parent = $modx->getObject('modResource',$value->id);
echo '
<li>
<div><a href="[[~'.$value->id.']]"><img src="'.$parent->getTVValue('img').'"/></a></div>
<p>'.date('d.m.Y', $value->publishedon).'</p>
<a href="'.$parent->getTVValue('PDF').'" class="link-button">Скачать в PDF</a>
</li>';
}
echo '</ul>';
}
Что я хочу получить:
<?php
$mas=$modx->getParentIds($modx->resource->get('id'));
$query = $modx->newQuery('modResource');
$query = $modx->newQuery('modResource');
$query->where(array(
'parent'=> 4,
'published' => 1,
'hidemenu'=>0,
'deleted' => 0
));
$lim=6;
if(isset($_GET["page"])){
$cnt=$_GET["page"]*$lim;
}else{
$cnt=0;
}
$to=0;
if(isset($_GET["page"])){
$to=$_GET["page"]*$lim+$lim;
}else{
$to=$lim;
}
$query->sortby('publishedon', 'DESC');
$query->prepare();
$docArray = $modx->getCollection('modResource',$query);
if(count($docArray)!=0){
echo '<ul class="archiv">';
foreach($docArray as $key => $value) {
$parent = $modx->getObject('modResource',$value->id);
echo '
<li>
<div><a href="[[~'.$value->id.']]"><img src="'.$parent->getTVValue('img').'"/></a></div>
<p>'.date('d.m.Y', $value->publishedon).'</p>
<a href="'.$parent->getTVValue('PDF').'" class="link-button">Скачать в PDF</a>
</li>';
}else{
}
}
}
if($cnt>$to){break;}
}
echo '</ul>';
if($allcount>$lim){
echo '<div class="pagination-news"><ul>';
$r=-1;
$rr=0;
$ost=$allcount%$lim;
if($ost>=1){
$to=$allcount/$lim+1;
}else{
$to=$allcount/$lim;
}
for($i=1; $i<=$to; $i++){
$r++;
$rr++;
if($r==0){
if(!isset($_GET["page"])){
echo "<li class='active'><a href='[[~".$modx->resource->get('id')."]]'>$rr</a></li>";
}else{
echo "<li><a href='[[~".$modx->resource->get('id')."]]'>$rr</a></li>";
}
}else{
if($_GET["page"]==$r){
echo "<li class='active'><a href='[[~".$modx->resource->get('id')."]]&page=$r'>$rr</a></li>";
}else{
echo "<li><a href='[[~".$modx->resource->get('id')."]]&page=$r'>$rr</a></li>";
}
}
}
echo '</ul>
</div>
<!-- /.pagination-news -->';
}
}
Но это почему-то не работает, выдается просто пустая страница, где я допустил ошибку? Вроде делаю все так как в видео-уроке, я еще не все понимаю, но я очень стараюсь. Скриншоты страниц приклепляю