「次」「前」リンク を autonav のカスタムテンプレートとして作成しました。
Filename: /blocks/autonav/templates/prev_naxt.php
<?php
defined('C5_EXECUTE') or die(_("Access Denied."));
$aBlocks = $controller->generateNav();
if(empty($aBlocks)) return;
global $c;
$navlen= 10;
$navcenter = 5;
$j = 0;
$pagelink = array();
foreach($aBlocks as $ni) {
$_c = $ni->getCollectionObject();
if (!$_c->getCollectionAttributeValue('exclude_nav')) {
$j++;
if ($c->getCollectionID() == $_c->getCollectionID()) {
$pagelink[$j] = '';
$currPageIndex = $j;
} else {
$pagelink[$j] = $ni->getURL();
}
}
}
$navmax = $j;
if($navmax>0){
if($navmax<=$navlen){
$navlen = $navmax;
}
$navstart = $currPageIndex - $navcenter;
$navend = $currPageIndex + $navcenter;
if($navstart<1){
$navstart = 1;
$navend = $navlen;
}
if($navend>$navmax){
$navend = $navmax;
$navstart = $navend - $navlen + 1 ;
}
$prev = $currPageIndex -1;
$next = $currPageIndex +1;
if($prev>0){
echo '<a href="' . $pagelink[$prev] . '">' . '<<' . '</a> ';
}
for($j=$navstart;$j<=$navend;$j++){
if($pagelink[$j]==''){
echo $j . ' ';
} else {
echo '<a href="' . $pagelink[$j] . '">' . $j . '</a> ';
}
}
if($next<=$navmax){
echo '<a href="' . $pagelink[$next] . '">' . '>>' . '</a> ';
}
}
?>Filename: /blocks/autonav/templates/prev_naxt_with_title.php
<?php
defined('C5_EXECUTE') or die(_("Access Denied."));
$aBlocks = $controller->generateNav();
if(empty($aBlocks)) return;
global $c;
$navlen= 10;
$navcenter = 5;
$j = 0;
$pagelink = array();
foreach($aBlocks as $ni) {
$_c = $ni->getCollectionObject();
if (!$_c->getCollectionAttributeValue('exclude_nav')) {
$j++;
if ($c->getCollectionID() == $_c->getCollectionID()) {
$pagelink[$j] = array('','');
$currPageIndex = $j;
} else {
$pagelink[$j] = array("url"=>$ni->getURL(),
"title"=>$ni->getName()
);
}
}
}
$navmax = $j;
if($navmax>0){
if($navmax<=$navlen){
$navlen = $navmax;
}
$navstart = $currPageIndex - $navcenter;
$navend = $currPageIndex + $navcenter;
if($navstart<1){
$navstart = 1;
$navend = $navlen;
}
if($navend>$navmax){
$navend = $navmax;
$navstart = $navend - $navlen + 1 ;
}
$prev = $currPageIndex -1;
$next = $currPageIndex +1;
echo '<div style="clear: both;"> </div>';
if($prev>0){
echo '<a href="' . $pagelink[$prev]['url'] . '"><=前のページ「 ' . $pagelink[$prev]['title'] . '」</a> ';
echo '<div style="clear: both;"> </div>';
}
// for($j=$navstart;$j<=$navend;$j++){
// if($pagelink[$j]==''){
// echo $j . ' ';
// } else {
// echo '<a href="' . $pagelink[$j] . '">' . $j . '</a> ';
// }
// }
if($next<=$navmax){
echo '<a href="' . $pagelink[$next]['url'] . '">=>次のページ「' . $pagelink[$next]['title'] . '」</a> ';
echo '<div style="clear: both;"> </div>';
}
}
?>