File size: 2.35Kb
<?php
// Выдает текущую страницу
function page( $k_page = 1 )
{
$page = 1;
if ( isset( $_GET['page'] ) ) {
if ( $_GET['page'] == 'end' )
$page = intval( $k_page );
elseif ( is_numeric( $_GET['page'] ) )
$page = intval( $_GET['page'] );
}
if ( $page < 1 )
$page = 1;
if ( $page > $k_page )
$page = $k_page;
return $page;
}
// Высчитывает количество страниц
function k_page( $k_post = 0, $k_p_str = 10 )
{
if ( $k_post != 0 ) {
$v_pages = ceil( $k_post / $k_p_str );
return $v_pages;
} else
return 1;
}
// Вывод номеров страниц (только на первый взгляд кажется сложно ;))
function str( $link = '?', $k_page = 1, $page = 1 )
{
if ( $page < 1 )
$page = 1;
echo '<ul class="nav pagination">';
if ( $page != 1 )
echo '<li class="nav-item"><a href="' . $link . 'page=1" title="Первая страница"><</a></li>';
if ( $page != 1 )
echo '<li class="nav-item"><a href="' . $link . 'page=1" title="Страница №1">1</a></li>';
else
echo '<li class="nav-item nav-number">1</li>';
for ( $ot = -3; $ot <= 3; $ot++ ) {
if ( $page + $ot > 1 && $page + $ot < $k_page ) {
if ( $ot == -3 && $page + $ot > 2 )
echo '<li class="nav-item nav-dots">..</li>';
if ( $ot != 0 )
echo '<li class="nav-item"><a href="' . $link . 'page=' . ( $page + $ot ) . '" title="Страница №' . ( $page + $ot ) . '">' . ( $page + $ot ) . '</a></li>';
else
echo '<li class="nav-item nav-number">' . ( $page + $ot ) . '</li>';
if ( $ot == 3 && $page + $ot < $k_page - 1 )
echo '<li class="nav-item nav-dots">..</li>';
}
}
if ( $page != $k_page )
echo '<li class="nav-item"><a href="' . $link . 'page=end" title="Страница №' . $k_page . '">' . $k_page . '</a></li>';
elseif ( $k_page > 1 )
echo '<li class="nav-item nav-number">' . $k_page . '</li>';
if ( $page != $k_page )
echo '<li class="nav-item"><a href="' . $link . 'page=end" title="Последняя страница">></a></li>';
echo '</ul>';
}