• Использую wordpress в корпоративных целях. Хотел отделить отчеты по визитам к клиентам в отдельную тему. Поставил CPT UI создал отдельную taxonomy (увы не знаю перевода) — otchet
    Категории у меня носят имя клиента. Чтобы отражалось вместе с posts материалами — добавил такой код в functions.php

    add_filter('pre_get_posts', 'query_post_type');
    function query_post_type($query) {
      if( is_category() ) {
        $post_type = get_query_var('post_type');
        if($post_type)
            $post_type = $post_type;
        else
            $post_type = array('nav_menu_item', 'post', 'otchet'); // don't forget nav_menu_item to allow menus to work!
        $query->set('post_type',$post_type);
        return $query;
        }
    }

    Все отлично работает. Но есть ли возможность чтобы при переходе в категорию otchetы были всегда ниже типа posts. Т.е posts показываются первыми вне зависимости от даты создания, а потом otchetы

Просмотр 13 ответов — с 1 по 13 (всего 13)
  • taxonomy (увы не знаю перевода) — otchet

    taxonomy — таксономия
    И не «категория», а «рубрика».
    См https://translate.wordpress.org/locale/ru/default/glossary

    Все отлично работает. Но есть ли возможность чтобы при переходе в категорию otchetы были всегда ниже типа posts.

    Насколько я вижу Вы… перепутали таксономию и типы постов. Так что ещё вопрос что Вы сделали с пом плагина 😉

    И вообще наверное незачем эти фильтры в файле функций — достаточно сделать/поправить шаблон темы. Дочерней, если не самописная поделка.

    Ну и контрольный в голову :))
    Отчёт — report.

    Ну и контрольный в голову :))

    И, кстати, спс, что напомнили. Во избежания коллизий: https://codex.wordpress.org/Reserved_Terms

    Автор moskovskiy82

    (@moskovskiy82)

    Первые шаги поэтому…
    Да был создан тип записи.

    Но вопрос остается. Как можно сделать так чтобы модифицированный тип записи в представлении рубрики отражался ниже встроенной (post)?

    Но вопрос остается. Как можно сделать так чтобы модифицированный тип записи в представлении рубрики отражался ниже встроенной (post)?

    Изменением сортировки. orderby

    https://codex.wordpress.org/Class_Reference/WP_Query#Order_.26_Orderby_Parameters
    По-русски не оф перевод (могут быть неточности, сверяйтесь с кодексом).

    Возможно понадобится множественный цикл

    Автор moskovskiy82

    (@moskovskiy82)

    Нашел похожий кусок кода, но здесь используется два частных типа. Не могу адапитровать под стандартный/частный

    add_filter( 'posts_request' , 'modify_request' );
    function modify_request( $query) {
        global $wpdb;
        if(strstr($query,"post_type IN ('review', 'directory')")){
            $where = str_replace("ORDER BY {$wpdb->posts}.post_date","ORDER BY {$wpdb->posts}.post_type",$query);
        }
        return $where;
    }

    Нашел похожий кусок кода

    Потеряйте.
    Это абсолютно не тот случай, чтобы лазить в базу. (трогать базу вообще можно только в оч. редких случаях и когда хорошо знаешь ВП)

    Почитайте по выше данным ссылкам. Разберитесь с циклом — основой ВП.

    Автор moskovskiy82

    (@moskovskiy82)

    Я правильно понимаю, что предложение не создавать новые типы, а использовать к примеру или доп поля или использовать мета теги под эти цели? Может быть есть какой то плагин, который может упростить жизнь не знающему PHP?

    Я правильно понимаю, что предложение не создавать новые типы, а использовать к примеру или доп поля или использовать мета теги под эти цели?

    Не-не. Я такого не говорил. Я комментирую то, что Вы показываете.

    А вот задачу, что и для чего нужно я так и не понял.

    Автор moskovskiy82

    (@moskovskiy82)

    Попробую…
    Сайт для небольшой рабочей группы. Разделы созданы по клиентам (порядка 12).
    Необходимо отделить отчеты по визитам к клиенту (posts), чтобы они показывались ниже остальных страниц (4-5 основные страницы по клиенту тоже posts).

    Конечно как вариант в описании к разделу вставлять ссылку на статичные страницы (pages) а в самом разделе уже будут идти отчеты, но есть желание, чтобы все работало не требуя какого либо знания wordpress в виде ручного изменения и добавления ссылок

    Попробую

    Не получилось 🙁
    Вы используете понятия и определения понятные только Вам в рамках задачи. (напр. «рабочая группа» — это сетевой термин) И соотносите к ним термины ВП, что ещё больше запутывает понимание. Во всяком случае моё.

    Попробуйте рассказать простым языком о работе с клиентами и данными — их задачи, объёмы, регулярность и тп.
    Можете показать примеры решения таких задач.

    Автор moskovskiy82

    (@moskovskiy82)

    Будет слишком сложно. Ладно последняя попытка.

    Есть два типа записей
    Тип А — важные и должны отображаться сверху (5-8 записей)
    Тип Б — не такие важные и должны отображаться ниже типа А (50+ записей)

    Оба типа записей имеют общую категорию (раздел).

    Как с минимальными усилиями сделать пункт меню где будут выведены записи из данной категории (раздела)

    Вначале будут отражены записи типа А (сортировка ручная или по алфавиту)
    Уже после них будут отображаться записи типа Б в хронологическом порядке

    Оба типа записей имеют общую категорию (раздел).

    Рубрику?

    Как с минимальными усилиями сделать пункт меню где будут выведены записи из данной категории (раздела)

    Вы же говорили о странице рубрики (архивной странице). Причем тут меню вообще?

    В общем
    а) в ВП есть штатная возможность закрепления записей. Сортировка для них и для всех остальных одинаковая.

    б) в шаблоне создать область виджетов и с пом плагина для вывода последних/похожих записей вывести их.

    Это были самые простые на вскидку.

    Более сложнее (относительно):
    в) в шаблоне рубрики (или др) использовать множественный цикл. Тут уже вариантов сортировок и фильтрации море.

    Ида. Для всего этого не нужны «отдельные типы». Есть масса встроенных «маркеров» за которые можно цепляться — формат записей, шаблон записи, метка (tag), произвольные поля, рубрика (доп.).

    Кстати, отбор по определённой метке используется во многих темах. Напр, в Twenty Fourteen метка feature используется для верхнего слайдера.

Просмотр 13 ответов — с 1 по 13 (всего 13)
  • Тема «Порядок taxonomy» закрыта для новых ответов.