/**
* Добавляет условие WHERE в запрос Wp_Query.
*
* @param $where
*
* @return string
*/
function modify_posts_where( $where ) {
return $where . ' AND ID > 350';
}
// Добавляем условие
add_filter( 'posts_where', 'modify_posts_where' );
// Делаем запрос
$posts = new WP_Query( [
'post_type' => 'post',
'posts_per_page' => - 1,
// и другие нужные параметры
] );
// Удаляем условие, чтобы другие вызовы WP_Query() не затрагивать
remove_filter( 'posts_where', 'modify_posts_where' );
remove_all_actions( 'wp_head' );
// Это также сработает и на хуке wp_footer
add_action( 'wp_head', function () {
wp_enqueue_script( 'my-script', get_template_directory_uri() . '/assets/js/homepage.js' );
} );
add_action( 'wp_head', 'wp_enqueue_scripts', 1 );
add_action( 'carbon_fields_register_fields', 'crb_attach_post_meta' );
function crb_attach_post_meta() {
Container::make( 'post_meta', 'Custom Data' )
->where( 'post_type', '=', 'post' )
->where( 'post_format', '=', 'video' )
->where( 'post_term', '=', array(
'field' => 'slug',
'value' => 'broder',
'taxonomy' => 'category',
) )
->add_fields( array(
Field::make( 'map', 'crb_location' )
->set_position( 37.423156, -122.084917, 14 ),
Field::make( 'sidebar', 'crb_custom_sidebar' ),
Field::make( 'image', 'crb_photo' ),
));
}
add_action( 'init', 'my_custom_init' );
function my_custom_init() {
register_post_type( 'book', [
'labels' => [
'name' => 'Книги', // Основное название типа записи
'singular_name' => 'Книга', // отдельное название записи типа Book
'add_new' => 'Добавить новую',
'add_new_item' => 'Добавить новую книгу',
'edit_item' => 'Редактировать книгу',
'new_item' => 'Новая книга',
'view_item' => 'Посмотреть книгу',
'search_items' => 'Найти книгу',
'not_found' => 'Книг не найдено',
'not_found_in_trash' => 'В корзине книг не найдено',
'menu_name' => 'Книги',
],
'public' => true,
'rewrite' => [ 'slug' => 'learn/books' ],
'supports' => [ 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments' ],
] );
}
add_action('init', 'rewrite_rule_my');
function rewrite_rule_my(){
add_rewrite_tag('%metro%', '([^&]+)');
add_rewrite_rule('^(objects)/([^/]*)/?', 'index.php?pagename=$matches[1]&metro=$matches[2]', 'top');
}
get_query_var('metro') // рекомендуемый
$wp_query->query_vars['metro']
$wp_query->query['metro']