DImas95

Специфическое отображение

    Рекомендуемые сообщения

    DImas95

    Здравствуйте, на этом сайте есть посты, которые должны отображаться следующим образом:

    КАРТИНКА - ВИДЕО

    дата

    название поста

    контент

    Но тут возникла проблема. Используя этот код


    <?php the_post_thumbnail('homepage-thumb', array('alt' => '', 'title' => '')) ?>
    <?php if ($imbalance2_theme_options['images_only'] == 0): ?>
    <div class="categories"><?php echo get_the_date('d.m.Y'); ?></div>

    <h1><?php the_title(); ?></h1>
    <?php the_content() ?>

    получается что все отображается как и нужно, но только не если вместо картинки находится видео. Так как в коде сказано выводить дату и название после КАРТИНКИ а после видео ничего не работает. Не подскажите как добится желаемого результата вне зависимости от того, что я использую, картинку или видуо.

    Заранее благодарен

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    vadimon

    А где вы этот код взяли?

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    vadimon

    Да это я понял, что из файла loop.php. Насколько я сейчас вижу, то у вас на сайте дата выводится.

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    DImas95

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

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    vadimon

    Настройки темы в административной панели имеются? Там нет никаких опций относительно изображений и видео?

    Судя по этой строчке:


    <?php if ($imbalance2_theme_options['images_only'] == 0): ?>

    у вас в настройках можно включать/выключать миниатюры к записям.

    Также, хотелось бы посмотреть код цикла полностью.

    Если есть if, то должно быть и продолжение условия цикла...

    Изменено пользователем vadimon

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    DImas95

    Вот весь loop.php:


    <?php if ( ! have_posts() ) : ?>
    <div id="post-0" class="post error404 not-found">
    <h1 class="entry-title"><?php _e( 'Not Found', 'imbalance2' ); ?></h1>
    <div class="entry-content">
    <p><?php _e( 'Apologies, but no results were found for the requested archive. Perhaps searching will help find a related post.', 'imbalance2' ); ?></p>
    <?php get_search_form(); ?>
    </div><!-- .entry-content -->
    </div><!-- #post-0 -->
    <?php endif; ?>
    <?php $imbalance2_theme_options = get_option('imbalance2_theme_options') ?>
    <div id="boxes">
    <?php while ( have_posts() ) : the_post(); ?>
    <div class="box">
    <div class="rel">

    <?php the_post_thumbnail('homepage-thumb', array('alt' => '', 'title' => '')) ?>
    <?php if ($imbalance2_theme_options['images_only'] == 0): ?>

    <?php the_content() ?>


    <?php endif ?>

    </div>
    </div>
    </div>
    <?php endwhile; ?>
    </div>

    И насколько я понял, в данной теме нет настроек для отображения миниатюр.Они либо есть, либо нет. Я пробовал ставить video и iframe но это не работает.

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    vadimon

    Судя по этой функции:


    $imbalance2_theme_options['images_only'] == 0

    как раз есть настройка картинок.

    Как называется тема, которую вы используете? Imbalance 2?

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    DImas95

    Да, Imbalance 2. Я немного внутри ковырялся, но ничего очевидного не нашел. Я новичек в ВордПрессе

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    vadimon

    Пришлите вашу тему мне в личку в архиве, я посмотрю.

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    vadimon

    Каким образом добавляете картинки и видео в записи в вашем шаблоне?

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    DImas95

    Просто в пост вставляю картинку или видео. Все работало когда вставляли картинку как feautered image, потому что в loop' -e название и контент шел после feautered image. Но я не могу установить видео как feautered image, поэтому пришлось отказаться от этого способа.

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    vadimon

    Все правильно. Поэтому у вас и не получится так, как вы хотите. Надеюсь, уже догадались, почему.

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    DImas95

    Потому что в loop'e было прописано ставить контент только после картинки? А видео это не картинка....

    Правда пытался использовать плагины что бы отображать видео как картинку - не помогло.

    Это вообще возможно сделать, как вы считаете?

    Спасибо

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    vadimon

    Так у вас все элементарно до безобразия.

    Ну, вот смотрите, у вас был код:


    <?php the_post_thumbnail('homepage-thumb', array('alt' => '', 'title' => '')) ?>
    <?php if ($imbalance2_theme_options['images_only'] == 0): ?>
    <?php the_content() ?>

    т.е. сначала выводится картинка, которую вы вставляете либо как миниатюру, либо через произвольное поле, т.е вот эта функция:


    <?php the_post_thumbnail('homepage-thumb', array('alt' => '', 'title' => '')) ?>

    выводит ваше изображение и ТОЛЬКО изображение. Затем у вас идет ваш контент, то есть то, что вы пишите в визуальном редакторе, кроме заголовка записи. На выходе имеем:

    1. Выводится изображение

    2. Выводится контент.

    Идем дальше.

    Добавив теги вывода заголовка и даты:



    <?php the_post_thumbnail('homepage-thumb', array('alt' => '', 'title' => '')) ?>
    <?php if ($imbalance2_theme_options['images_only'] == 0): ?>
    <?php echo get_the_date('d.m.Y'); ?>
    <h1><?php the_title(); ?></h1>
    <?php the_content() ?>

    на выходе имеем:

    1. Выводится изображение

    2. Выводится дата

    3. Выводится заголовок

    4. Вводится контент.

    Вы должны понять, что функция:


    <?php if ($imbalance2_theme_options['images_only'] == 0): ?>

    выводит только изображение, которое вы добавляете как миниатюру и никак иначе. Видео, которое вы добавляете в визуальном редакторе - это и есть контент, который выводится тегом:


    <?php the_content() ?>

    т.е добавив видео в визуальный редактор (не добавляя при этом изображение, как миниатюру), на выходе имеем:

    1. Выводится дата

    2. Выводится заголовок.

    3. Выводится видео.

    Вариантов два:

    1. Добавляйте ТОЛЬКО изображение через миниатюру или произвольное поле.

    2. Используя ваш вариант:


    <?php the_post_thumbnail('homepage-thumb', array('alt' => '', 'title' => '')) ?>
    <?php if ($imbalance2_theme_options['images_only'] == 0): ?>

    <h1><?php the_title(); ?></h1>
    <?php the_content() ?>
    <div class="categories"><?php echo get_the_date('d.m.Y'); ?></div>

    Добавляйте изображения и видео в поле визуального редактора, т.е. то, что будет выводить тег <?php the_content() ?>. Т.е тег вывода даты <div class="categories"><?php echo get_the_date('d.m.Y'); ?></div> у вас должен идти после тега вывода контента <?php the_content() ?>.

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    DImas95

    Спасибо за хорошее обьяснение, но наверное остановимся на варианте что человек сам будет добавлять дату и имя поста

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах

    Создайте аккаунт или войдите в него для комментирования

    Вы должны быть пользователем, чтобы оставить комментарий

    Создать аккаунт

    Зарегистрируйтесь для получения аккаунта. Это просто!

    Зарегистрировать аккаунт

    Войти

    Уже зарегистрированы? Войдите здесь.

    Войти сейчас

    • Войти через Facebook
    • Войти через Twitter
    • Войти через Microsoft
    • Войти через LinkedIn
    • Войти через Google

    Карта разработчиков

    Карта участников

    Отметь себя на карте для поиска или предложения работы