Вопрос или проблема
На самом деле, я пытаюсь скрыть кнопку обновления в режиме редактирования. Следующий код работает для меня. Но проблема в том, что когда я обновляю что-либо, кроме конкретного типа записи (книга), он не перенаправляет на тот же режим редактирования, а уводит на пустую страницу.
function hide_edit_book_update(){ ?>
<style type="text/css">
.post-type-book #publishing-action {display:none;}
</style><?php
}
add_action( 'admin_enqueue_scripts', 'hide_edit_book_update' );
Наконец, я нашел ответ.
function hide_edit_book_update(){ ?>
<style type="text/css">
.post-php.post-type-book #publishing-action {display:none;}
</style><?php
}
add_action( 'admin_enqueue_scripts', 'hide_edit_book_update' );
Добавление новой записи и редактирование записи мы можем отличить по CSS классам post-php и php-new-php.
Ответ или решение
Вопрос, который представили, касается настройки интерфейса административной панели в WordPress для определенного типа пользовательских записей. Задача состоит в том, чтобы скрыть кнопку "Обновить" на странице редактирования пользовательских записей типа "книга". Рассмотрим возможное теоретическое объяснение, пример и его применение в реальном проекте.
Теория
WordPress предоставляет мощные возможности по настройке административного интерфейса, в том числе и с использованием пользовательских сценариев (actions and filters). В данном случае мы используем хуки и стили CSS, чтобы управлять видимостью элементов интерфейса. Определение страницы редактирования конкретного типа записей возможно через CSS-классы, которые генерируются WordPress динамически.
CSS-класс .post-php.post-type-book
используется для идентификации страницы редактирования записи типа "книга". Исходя из этих условий, задача скрытия кнопки "Обновить" сводится к правильно примененному стилю CSS, который скрывает элемент с идентификатором #publishing-action
.
Пример
Пример, который был предложен и работает:
function hide_edit_book_update() { ?>
<style type="text/css">
.post-php.post-type-book #publishing-action { display: none; }
</style>
<?php }
add_action('admin_enqueue_scripts', 'hide_edit_book_update');
В данном коде функция hide_edit_book_update
добавляет стили в административную часть WordPress, которые скрывают специфический элемент только на страницах редактирования записей типа "книга". Важное дополнение состоит в использовании post-php
в CSS-классе, что позволяет очередной задачей уточнить условия видимости элемента.
Применение
Настоящее решение подходит для проектов с необходимостью ограничить возможность обновления записей определенного типа без затрагивания остальных. Это может быть полезно в случаях, когда данные, относящиеся к типу записи "книга", должны быть защищены от изменений после создания, например, в библиотечных или издательских системах, где обновление информации о книге требует особых полномочий.
Таким образом, с помощью предложенного подхода можно гибко контролировать доступ к функциональности редактирования в WordPress, улучшая безопасность и управляемость системы.