Отображение настраиваемого поля для внешней внешней линии, на всей территории

Я создал настраиваемое поле («break») с целью, чтобы всякий раз, когда у одного сообщения есть это поле, оно отображает значение в заголовке на всем сайте (то есть все сообщения, страницы, архивы и т. Д.).

Проблема, с которой я сталкиваюсь, заключается в том, что она отображается только на домашней странице и на конкретной странице с настраиваемым полем, но нигде больше.

Используемый код (из header.php):

<?php global $wp_query; $postid = $wp_query->post->ID; ?> <?php if( get_post_meta($postid, 'breaking', true) ) { ?> <div> <a href="<?php the_permalink(); ?> "><?php echo get_post_meta($postid, 'breaking', true); ?></a> </div> <?php } ?> <?php wp_reset_query(); ?> 

Как я могу получить это для отображения на сайте?

Чтобы отображать мета-значение из определенной должности в заголовке, вы можете распечатать ее так, указав идентификатор сообщения вместо переменной $post-ID .

 <?php echo get_post_meta( '1234', 'breaking', true ); ?> 

get_post_meta принимает идентификатор сообщения, и если вам нужно показать только get_post_meta сообщения из одной конкретной должности, тогда вы можете определить идентификатор сообщения в get_post_meta и он всегда будет показывать мета-значение только с 1 сообщения.

Итак, следующим будет ваш обновленный код. Здесь 1234 – это идентификатор вашего сообщения, вы должны заменить его своим. Обратите внимание, что вам также нужно будет добавить идентификатор сообщения в permalink.

 <?php if ( get_post_meta( '1234', 'breaking', true ) ) { ?> <div> <a href="<?php echo get_permalink( '1234' ); ?> "><?php echo get_post_meta( '1234', 'breaking', true ); ?></a> </div> <?php } ?> 

РЕДАКТИРОВАТЬ:

Конечно, он не будет работать на веб-сайте для метаданных с динамической переменной post id, потому что страницы с архивами, категориями, поиском, автором, тегами не имеют идентификатора сообщения. Вместо этого вы можете указать метаданные из сообщения / страницы, у которых есть идентификатор, но если есть пустой результат, тогда распечатайте метатет сообщения из определенного идентификатора должности / страницы.

 <?php global $wp_query; if ( get_post_meta( $post->ID, 'breaking', true ) ) { ?> <div><a href="<?php the_permalink(); ?> "><?php echo get_post_meta($postid, 'breaking', true); ?></a></div> <?php } else { ?> <div><a href="<?php echo get_permalink( '1234' ); ?> "><?php echo get_post_meta( '1234', 'breaking', true ); ?></a></div> <?php } wp_reset_query(); ?>