В пользовательском типе записи есть ли способ включить поле «Порядок», доступное для страниц?
Есть ли встроенная логика, которая предотвращает дублирование значений в поле «порядок»?
Идея состоит в том, чтобы иметь возможность сортировать пользовательский тип записи по заданному пользователем порядку, а затем в алфавитном порядке по пользовательскому полю на основе строки.
custom-post-types
theme-development
order
Поток силы
источник
источник
Ответы:
При объявлении вашего пользовательского типа записи с помощью функции register_post_type вы должны добавить «атрибуты страницы» в поле поддержки, как в следующем примере:
Вам также необходимо добавить любые другие поддерживаемые мета-блоки в поле «Support», см. Http://codex.wordpress.org/Function_Reference/register_post_type для получения дополнительной информации о полях register_post_type.
Также, насколько я знаю, не существует встроенного способа предотвращения двух одинаковых порядков, это потому, что вы можете создавать подупорядочения на основе иерархии (так что одна группа дочерних страниц может иметь порядок, отличный от другого)
источник
page-attributes
представляет какorder
поле, так иparent
поле. Как мне избавиться отparent
поля?hierarchical
в false избавляет от этого.В дополнение к ответу @ Dave-Hunt вы также можете добавить фильтр, например, следующий, чтобы определить пользовательский порядок - в данном случае, в алфавитном порядке по заголовку. (Код, благодаря сообщению в блоге Марка Леонга. ) Снимите этот
is_admin()
флажок, если вы хотите, чтобы вы также настраивали order_by на внешнем интерфейсе.Обновить
Для проверки перед сохранением см. Этот ответ: /wordpress//a/40095/4645, где обсуждаются ваши варианты. По сути, все сводится к пользовательскому jQuery, так как WordPress не имеет хуков предварительного сохранения.
Также (дублируя мой предыдущий комментарий здесь для дальнейшего использования), здесь показано, как открыть поле «Порядок меню» в админке, чтобы его можно было редактировать, как и для страниц: Добавление столбца «Порядок меню» в пользовательский экран администратора типа поста
источник