Где генерируется контент страницы поиска WordPress? - PullRequest
4 голосов
/ 26 марта 2012

Я пытаюсь оформить страницу поиска в WordPress.В search.php я могу стилизовать большую часть страницы, но затем следующее утверждение (которое я получил из исходной неотредактированной страницы) генерирует содержимое.

                <?php
                    /* Include the Post-Format-specific template for the content.
                     * If you want to overload this in a child theme then include a file
                     * called content-___.php (where ___ is the Post Format name) and that will be used instead.
                     */
                    get_template_part( 'content', get_post_format() );
                ?>

            <?php endwhile; ?>

Этот ПОЧТИ отображает страницу так, как я хочу, но на странице есть несколько элементов, расширяющих ее и т. Д. Я не могу понять, какой файл генерирует это содержимое!

Используя инструкции, я создал content-search.php и изменил строку кода на эту ...

get_template_part( 'content', get_post_format() );

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

Кто-нибудь знает, что?

1 Ответ

6 голосов
/ 26 марта 2012

Вы можете использовать часть шаблона с именем post-search.php и использовать ее в вашем файле search.php, например

get_template_part( 'post' , 'search')

но вы должны создать php-файл внутри папки вашей темы и назвать его post-search.php, а внутри этого файла просто поместить цикл WordPress, т.е.

<?php while (have_posts()) : the_post(); ?>
<div class="post-entry clearfix"> <!-- Main wrapper -->
    <div class="post-entry-content"> <!-- Post-entry-content -->
            <h2><a href="<?php the_permalink(' ') ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
                <div class="post-entry-date">Posted on <?php the_time('F Y') ?> with <?php comments_popup_link('0 Comments', '1 Comment', '% Comments'); ?></div>
                    <?php the_excerpt(); ?>
                    <a href="<?php the_permalink(' ') ?>" class="post-entry-read-more" title="<?php the_title(); ?>">Read More ?</a>
    </div><!-- END of post-entry-content -->
</div><!--End of main wrapper -->
<?php endwhile; ?>

и ваш search.php может выглядеть примерно так

<?php get_header(' '); ?>
<div id="post-wrap">  
    <div id="post-content"> 
    <?php if (have_posts()) : ?>
    <?php get_template_part( 'post' , 'search') ?> // This will load/include the file post-search.php and result will be displayed as formatted in this file
    <?php else : ?>
        <p>Sorry, it does not exist !</p>
    <?php endif; ?>
    </div><!-- END post-conten -->
<?php get_sidebar(' '); ?>      
    </div><!-- END post-wrap -->        
<?php get_footer(' '); ?>

Это всего лишь пример, измените имена div / h2 id / class в соответствии с вашей темой css.

Примечание: В настоящее время я использую этот подход на одном из моих сайтов, и у меня есть один файл с именем 'post-entry.php' в папке моей темы и в каждом файле моего шаблона (индекс. php, search.php и т. д.) Я просто использую этот файл, вызывая

<?php get_template_part( 'post' , 'entry') ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...