Intereting Posts
Как исключить почтовые форматы из последних сообщений WordPress в виджетах вкладок Типы XML-RPC и пользовательских сообщений Загрузка файла MP3 в Safari Элемент управления Customizer использует другие настройки по умолчанию. Фильтр Категории виджета, чтобы разрешить пользовательскую сортировку? не может связывать внешний url, настоящий url страницы, действующий как родительский URL-адрес Я не могу получить доступ к своему сайту через wp-admin show / hide toggle для подстраниц в области администрирования wordpress Условное внутреннее выражение результата поиска Можно ли использовать wp_localize_script для создания глобальных переменных JS без определенного дескриптора скрипта? WP_Query и помощь с петлей для главной страницы журнала Могут ли скомпрометированные файлы тем привести к изменению файлов ядра WordPress? Как определить, добавляем ли мы новую страницу / сообщение / CPT или на странице редактирования / публикации / CPT в wordpress admin? Извлеките изображение из содержимого и установите его как изображение Дополнительное текстовое поле richtext admin для пользовательского posttype с вкладками панели инструментов?

Получить идентификатор сообщения в цикле комментариев

У меня есть пользовательский цикл комментариев на моей странице author.php . Я пытаюсь получить идентификатор сообщения, чтобы я мог повторить ссылку для сообщения, к которому принадлежит комментарий. Кроме того, я могу повторить некоторые настраиваемые поля post meta.

Вот как выглядит моя петля сейчас –

 <?php $object = get_queried_object(); $authorID = get_queried_object()->ID; $author_email = get_the_author_meta( 'user_email', $authorID ); $postid = get_queried_object()->post->ID; $args = array( 'user_id' => $authorID, 'post_id' => $postid, ); // The Query $comments_query = new WP_Comment_Query; $comments = $comments_query->query( $args ); // Comment Loop if ( $comments ) { foreach ( $comments as $comment ) { ?> 

Я попытался установить нормальный цикл сообщений в этом, но все стало странно. Часть, в которой мне нужна мета-запись, – это –

 <div class="full-divs"> <strong> <a href="<?php echo get_permalink(); ?>"> View <?php $property_address = get_post_meta( get_the_ID(), 'imic_property_site_address', true ); echo $property_address; ?> </a> </strong> </div> 

Что я делаю не так?

Обратите внимание, что здесь может быть проще использовать get_comments() , поскольку он определяется как:

 function get_comments( $args = '' ) { $query = new WP_Comment_Query; return $query->query( $args ); } 

Если вам нужен URL-адрес комментария , в пределах цикла комментариев foreach вы можете использовать:

 $comment_url = esc_url( get_comment_link( $comment ) ); 

Вы также можете получить идентификатор сообщения из объекта $comment :

 $post_id = $comment->comment_post_ID; 

то вы можете использовать это для извлечения метаданных сообщений :

 $property_address = get_post_meta( $post_id ,'imic_property_site_address',true); 

Чтобы получить соответствующий post permalink

 $post_url = esc_url( get_permalink( $post_id ) ); 

В get_queried_object() нет свойства $post . get_queried_object() возвращает информацию о текущем авторе при просмотре страницы архивного архива. Вы можете сделать var_dump() чтобы проверить, что get_queried_object() возвращает

 var_dump( get_queried_object() ); 

Вот почему ваш код не работает. Я действительно не уверен, что вам нужно достичь здесь, но любую информацию о сообщении можно получить, используя основной объект запроса

  • $wp_query->posts возвращает массив объектов post. Это сообщения, которые будут отображаться в цикле

  • $wp_query->post возвращает первый пост-объект цикла, тот же пост-объект, что и $post перед циклом

Вероятно, я думаю, что это то, что вы после