Показать комментарии на странице категории в WordPress - PullRequest
0 голосов
/ 11 октября 2011

Я пытаюсь показывать встроенные комментарии после каждого сообщения на странице моей категории, используя тег comments_template ().

Однако комментарии или форма комментариев по какой-то причине не отображаются. Тот же тег отлично работает на одной странице контента.

Кстати, я использую WP 3.2.1 вместе с темой twentyeleven.

Ответы [ 2 ]

0 голосов
/ 11 октября 2011

Это можно сделать, форсируя загрузку комментариев.Вы можете принудительно загрузить комментарий, установив глобальную переменную '$ withcomments'

Например, вы можете поместить этот код в свои функции. Php

add_filter('wp_head','sb_force_comment');
function sb_force_comment( ) {
global $withcomments;
    if(is_category())
        $withcomments = true; //force to show the comment on category page
  }

Также будут показаны комментариикак форма на странице категории, если вы используете comments_template () на странице категории.

Если вы не хотите показывать форму комментария на странице категории, вы можете сделать это, поместивследующий код в вашем functions.php

add_filter('comments_open','sb_fake_comments_closed_on_category',20,2);

function sb_fake_comments_closed_on_category ($is_open,$post_id){
  if(is_category())
    return false;
  return $is_open;
}

Надеюсь, это поможет :)

0 голосов
/ 11 октября 2011

comments_template начинается с кода:

if ( !(is_single() || is_page() || $withcomments) || empty($post) )
   return;

Так что это работает только для постов и отдельных страниц.

Вы можете создать страницу со списком ваших категорий, а также использовать comments_template. Или используйте get_comments , чтобы получить все комментарии к сообщению, а затем вручную просмотреть их и сгенерировать вывод. Вы также можете установить глобальную переменную $ withcomments, см. Ответ от sbrajesh.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...