user
  • 0
Гуру

Форматирование стандартного формата сообщения

  • 0

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

Я сделал все необходимые шаги в файле functions.php:

add_theme_support( 'post-formats', array( 'aside', 'chat', 'gallery', 'image', 'link', 'quote', 'status', 'video', 'audio' ) ); 

И мой код для отображения изображений выглядит следующим образом:

<div class="post-format">

<?php if(has_post_format('video')) { ?>
    <img src="<?php bloginfo('template_url'); ?>/post-icons/video.png" alt="Video" />
    <?php } ?>

<?php if(has_post_format('image')) { ?>
    <img src="<?php bloginfo('template_url'); ?>/post-icons/photo.png" alt="Photo" />
    <?php } ?>

<?php if(has_post_format('standard')) { ?>
    <img src="<?php bloginfo('template_url'); ?>/post-icons/text.png" alt="Text" />
    <?php } ?>

<?php if(has_post_format('audio')) { ?>
    <img src="<?php bloginfo('template_url'); ?>/post-icons/audio.png" alt="audio" />
    <?php } ?>

<?php if(has_post_format('aside')) { ?>
    <img src="<?php bloginfo('template_url'); ?>/post-icons/aside.png" alt="aside" />
    <?php } ?>

<?php if(has_post_format('gallery')) { ?>
    <img src="<?php bloginfo('template_url'); ?>/post-icons/gallery.png" alt="gallery" />
    <?php } ?>

<?php if(has_post_format('link')) { ?>
    <img src="<?php bloginfo('template_url'); ?>/post-icons/link.png" alt="link" />
    <?php } ?>

<?php if(has_post_format('quote')) { ?>
    <img src="<?php bloginfo('template_url'); ?>/post-icons/quote.png" alt="quote" />
    <?php } ?>

<?php if(has_post_format('status')) { ?>
    <img src="<?php bloginfo('template_url'); ?>/post-icons/status.png" alt="status" />
    <?php } ?>

<?php if(has_post_format('false')) { ?>
    <img src="<?php bloginfo('template_url'); ?>/post-icons/standard.png" alt="standard" />
    <?php } ?>

<?php if(has_post_format('chat')) { ?>
    <img src="<?php bloginfo('template_url'); ?>/post-icons/chat.png" alt="chat" />
    <?php } ?>

Может ли кто-нибудь помочь мне в том, как отображать стандартные почтовые изображения?

Share
  1. С технической точки зрения не существует «стандартного» формата сообщений. Скорее, «стандартный» — это просто значение по умолчанию — например, тип формата записи не определен.

    Если тип Post Format не определен, get_post_format() просто возвращается null .

    Я бы предложил реорганизовать ваш код выше и переименовать ваши изображения значков, используя точную строку формата сообщения. Таким образом, вы можете сделать:

    <div class="post-format">
    
    <?php $format = get_post_format(); ?>
    
    <?php if( $format ) { ?>
        <img src="<?php echo home_url(); ?>/post-icons/<?php echo $format; ?>.png" alt="<?php echo $format; ?>" />
    <?php } else { ?>
        <img src="<?php echo home_url(); ?>/post-icons/standard.png" alt="Standard" />
    <?php } ?>
    
    </div>
    

    Или, возможно:

    <div class="post-format">
    
        <?php $format = ( get_post_format() ? get_post_format() : 'standard' ); ?>
    
        <img src="<?php echo home_url(); ?>/post-icons/<?php echo $format; ?>.png" alt="<?php echo $format; ?>" />
    
    </div>
    

    Любой из них должен работать.

    • 0
  2. Попробуйте этот код вместо вашего блока:

    <?php 
    $format = get_post_format();
    if ( false === $format ) {
    ?>
        <img src="<?php bloginfo('template_url'); ?>/post-icons/standard.png" alt="standard" />
    <?php 
    }
    ?>
    
    • 0

Оставить ответ

You must login to add an answer.