• Здравствуйте. Подскажите, как можно вывести картинку записи в результатах поиска ?

    В категориях за это отвечает код

    <img width="180" src="<?php echo get_post_image(); ?>" title="<?php the_title(); ?>" alt="<?php the_title(); ?>" />

    но этот код почему-то не срабатывает в результатах поиска. Наверное как-то не правильно вставляю.

    Я разобрался, что надо его вставлять куда-то сюда

    <?php } else if (is_search()) { ?>
    
    <h2 id="post-header">Результаты поиска для &quot; <?php the_search_query(); ?> &quot;</h2>
    
    <?php } else if ((is_home()) && ($paged < 1)) { ?>

    подскажите пожалуйста, как это правильно сделать ?

    спасибо

Просмотр 15 ответов — с 1 по 15 (всего 30)
  • неужели никто не знает ? уже всю голову сломал 🙁

    так и не удалось победить. подскажите, как это можно сделать ?

    Точно так же как и во всех остальных местах

    <?php the_post_thumbnail();?>

    p.s: мало понятно, что в вашем коде там творится

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

    с thumbnail почему-то не срослось у меня. готов рассмотреть и другие варианты, если подскажите, как их применить на сайте (не плагины).

    Вместо

    <h2 id="post-header">Результаты поиска для &quot; <?php the_search_query(); ?> &quot;</h2>

    Выведите результат поиска обычным циклом (естественно при этом придется разметку HTML прописать и стили CSS прописать для разметки HTML). Например так

    <?php if (have_posts()) :  while (have_posts()) : the_post(); ?>
    
        <? if (!is_page(get_post())):?>
                <a href="<?php the_permalink();?>">
                    <?php if(has_post_thumbnail()):?>
                        <?php the_post_thumbnail();?>
                    <?php else:?>
                        <img src="<?php bloginfo('template_url');?>/images/no_img.jpg" alt="" />
                    <?php endif;?>
                </a>
                </div>
                <div class="articles-head">
                    <span class="articles-date"><img src="<?php bloginfo('template_url');?>/images/articles-author.jpg" alt="" /> <span><?php the_author(); ?></span> - <?php the_time('M j, Y');?></span>
                    <span class="articles-comments"><img src="<?php bloginfo('template_url');?>/images/articles-comment.jpg" alt="" /> <a href="<?php the_permalink();?>"><?php comments_popup_link();?></a></span>
                </div>
                <h1><a href="<?php the_permalink();?>"><?php the_title();?></a></h1>
                <p><?php the_excerpt();?></p>
                <p><a href="<?php the_permalink();?>">Read More</a></p>
            </div>
        <?php else: ?>
            ................
            ................
            ................
    
        <?php endif;?>
    <?php endwhile; ?>
    <?php endif; ?>

    Охохошеньки-хохо. не думал, что все так сложно будет …

    вставил для теста, как говориться «как есть», картинки не появились 🙁

    Вот это:

    <h2 id="post-header">Результаты поиска для " <?php the_search_query(); ?> "</h2>

    Это просто выводит то, что вы ввели в форму поиска, там нет результата поиска (Ее можете даже оставить, а под ней уже вывод результата), а результат уже выводится именно так, как я вам показал. Но здесь без минимальных знаний HTML, CSS и PHP, да и функций WordPress не обойтись (простой копи-паст моего кода вызовет только ошибки, я привел его просто как пример).

    тогда я окончательно запутался. эта строчка выводить тот запрос, который я ввел в поиске, с этим разобрался, но тогда откуда выводятся сами посты для поиска ? в каком файле темы это реализуется по умолчанию ? возможно ответ кроется именно там …

    но тогда откуда выводятся сами посты для поиска ?

    Они выводятся на основании запросов к БД MySql WordPress (по переданным параметрам запроса поиска), с последующим формированием результата, который вам и предоставляется в шаблон для обработки (Вряд ли вам это чем то поможет).

    в каком файле темы это реализуется по умолчанию

    Шаблон для вывода результата поиска search.php в папке темы

    такого файла нет. есть только файл с формой поиска и файл результатов. в результатах описаны ошибки из серии: записи не найдены, автор не найден и т.д.

    и файл результатов

    Вы какой файл имеете в виду? index.php? (index.php кстати выступает в качестве шаблона результата поиска, если нет файла search.php)

    result.php

    <?php if (is_category()) { ?>
    
    <h2 id="post-header"> Извините, рубрики которые Вы ищете - были удалены</h2>
    
    <?php } else if (is_archive()) { ?>
    
    <h2 id="post-header"> Извините, архивы которые Вы ищете - были удалены</h2>
    
    <?php } else if (is_search()) { ?>
    
    <h2 id="post-header"> К сожалению, по Вашему запросу ничего не найдено.</h2>
    
    <?php } else if (is_author()) { ?>
    
    <h2 id="post-header"> Извините, автора которого Вы ищете - был удален</h2>
    
    <?php } else if (is_single()) { ?>
    
    <h2 id="post-header"> Извините, тему которую Вы ищете - была удалена</h2>
    
    <?php } else if (is_home()) { ?>
    
    <h2 id="post-header"> Извините, сообщение которое Вы ищете - было удалено</h2>
    
    <?php } else if (is_404()) { ?>
    
    <h2 id="post-header"> 404 error page - Страница не найдена</h2>
    
    <?php } ?>

    Это не шаблон вывода результата поиска, смотрите index.php (возможно в нем еще какие-то файлы инклюдяться), раз у вас нет search.php

    <h2 id="post-header">Результаты поиска для &quot; <?php the_search_query(); ?> &quot;</h2>

    эта строчка у меня находится в файле headline.php. а в index.php у меня следующие инклюды (сверху вниз):

    <?php include (TEMPLATEPATH . '/headline.php'); ?>
    <?php include (TEMPLATEPATH . '/paginate.php'); ?>
    <?php include (TEMPLATEPATH . '/result.php'); ?>

    ищите код вывода результата поиска или в index.php или в headline.php ниже того фрагмента кода, который вы показали

Просмотр 15 ответов — с 1 по 15 (всего 30)
  • Тема «Картинка поста в результатах поиска» закрыта для новых ответов.