function cf_search_join( $join ) {
global $wpdb;
if ( is_search() ) {
$join .=' LEFT JOIN '.$wpdb->postmeta. ' ON '. $wpdb->posts . '.ID = ' . $wpdb->postmeta . '.post_id ';
}
return $join;
}
add_filter( 'posts_join', 'cf_search_join' );
function cf_search_where( $where ) {
global $pagenow, $wpdb;
if ( is_search() ) {
$where = preg_replace(
"/\(\s*".$wpdb->posts.".post_title\s+LIKE\s*(\'[^\']+\')\s*\)/",
"(".$wpdb->posts.".post_title LIKE $1) OR (".$wpdb->postmeta.".meta_value LIKE $1)", $where );
}
return $where;
}
add_filter( 'posts_where', 'cf_search_where' );
function cf_search_distinct( $where ) {
global $wpdb;
if ( is_search() ) {
return "DISTINCT";
}
return $where;
}
add_filter( 'posts_distinct', 'cf_search_distinct' );
советуют создавать "дочку" у бесплатной темы
Не будет ли говнокодом если в моем шаблоне page.php или archive.php будет полотно кода, под каждую страницу котрую я цепляю по слагу?
$args = array(
'post_type'=> array( 'package' ),
'meta_query' => array(
'relation' => 'AND',
array(
'key' => 'start_date', // заменить на ваш ключ первой даты
'compare' => '<=',
'value' => $formatted_date_min,
),
array(
'key' => 'finish_date', // заменить на ваш ключ второй даты
'compare' => '>=',
'value' => $formatted_date_max,
)
),
);
if (isset($GLOBALS["polylang"])) {
$translations = $GLOBALS["polylang"]->model->post->get_translations($post->ID);
// гляньте дамп, что выдает
}