Вопрос по wordpress

Michel700
На сайте с 31.01.2013
Offline
49
722

Здравствуйте уважаемые!

Тут вот такая проблемка возникла, чё то тыкаюсь тыкаюсь а толку мало. Вообщем шаблон на wordpress не выводит коментарии на статистических страницах. В админке включена функция показывать коментарии для данной страницы, но вот ни как не хотят выводится.

Я знаю что коментарии выводятся с помощью вот этого php кода:

<?php comments_template(); ?>

Они и вправду выводятся, но расползаются по всему шаблону. Не сможете помочь? С wordpress пока дружу не долго, от этого и проблемы.

Наверное нужно прописать стиль, но ведь смысл когда есть коментарии и там есть свой стиль. Вот как это всё связать?

Спасибо.

Всё будет гуд!!!
wmoll
На сайте с 14.03.2009
Offline
31
#1

comments_template просто вызывает файл comments.php с корня каталога шаблона.

если его нету - вызывает стандартный.

соответственно если проблема есть и есть файл comments.php - править в нем.

если файла нету - надо создать и вписать как минимум:

<?php if ($comments) : ?>


<div id="comments">
<h2><?php comments_number('No Responses', 'One Response', '% Responses' );?> to ***8220;<?php the_title(); ?>***8221;</h2>
<ol class="commentlist">
<?php foreach ($comments as $comment) : ?>
<li id="comment-<?php comment_ID() ?>">
<?php echo get_avatar( $comment, 35 ); ?>
<h3><?php comment_author_link() ?> said:</h3>
<small><a href="#comment-<?php comment_ID() ?>" title=""><?php comment_date('M d, y') ?> at <?php comment_time() ?></a></small>
<?php if ($comment->comment_approved == '0') : ?>
<small><em>Your comment is awaiting moderation.</em></small>
<?php endif; ?>
<?php comment_text() ?>
</li>
<?php endforeach; /* end for each comment */ ?>
</ol>
</div>

<hr />

<?php endif; ?>


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

<div id="respond">
<h2>Leave a Reply</h2>
<?php if ( get_option('comment_registration') && !$user_ID ) : ?>
<p>You must be <a href="<?php echo get_option('siteurl'); ?>/wp-login.php?redirect_to=<?php the_permalink(); ?>">logged in</a> to post a comment.</p>
<?php else : ?>
<form action="<?php echo get_option('siteurl'); ?>/wp-comments-post.php" method="post" id="commentform">
<?php if ( $user_ID ) : ?>
<p>Logged in as <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">Logout &raquo;</a></p>
<?php else : ?>
<div class="commentinput grid_8">
<p class="grid_3 alpha"><label for="author">Name <?php if ($req) echo "(required)"; ?></label></p>
<p class="grid_3 omega"><input type="text" class="grid_5 omega" name="author" id="author" value="<?php echo $comment_author; ?>" size="22" tabindex="1" /></p>
</div>
<div class="commentinput push grid_8">
<p class="grid_3 alpha"><label for="email">Mail (not published) <?php if ($req) echo "(required)"; ?></label></p>
<p class="grid_3 omega"><input type="text" class="grid_5 omega" name="email" id="email" value="<?php echo $comment_author_email; ?>" size="22" tabindex="2" /></p>
</div>
<div class="commentinput push grid_8">
<p class="grid_3 alpha"><label for="url">Website</label></p>
<p class="grid_3 omega"><input type="text" class="grid_5 omega" name="url" id="url" value="<?php echo $comment_author_url; ?>" size="22" tabindex="3" /></p>
</div>
<div class="clear">&nbsp;</div>
<?php endif; ?>
<div class="commenttext grid_6">
<p><label for="comment">Your Comment</label></p>
<p><textarea name="comment" id="comment" rows="5" cols="10" tabindex="4"></textarea></p>
</div>
<p class="grid_6">
<button name="submit" type="submit" id="submit" tabindex="5">Submit Comment</button>
<button name="reset" type="reset" id="reset" tabindex="6">Reset Form</button>
<input type="hidden" name="comment_post_ID" value="<?php echo $id; ?>" />
</p>
</form>
<?php endif; ?>
</div>

<?php endif; ?>
Michel700
На сайте с 31.01.2013
Offline
49
#2
wmoll:
comments_template просто вызывает файл comments.php с корня каталога шаблона.
если его нету - вызывает стандартный.

соответственно если проблема есть и есть файл comments.php - править в нем.
если файла нету - надо создать и вписать как минимум:

Привет.

Файл такой есть, но только где и что править?

Вот в чём проблемка то.:)

Вот мой файл кометс:

<?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;
}
?>

<!-- You can start editing here. -->

<?php if ( have_comments() ) : ?>
<h2 class="comments"><?php comments_number('Пока нет комментариев', '1 комментарий', '% коммент.' );?> к записи ***8220;<?php the_title(); ?>***8221;</h2>

<ul class="commentlist clearfix">
<?php wp_list_comments('callback=mytheme_comment'); ?>
</ul>

<div class="navigation">
<div class="alignleft"><?php previous_comments_link() ?></div>
<div class="alignright"><?php next_comments_link() ?></div>
</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. -->

<?php else : // comments are closed ?>
<!-- If comments are closed. -->
<p class="nocomments">Комментирование закрыто.</p>

<?php endif; ?>
<?php endif; ?>


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

<div id="respond">

<h2><?php comment_form_title( 'Прокомментировать', 'Прокомментировать' ); ?></h2>

<div class="cancel-comment-reply">
<small><?php cancel_comment_reply_link(); ?></small>
</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 wp_logout_url(get_permalink()); ?>" title="Выйти">Выйти &raquo;</a></p>

<?php else : ?>

<p><label for="author">Имя <?php if ($req) echo "(обязательно)"; ?></label>
<input type="text" name="author" id="author" value="<?php echo $comment_author; ?>" size="22" tabindex="1" <?php if ($req) echo "aria-required='true'"; ?> />
</p>

<p><label for="email">Почта (не публикуется) <?php if ($req) echo "(обязательно)"; ?></label>
<input type="text" name="email" id="email" value="<?php echo $comment_author_email; ?>" size="22" tabindex="2" <?php if ($req) echo "aria-required='true'"; ?> />
</p>

<p><label for="url">Сайт</label>
<input type="text" name="url" id="url" value="<?php echo $comment_author_url; ?>" size="22" tabindex="3" />
</p>

<?php endif; ?>


<p><label for="comment">Комментарий</label>
<textarea name="comment" id="comment" cols="100%" rows="10" tabindex="4"></textarea></p>

<p><input name="submit" type="submit" id="submit" tabindex="5" value="Отправить &raquo;" />
<?php comment_id_fields(); ?>
</p>
<?php do_action('comment_form', $post->ID); ?>

</form>

<?php endif; // If registration required and not logged in ?>
</div>

<?php endif; // if you delete this the sky will fall on your head ?>
D
На сайте с 07.01.2013
Offline
90
#3

Поставьте в каждом блоке if

echo "Блок 1";

И проверьте какая срабатывает ветка, то ли комментов просто нет, то ли они не видимы...

Приложение, нужное любому веб-мастеру (https://apps.apple.com/ru/app/%D0%BC%D0%BE%D0%B8-%D0%B4%D0%BE%D0%BC%D0%B5%D0%BD%D1%8B/id1493164681)
Michel700
На сайте с 31.01.2013
Offline
49
#4
Dtachkov:
Поставьте в каждом блоке if
echo "Блок 1";
И проверьте какая срабатывает ветка, то ли комментов просто нет, то ли они не видимы...

Да не выводится сама форма коментариев, вот в чём проблема. В шаблоне не обозначено для статистических страниц коментарии. Их нужно вставлять в файл page.php. Они вставляются, с помощью этого кода, вернее форма выводится.

 <?php comments_template(); ?> 

Но выводится криво.

maldivec
На сайте с 04.11.2008
Offline
160
#5

Ну значит не туда вставляете, раздвигаете какой-нибудь див.

В постах блога комменты нормально выводятся?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий