Как добавить кнопки редактора к полю Биография в профиле пользователя

Если вы предоставили возможность пользователям писать о себе в профиле, используя разметку HTML, то следующим логичным шагом будет добавление кнопок визуального редактора к полю Биография.
Откройте файл functions.php и добавьте в него следующий код:
function biographical_info_tinymce() { if ( basename($_SERVER['PHP_SELF']) == 'profile.php' || basename($_SERVER['PHP_SELF']) == 'user-edit.php' && function_exists('wp_tiny_mce') ) { wp_admin_css(); wp_enqueue_script('utils'); wp_enqueue_script('editor'); do_action('admin_print_scripts'); do_action("admin_print_styles-post-php"); do_action('admin_print_styles'); remove_all_filters('mce_external_plugins'); add_filter( 'teeny_mce_before_init', create_function( '$a', ' $a["theme"] = "advanced"; $a["skin"] = "wp_theme"; $a["height"] = "300"; $a["width"] = "480"; $a["onpageload"] = ""; $a["mode"] = "exact"; $a["elements"] = "description"; $a["theme_advanced_buttons1"] = "formatselect, bold, italic, pastetext, pasteword, bullist, numlist, link, unlink, outdent, indent, charmap, removeformat, spellchecker, fullscreen, wp_help"; $a["theme_advanced_blockformats"] = "p,h2,h3,h4,h5,h6"; $a["theme_advanced_disable"] = "strikethrough,underline,forecolor,justifyfull"; return $a;' ) ); wp_tiny_mce( true ); } } add_action('admin_head', 'biographical_info_tinymce');
Этот код добавляет к полю Биография такие же привычные кнопки, как и в обычном редакторе постов. Теперь вы можете не только использовать HTML-разметку в информации профиля о себе, но и видеть визуальные изменения редактируемого текста.
Я уже писал о том, как разрешить использование разметки HTML при оформлении описаний категорий, тегов, при заполнении информации о пользователе в профиле. Для этого нужно добавить в файл functions.php следующий код:
$filters = array('pre_term_description', 'pre_link_description', 'pre_link_notes', 'pre_user_description'); foreach ( $filters as $filter ) { remove_filter($filter, 'wp_filter_kses'); } foreach ( array( 'term_description' ) as $filter ) { remove_filter( $filter, 'wp_kses_data' ); }
Пользуйтесь!
