Я пытаюсь создать функцию фильтра для основного запроса на странице архива типа персонализированного сообщения. Тип персонализированного сообщения называется «Отель». Для этого настраиваемого типа сообщений у меня есть пользовательская таксономия «Услуги». Каждый «отель» может иметь одно или несколько объектов. Я создал функцию формы с пометкой для каждой доступной таксономии. Также я создал привязку к функции pre_get_posts, […]
Что я пытаюсь сделать? Назначьте более 1 категории должности, чтобы она отображалась в каждом шаблоне категории без 1 основной категории в URL-адресе. Поведение WP по умолчанию, когда вы выбираете более одной категории для сообщения, – это присвоение должности категории с наименьшим идентификатором. Например: если категория «Apple» имеет идентификатор 6, а категория «Персик» имеет идентификатор 4. […]
Я изо всех сил пытаюсь найти решение следующей проблемы. Основной запрос должен проверять только страницы и выбранные пользовательские типы сообщений для выбранного имени типа публикации. address.com/flower-post-name [custom-post-type] address.com/flower-page-name [страница] Как вы можете видеть, у моего пользовательского типа сообщений пул удален из permalink, используя это решение vip.wordpress.com . Проблема, с которой я столкнулся, заключается в том, […]
Я создал функцию фильтра для фильтрации items типа post с помощью мета значения _item_price . Проблема в том, что он работает только в порядке возрастания, и я не уверен, почему. Моя функция pre_get_posts выглядит так: function frontend_items_filter( $query ) { global $page_items_id if(!is_page($page_items_id)) return; if($query->query_vars['post_type'] == 'items' && isset($_GET['filter'])){ $sort = $_GET['item_sort']; // Set Ordering […]
Я видел эту ссылку для отображения сообщений случайным образом, не дублируя их. Однако как вы примените это к настраиваемому типу сообщений? Ниже я использую функции для случайного отображения. session_start(); add_filter('posts_orderby', 'edit_posts_orderby'); function edit_posts_orderby($orderby_statement) { $seed = $_SESSION['seed']; if (empty($seed)) { $seed = rand(); $_SESSION['seed'] = $seed; } $orderby_statement = 'RAND('.$seed.')'; return $orderby_statement; }
Чтобы включить разбивку на страницы для пользовательского почтового архива, я добавил функцию pre_get_posts. Но, забавно, это вызвало дублирование моих пользовательских сообщений в меню «Страницы». Вот код, который вызывает проблему. Пожалуйста, порекомендуйте. function truck_pre_pagination( $qry ) { if ( $qry->is_main_query() ) { $qry->set('orderby','date'); $qry->set('order','ASC'); $qry->set('posts_per_page',12); $qry->set('post_type','trucks'); } } add_action('pre_get_posts','truck_pre_pagination');
Я использую код ниже, чтобы удалить категорию # 5377 из запроса на главной странице. Однако, по какой-то причине этот код также отменяет порядок сообщений в блогах. Как я могу изменить этот код, чтобы удалить категорию # 5377 и сохранить тот же порядок сообщений? function excludeCat($query) { if ( $query->is_home ) { $query->set('cat', '-5377'); } return […]
Я прочитал Использование pre_get_posts с WP_Query, и я не уверен, куда идти с ним. У меня есть недавний плагин сообщений, который добавляет переменные в WP_Query – один из которых может быть «смещенным» сообщениям. Проблема в том, что у меня есть несколько экземпляров последних сообщений в соответствии с категорией, и если я хочу смещение 4, это […]
Когда кто-то посещает домашнюю страницу моего сайта WordPress: http://www.mysite.com/wordpress/ Я хочу, чтобы они увидели содержимое этой страницы: http://www.mysite.com/wordpress/category/cars/ Попытка # 1: добавление следующего блока кода в функции my.php моей темы: function add_my_rule() { global $wp; $wp->add_query_var('args'); add_rewrite_rule('/', 'category/cars/', 'top'); } add_action('init', 'add_my_rule'); Ничего. В качестве эксперимента я подумал, что попытаюсь понять, могу ли я переадресовать […]
Я столкнулся с проблемой, чтобы показать тип сообщения типа post типа. Тогда я нашел решение проблемы. Я написал ниже код на странице функций: function my_blog_category( $query ) { if ( is_post_type_archive( 'blog') && $query->is_main_query() ) { $action = (isset($_REQUEST['ac'])) ? $_REQUEST['ac'] : 'none'; if($action!='none') $query->set( 'category_name', $action ); } } add_action( 'pre_get_posts', 'my_blog_category' ); Поэтому, […]