Intereting Posts
Ошибка базы данных: команды не синхронизированы Есть ли способ подключить персонализированный тип сообщения к таксономии другого пользовательского типа? (в зависимости от местоположения) Нужен ресурс для доступных функций и объектов Каков правильный крюк для записи в виде сообщения? Как перенаправить ссылки на профили при регистрации Получение изображений из медиа-библиотеки и get_the_date () не работает Использование catch_the_image для получения размера эскиза Запросить несколько значений мета-ключей для шаблона Как отображать данные из настраиваемых полей в моем специальном коротком коде? Расширьте таблицу wp_users Сокращение регистрации спам-пользователей Что нужно позаботиться перед установкой wordpress Manual v / s Неаккуратно После отправки комментариев выберите текущую вкладку Постоянная ссылка на сообщение без использования функций WordPress Как удалить элементы из + Новое меню администратора?

Не разрешать добавлять или редактировать пользовательский тип сообщения из бэкэнд

Как говорится в названии, я не хочу разрешать пользователям редактировать собственный тип сообщения из области бэкэнда / Но вместо этого я хочу сохранить ссылки в меню администратора и перенаправить на другой URL-адрес.

Идеальное решение – использовать фильтр и изменить URL.

Прямо сейчас я делаю перенаправление с помощью wp_safe_redirect , но я думаю, что это не лучшее решение.

Вот код, который я использую:

 add_action( 'current_screen', 'smk_recipes_redirect_to_frontend' ); function smk_recipes_redirect_to_frontend() { if( is_admin() ){ $current_screen = get_current_screen(); $id = $current_screen->id; $action = $current_screen->action; if( 'smk_recipes' == $id && 'add' == $action ){ wp_safe_redirect( smk_recipe_submit_url(), 301 ); exit(); } elseif( 'smk_recipes' == $id && !empty($_GET['action']) && 'edit' == $_GET['action'] ){ $post_id = !empty($_GET['post']) ? absint( $_GET['post'] ) : false; if( $post_id ){ wp_safe_redirect( smk_recipe_edit_url( $post_id ), 301 ); exit(); } } } } 

И вот скриншот, показывающий ссылки, которые я хочу заменить:

введите описание изображения здесь

Если все еще не уверен, я просто хочу заменить только URL ссылок:

с http://example.com/wp-admin/post-new.php?post_type=smk_recipes

на http://example.com/add-new/

а также

с http://example.com/wp-admin/post.php?post=35&action=edit

на http://example.com/edit/35


Примечание: вышеупомянутое решение работает так, как ожидалось, но я не доволен им.