Intereting Posts
Как я могу автоматизировать процесс загрузки документов -> через python -> отчет по электронной почте Как искать пользователей на базе широты и долготы в пользователях meta_key и meta_value Как показать или скрыть сообщение на основе выбора meta_value? ограничить доступ к определенным URL-адресам в определенный период времени Как настроить пользовательский аватар для пользователей? add_actions, вызванный функцией functions.php, не возвращает хорошие значения Ошибка входа в список доменов MU все подсайты многозадачной установки WordPress, перенаправить 302, на главный сайт Использование статической домашней страницы и wordpress только как блог Тема html5-reset не отображает изображение По возрастанию и убыванию сообщений на одной странице с инструкцией IF Штрих-код для получения изображения определенного сообщения об идентификаторе Как включить собственный CSS в wordpress tinymce editor? Переписывает иерархические таксономии в постоянной ссылке Плагины отключены и настройки «отключены» после изменения прав доступа к файлам

Шифрование / расшифровка заголовка и данных

Как я могу использовать WordPress для шифрования заголовка сообщения и его деталей до того, как он будет сохранен в базе данных?

Затем, как я могу нажать на WordPress, чтобы расшифровать заголовок сообщения и детали, прежде чем он снова появится на панели администратора (чтобы его можно было прочитать снова)

Solutions Collecting From Web of "Шифрование / расшифровка заголовка и данных"

Чтобы изменить содержимое сообщения до его сохранения, вы можете использовать фильтр wp_insert_post_data .

Я использую в этом примере просто простой / фиктивный способ представления шифрования, я просто заменяю каждый символ соответствующим кодом ascii. Он должен быть заменен вашим методом шифрования.

add_filter( 'wp_insert_post_data' , 'encrypt_post' , 99, 1 ); function encrypt_post( $data ) { // check if it's a post if('post' !== $data['post_type']) { return $data; } // this is just for demonstration purposes (a simple char to ascii code conversion), it should be replaced by your encryption method $title = str_split( $data['post_title'] ); $title = array_map( function($n) { return ord( $n ); }, $title ); $title = implode( ".", $title ); $data['post_title'] = $title; return $data; } 

Затем, чтобы расшифровать заголовок сообщения на странице редактирования, вы можете использовать фильтр title_edit_pre:

 function decrypt_post_title( $title, $post_id ) { if( 'post' !== get_post_type( $post_id ) ) { return $title; } // same dummy ascii code to char conversion $title = explode( '.', $title ); $title = array_map( function($n) { return chr( $n ); }, $title ); $title = implode( "", $title ); return $title; } add_filter( 'title_edit_pre', 'decrypt_post_title', 99, 2 ); 

Чтобы расшифровать другие поля, вам нужно будет проверить другие динамические фильтры * _edit_pre .