Настройка страницы разбиения на страницы по умолчанию (что-то связанное с циклом?)
В настоящее время я использую плагин WP-CommentNavi для разбивки на комментарии, но всякий раз, когда нажимают на страницу, она переходит на самую высокую страницу комментариев (самые старые комментарии). Мои комментарии вначале преднамеренно отображаются самыми новыми, и поэтому мне нужно, чтобы страница нумерации страниц по умолчанию была равна 1 при каждом нажатии на ссылку.
Я заметил, что для других плагинов нумерации страниц используется то же самое значение по умолчанию, при котором отображается страница с самой высокой страницей (то есть, если есть 5 страниц) страница 5.
В тот момент, когда я загружаю страницу Tellhi####. Com/newcastle, страница, которая будет загружена, будет Tellhi####. Com/newcastle/comment-page-2/, тогда как я хочу рассказать Tellhi####. Com/newcastle/comment-page-1/ будет загружен
Я не могу быть уверен, что это соответствующий код для того, чего я пытаюсь достичь, но я чувствую, что ответ может лежать здесь (ниже). Если нет, пожалуйста, сообщите мне и не обращайте внимания на этот код.
### Function: Comment Navigation: Boxed Style Paging
function wp_commentnavi($before = '', $after = '') {
global $wp_query;
$comments_per_page = intval(get_query_var('comments_per_page'));
$paged = intval(get_query_var('cpage'));
$commentnavi_options = get_option('commentnavi_options');
$numcomments = intval($wp_query->comment_count);
$max_page = intval($wp_query->max_num_comment_pages);
if(empty($paged) || $paged == 0) {
$paged = 1;
}
$pages_to_show = intval($commentnavi_options['num_pages']);
$pages_to_show_minus_1 = $pages_to_show-1;
$half_page_start = floor($pages_to_show_minus_1/2);
$half_page_end = ceil($pages_to_show_minus_1/2);
$start_page = $paged - $half_page_start;
if($start_page <= 0) {
$start_page = 1;
}
$end_page = $paged + $half_page_end;
if(($end_page - $start_page) != $pages_to_show_minus_1) {
$end_page = $start_page + $pages_to_show_minus_1;
}
if($end_page > $max_page) {
$start_page = $max_page - $pages_to_show_minus_1;
$end_page = $max_page;
}
if($start_page <= 0) {
$start_page = 1;
}
if($max_page > 1 || intval($commentnavi_options['always_show']) == 1) {
$pages_text = str_replace("%CURRENT_PAGE%", number_format_i18n($paged), $commentnavi_options['pages_text']);
$pages_text = str_replace("%TOTAL_PAGES%", number_format_i18n($max_page), $pages_text);
echo $before.'<div class="wp-commentnavi">'."\n";
switch(intval($commentnavi_options['style'])) {
case 1:
if(!empty($pages_text)) {
echo '<span class="pages">'.$pages_text.'</span>';
}
if ($start_page >= 2 && $pages_to_show < $max_page) {
$first_page_text = str_replace("%TOTAL_PAGES%", number_format_i18n($max_page), $commentnavi_options['first_text']);
echo '<a href="'.clean_url(get_comments_pagenum_link()).'" class="first" title="'.$first_page_text.'">'.$first_page_text.'</a>';
if(!empty($commentnavi_options['dotleft_text'])) {
echo '<span class="extend">'.$commentnavi_options['dotleft_text'].'</span>';
}
}
previous_comments_link($commentnavi_options['prev_text']);
for($i = $start_page; $i <= $end_page; $i++) {
if($i == $paged) {
$current_page_text = str_replace("%PAGE_NUMBER%", number_format_i18n($i), $commentnavi_options['current_text']);
echo '<span class="current">'.$current_page_text.'</span>';
} else {
$page_text = str_replace("%PAGE_NUMBER%", number_format_i18n($i), $commentnavi_options['page_text']);
echo '<a href="'.clean_url(get_comments_pagenum_link($i)).'" class="page" title="'.$page_text.'">'.$page_text.'</a>';
}
}
next_comments_link($commentnavi_options['next_text'], $max_page);
if ($end_page < $max_page) {
if(!empty($commentnavi_options['dotright_text'])) {
echo '<span class="extend">'.$commentnavi_options['dotright_text'].'</span>';
}
$last_page_text = str_replace("%TOTAL_PAGES%", number_format_i18n($max_page), $commentnavi_options['last_text']);
echo '<a href="'.clean_url(get_comments_pagenum_link($max_page)).'" class="last" title="'.$last_page_text.'">'.$last_page_text.'</a>';
}
break;
case 2;
echo '<form action="'.admin_url('admin.php?page='.plugin_basename(__FILE__)).'" method="get">'."\n";
echo '<select size="1" onchange="document.location.href = this.options[this.selectedIndex].value;">'."\n";
for($i = 1; $i <= $max_page; $i++) {
$page_num = $i;
if($page_num == 1) {
$page_num = 0;
}
if($i == $paged) {
$current_page_text = str_replace("%PAGE_NUMBER%", number_format_i18n($i), $commentnavi_options['current_text']);
echo '<option value="'.clean_url(get_comments_pagenum_link($page_num)).'" selected="selected" class="current">'.$current_page_text."</option>\n";
} else {
$page_text = str_replace("%PAGE_NUMBER%", number_format_i18n($i), $commentnavi_options['page_text']);
echo '<option value="'.clean_url(get_comments_pagenum_link($page_num)).'">'.$page_text."</option>\n";
}
}
echo "</select>\n";
echo "</form>\n";
break;
}
echo '</div>'.$after."\n";
}
}
Короче говоря, мне нужно в любое время нажимать на страницу, чтобы разбиение на страницы комментариев находилось на странице 1, а не на самой высокой доступной странице. Просто чтобы вы знали, что я пробовал настройки обсуждения на панели управления WordPress. В Google тоже ничего нет!
Если полный ответ не получен, кто-нибудь знает фактический php-код, который определяет, какая страница разбиения на страницы загружается по умолчанию?
Я получил этот ответ по электронной почте, но из-за моих знаний PHP не могу его реализовать, есть идеи? ...
Просто поменяйте петлю. Это исправит это. Вот соответствующая часть: http://pastie.org/8166399 Вам нужно вернуться, т.е. использовать $i--
Изменит ли это начальную страницу по умолчанию или просто отменит комментарии? Надеюсь, я был ясен в своем вопросе! Буду признателен за любой ответ на всех.
Заранее спасибо Пол
1 ответ
Вариант был в Wordpress все время. Смотрите картинку: http://oi40.tinypic.com/35aj3pt.jpg
Если у кого-то есть ответ на конкретный код, которым вы манипулируете, все равно ответьте здесь на вопрос, потому что кто-то, кто делает это без Wordpress, вполне может столкнуться и с этой проблемой.