WordPress как на ладони
wordpress jino

comment_id_fields() WP 2.7.0

Генерирует 2 скрытых поля для формы комментирования: comment_post_ID и comment_parent. Эти поля нужны для правильной работы формы комментирования.

comment_post_ID — определяет какой пост комментируется (ID поста).
comment_parent — определяет родительский комментарий, если это ответ на другой комментарий. Внедрено с версии 2.7.

comment_id_fields() нужно использовать внутри html тега <form>.

Работает на основе: get_comment_id_fields()

Хуков нет.

Возвращает

Ничего. Выводит на экран html код полей input.

Использование

<?php comment_id_fields(); ?>

Примеры

#1. Пример использования:

comment_id_fields()

получим:

<input type='hidden' name='comment_post_ID' value='119' id='comment_post_ID' />
<input type='hidden' name='comment_parent' id='comment_parent' value='251' />

Код comment id fields: wp-includes/comment-template.php WP 4.8.2

<?php
function comment_id_fields( $id = 0 ) {
	echo get_comment_id_fields( $id );
}

Cвязанные функции

Из раздела: Комментарии

comment_id_fields 5 комментариев
  • Дмитрий

    В поле comment_post_ID генерируется не номер текущего поста, а номер любого другого и, соответственно, коммент добавляется не туда куда нужно. Где копать, чтобы докопаться?

    Ответить5.1 лет назад #
    • Kama4464

      Вариант: перед формой комментирования есть вывод постов, который влияет на глобальную переменную $post. Если так, то используйте там wp_reset_query();

      Ответить5.1 лет назад #
      • Дмитрий

        Да, похоже так и было. Спасибо - помогло)

        Ответить5.1 лет назад #
      • Михаил cайт: rambulatov-on.net

        Вариант: перед формой комментирования есть вывод постов, который влияет на глобальную переменную

        $post

        . Если так, то используйте там

        wp_reset_query();

        Вопрос: где

        $post

        это находится м как правильно использовать

        wp_reset_query();

        (куда вставлять) ?

        Ответить3.7 года назад #
        • Kama4464

          Где-то до формы комментирования есть цикл вывода постов, может в боковой панели или в шапке, или еще где-то:

          if( have_posts() ) ...

          Этот цикл изменяет глобальную переменную $post, которая потом используется в форме комментирования. Чтобы он её не изменял, нужно в конце цикла добавить

          <?php wp_reset_query(); ?>

          (сброс глобальных переменных на начальные).

          1
          Ответить3.7 года назад #

Здравствуйте, !

Ваш комментарий