if ($pager->isPage(-1)) {
    $links[] = "<a href=\"" . $url->render(false, array('page' => $pager->getPage(-1))) . "\">Previous</a>";
}
if (!$pager->inPageRange($pager->getFirstPage())) {
    $links[] = "<a href=\"" . $url->render(false, array('page' => $pager->getFirstPage())) . "\">1</a> ... ";
}
//if ($pager->isIntervalPage(-10)) $links[] = "<a href=\"" . $url->render(false, array ('page' => $pager->getPage(-10))) . "\">" . $pager->getPage(-10) . "</a> ...";
foreach ($pager->getPageRange() as $page) {
    if ($page != $pager->getCurrentPage()) {
        $links[] = "<a href=\"" . $url->render(false, array('page' => $page)) . "\">{$page}</a>";
    } else {
        $links[] = $page;
    }
}
//if ($pager->isIntervalPage(+10)) $links[] = " ... <a href=\"" . $url->render(false, array ('page' => $pager->getPage(+10))) . "\">" . $pager->getPage(+10) . "</a>";
if (!$pager->inPageRange($pager->getLastPage())) {
    $links[] = " ... <a href=\"" . $url->render(false, array('page' => $pager->getLastPage())) . "\">" . $pager->getLastPage() . "</a>";
}
if ($pager->isPage(+1)) {
    $links[] = "<a href=\"" . $url->render(false, array('page' => $pager->getPage(+1))) . "\">Next</a>";
}
// not the template part
echo '<div>';
echo implode(' ', $links);
// build links manually
echo '</div>';
// display the data
echo '<table border="1">';
echo '<tr><th><a href="' . $url->render(false, array('order_by' => '')) . '">Row</a></th><th><a href="' . $url->render(false, array('order_by' => 'title')) . '">Title</a></th><th><a href="' . $url->render(false, array('order_by' => 'month')) . '">Month</a></th></tr>';
$n = 1;
foreach ($rows as $value) {