我设计并开发了一个反应迅速的Wordpress网站,该网站几乎可以为演员兼制片人的客户发布了。我已经三天没有满足搜索结果页面的要求了。
我的摘录太长了,无论搜索的是什么,都包含了来自主页的重复文本。在搜索结果的帖子和页面的白色链接下,我想要一个不超过30个单词的摘录,其中包括突出显示的搜索关键字(在本例中,搜索关键字为“Ginsberg”)。因此,一段大约30个单词的片段,包括突出显示的搜索词。这就是我不能得到的。当我有了它,我就有了我想要的搜索页面。
我花了几个小时在堆栈交换和堆栈溢出上搜索这个,并试图找到自己需要的PHP逻辑,但失败了。因此,如果这里已经有了解决方案,那么它就隐藏得很好!!
我所拥有的和我满意的是:假设我在搜索垮掉的诗人“金斯伯格”(附屏幕截图)。我得到一个主标题,上面写着“金斯伯格的2个结果”。下面有一个小标题“你的金斯伯格搜索结果可以在“”找到”,然后在下面我得到了一个样式很好的列表,其中包含指向两个相关页面的两个链接。我想要所有这些。那太好了。
我的搜索表单:
<div class="search-cont">
<form class="searchinput" method="get" action="<?php echo home_url(); ?>" role="search">
<input type="search" class="searchinput" placeholder="<?php echo esc_attr_x( \'Click icon or hit enter to search..\', \'placeholder\' ) ?>" value="<?php get_search_query() ?>" name="s" title="<?php echo esc_attr_x( \'Search for:\', \'label\' ) ?>" />
<button type="submit" role="button" class="search-btn"/><i class="fa fa-search" aria-hidden="true"></i></button>
</form>
</div>
===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-=-我的搜索页面:
<div class="searchresultsbox">
<?php global $wp_query;?>
<h2> <?php echo $wp_query->found_posts; ?><?php _e( \' results found for\', \'locale\' ); ?>: "<?php the_search_query(); ?>"</h2>
<?php if ( have_posts() ) { ?>
<h3><?php printf( __( \'Your "%s" search results can be found at:\', \'ptpisblogging\' ), get_search_query() ); ?></h3>
<?php while ( have_posts() ) { the_post(); ?>
<h3><a href="<?php echo get_permalink(); ?>">
<?php the_title(); ?>
</a></h3>
<?php //echo substr(get_the_excerpt(), 0, 2); ?>
<div class="h-readmore"> <a href="<?php //the_permalink(); ?>"></a></div>
<?php
$args=array(\'s\'=>\'test\',\'order\'=> \'DESC\', \'posts_per_page\'=>get_option(\'posts_per_page\'));
$query=new WP_Query($args);
if( $query->have_posts()):
while( $query->have_posts()): $query->the_post();
{
echo $post->post_title;
echo $post->post_content;
}
endwhile;
else:
endif;
?>
<?php } ?>
<?php paginate_links(); ?>
<?php } ?>
</div>
</div>
</div>
<param name="" value="">
</div><!-- /searchresultsbox -->
</div><!-- /collcelltwo -->
</div><!-- /tb-one-row -->
</div><!-- /tb-one -->
===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-===-=-函数。php\'
add_action( \'pre_get_posts\', function( $query ) {
// Check that it is the query we want to change: front-end search query
if( $query->is_main_query() && ! is_admin() && $query->is_search() ) {
// Change the query parameters
$query->set( \'posts_per_page\', 4 );
}
} );
我非常感谢你的意见。非常感谢。基思