Jimmik

Рейтинг
10
Регистрация
19.03.2011

Здравствуйте.

На блоге набралось большое количество комментариев. Решил разбить постранично по 50 комментов, но в моем старом шаблоне это оказалось невозможным (я не смог ничего сделать). Подогнал под свой шаблон файл comments.php из другого шаблона с функцией wp_list_comments . Все получилось нормально, но есть одна проблема. При отправке комментария не с последней станицы у меня не происходит редиректа на последнюю страницу, т.е. пользователь, отправив комментарий, остается на той же странице и не видит отправлен его комментарий, или нет. Для того, что бы увидеть свой коммент (или сообщение о том, что он будет опубликован после проверки) нужно перейти на последнюю страницу. Подскажите, пожалуйста, в чем проблема и как ее исправить?

Вот код файла comments.php:

<div id="comment_box">

<?php // Do not delete these lines

if (!empty($_SERVER['SCRIPT_FILENAME']) && 'comments.php' == basename($_SERVER['SCRIPT_FILENAME']))

die ('Please do not load this page directly. Thanks!');

if ( post_password_required() ) { ?>

<p class="nocomments">Эта запись защищена паролем, введите пароль чтобы увидеть комментарии.</p>

<?php

return;

}

// add a microid to all the comments

function comment_add_microid($classes) {

$c_email=get_comment_author_email();

$c_url=get_comment_author_url();

if (!empty($c_email) && !empty($c_url)) {

$microid = 'microid-mailto+http:sha1:' . sha1(sha1('mailto:'.$c_email).sha1($c_url));

$classes[] = $microid;

}

return $classes;

}

add_filter('comment_class','comment_add_microid');

// show the comments

if ( have_comments() ) : ?>

<h4 id="comments"><?php comments_number('Отзывов (0)', 'Отзывов (1)', 'Отзывов (%)' );?></h4>

<ul class="commentlist" id="singlecomments">

<?php wp_list_comments('type=comment&callback=mytheme_comment'); ?>

</ul>

<div class="pagination">

<?php if(function_exists('wp_comments_corenavi')) wp_comments_corenavi(); ?>

</div>

<?php else : // this is displayed if there are no comments so far ?>

<?php if ('open' == $post->comment_status) :

// If comments are open, but there are no comments.

else :

// comments are closed

endif;

endif;

if ('open' == $post-> comment_status) :

// show the form

?>

<div id="respond"><h3>Добавить комментарий</h3>

</div>

<?php if ( get_option('comment_registration') && !$user_ID ) : ?>

<p>Вы должны <a href="<?php echo get_option('siteurl'); ?>/wp-login.php?redirect_to=<?php echo urlencode(get_permalink()); ?>">войти</a> чтобы оставить комментарий.</p>

<?php else : ?>

<form action="<?php echo get_option('siteurl'); ?>/wp-comments-post.php" method="post" id="commentform">

<?php if ( $user_ID ) : ?>

<p>Вы вошли как <a href="<?php echo get_option('siteurl'); ?>/wp-admin/profile.php"><?php echo $user_identity; ?></a>.

<a href="<?php echo get_option('siteurl'); ?>/wp-login.php?action=logout" title="Log out of this account">Выйти &raquo;</a></p>

<?php else : ?>

<p><input type="text" name="author" id="author" value="<?php echo $comment_author; ?>" size="22" tabindex="1" />

<label for="author"><small>Имя <?php if ($req) echo "(обязательно)"; ?></small></label></p>

<p><input type="text" name="email" id="email" value="<?php echo $comment_author_email; ?>" size="22" tabindex="2" />

<label for="email"><small>Почта <?php if ($req) echo "(обязательно)"; ?></small></label></p>

<p><?php if ( function_exists('math_comment_spam_protection') ) {

$mcsp_info = math_comment_spam_protection();

?> <input type="text" name="<?php echo $mcsp_info['fieldname_answer'] ?>" id="<?php echo $mcsp_info['fieldname_answer'] ?>" value="" size="22" tabindex="3" />

<label for="<?php echo $mcsp_info['fieldname_answer'] ?>">сколько будет: <?php echo $mcsp_info['operand1'] . ' + ' . $mcsp_info['operand2'] . ' ?' ?></label>

<input type="hidden" name="<?php echo $mcsp_info['fieldname_hash'] ?>" value="<?php echo $mcsp_info['result']; ?>" />

<?php } // if function_exists... ?><label for="url"><small>(обязательно)</small></label></p>

<?php endif; ?>

<div>

<?php comment_id_fields(); ?>

<input type="hidden" name="redirect_to" value="<?php echo htmlspecialchars($_SERVER["REQUEST_URI"]); ?>" /></div>

<?php if(function_exists(wp_comment_quicktags_plus)) { wp_comment_quicktags_plus(); } ?>

<p><textarea name="comment" id="comment" cols="50" rows="10" tabindex="4"></textarea></p>

<?php if (get_option("comment_moderation") == "0") { ?>

<p><small><strong>Please note:</strong> Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.</small></p>

<?php } ?>

<p><input name="submit" type="submit" id="submit" tabindex="5" value="Отправить комментарий" /></p>

<?php do_action('comment_form', $post->ID); ?>

</form>

<?php endif; ?>

<?php endif; ?>

</div>

bobolab:
Неплохой сайт. Только слишком темный. Ему в этой категории место.
Но Вы сами видите дату последнего обновления ветки(((

Знаю точно, что дата обновления ничего не значит. Обращал внимание на один раздел - там появляются новые сайты, а дата остается прежней 2008г.