搜索栏的常规代码是
<div class="searchbar">
<form role="search" method="get" class="search-form" action="<?php echo home_url( '/' ); ?>">
<label>
<span class="screen-reader-text">Search for:</span>
<input type="search" class="search-field" placeholder="" value="" name="s" title="Search for:" />
</label>
<button type="submit" class="search-submit"><i class="fa fa-search fa-flip-horizontal"></i></button>
</div>
但是,对于帖子页面,我想将搜索限制为关键字和年份。如何更改代码以仅使用关键字和年份?我想到的代码是两个搜索栏/输入,并排,一个搜索栏用于关键字,另一个搜索栏用于年份。示例图片位于底部。
查看WP Query,我可以看到关键字的代码:
$query = new WP_Query( array( 's' => 'keyword' ) );
多年来,您可以使用以下内容参数:
$query = new WP_Query( 'year' );
那么如何编辑搜索代码以仅显示关键字和年份?
答案 0 :(得分:0)
使用search.php默认页面和以下代码:
function modify_search( $query ) {
if ( $query->is_search() && $query->is_main_query() ) {
if ( !empty( $_POST['year'] ) ) {
$query->set( 'year', absint( $_POST['year'] ) );
}
if ( !empty( $_POST['keyword'] ) ) {
$query->set( 's', absint( $_POST['keyword'] ) );
}
}
add_action( 'pre_get_posts', 'modify_search' );