Удалить "Редактировать профиль" из меню админ-панели
Как я могу удалить подменю "Редактировать профиль" под пунктом "my-account-with-avatar" в админ-панели, сохранив при этом аватар и кнопку выхода?

Существует хук remove_menu
для панели меню администратора.
Класс, в который нужно добавить хук — $wp_admin_bar
. Вы можете увидеть функцию удаления здесь и протестировать её, так как документации по ней нет (строка 86). Она должна работать с ID подменю.
http://core.trac.wordpress.org/browser/tags/3.2.1/wp-includes/class-wp-admin-bar.php
Если вы мне не поверили, вот код.........
function ya_do_it_admin_bar_remove() {
global $wp_admin_bar;
/* **edit-profile — это ID** */
$wp_admin_bar->remove_menu('edit-profile');
}
add_action('wp_before_admin_bar_render', 'ya_do_it_admin_bar_remove', 0);

Нет отдельного хука для "редактирования моего профиля". Либо я теряю всё меню аккаунта с выходом, редактированием профиля и аватара (если есть), либо оставляю всё. В итоге, мне пришлось редактировать admin-bar.php

Приведённый выше код использует ID - пункт подменю точно имеет ID. Не взламывайте основные файлы, они перезаписываются при обновлениях, не говоря уже о сотне других причин.

К сожалению, нет никакого индивидуального ID для редактирования моего профиля. Кстати, этот элемент находится в admin-bar.php. Если только вы не нашли что-то другое, что я упустил. Пожалуйста, дайте мне знать.

Я знаю, для чего это нужно, и у него есть ID. Выведите массив меню админ-панели, и вы увидите его. Также вы можете увидеть его в основном файле, на который я ссылался выше: $child = array( 'id' => $id, 'title' => $title, 'href' => $href );

Добавил код в исходное сообщение, так как вы, кажется, мне не верите... но спасибо за минус...

Спасибо за код. Дело не в том, что я вам не верю — я пробовал, и тогда это не сработало. К тому же, у меня не было права ставить минусы, наверное, это кто-то другой. Теперь я вижу плюс, и это не моя заслуга.

Теперь, когда у меня достаточно прав, вот проверка, которую я вам обещал. Спасибо.

Вау! Этот хук работает идеально. Большое спасибо @Wyck. 100% работает на WordPress 3.8.1.

WordPress представил новые элементы (nodes).
Я искал способ полностью удалить "блок учетной записи пользователя" и добавить простую кнопку выхода:
//http://codex.wordpress.org/Function_Reference/get_nodes
//http://codex.wordpress.org/Function_Reference/add_node
add_action( 'admin_bar_menu', 'remove_my_account', 999 );
function remove_my_account( $wp_admin_bar ) {
$wp_admin_bar->remove_node( 'my-account' );
}
add_action( 'admin_bar_menu', 'add_logout', 999 );
function add_logout( $wp_admin_bar ) {
$args = array(
'id' => 'logout', // ID существующего дочернего элемента (New > Post)
'title' => 'Выйти', // изменяем заголовок существующего элемента
'parent' => 'top-secondary', // устанавливаем родителя
);
$wp_admin_bar->add_node( $args );
}

Я не уверен, можно ли это удалить (не проверял), но вы можете добиться того же, используя CSS, чтобы скрыть ссылку "Редактировать профиль". Элемент списка имеет ID 'wp-admin-bar-edit-profile', который можно использовать для его скрытия. Вот HTML-код, используемый в админ-баре:
<li id="wp-admin-bar-edit-profile" class="">
<a href="http://www.example.com/wp-admin/profile.php">Редактировать мой профиль</a>
</li>
Я использую следующий CSS:
#wp-admin-bar-edit-profile { display: none }
Это скрывает ссылку в админ-баре, не затрагивая другие элементы. Добавьте этот фрагмент CSS в файл style.css вашей темы, и ссылка будет скрыта в админ-баре при просмотре сайта. Скрытие её в админ-баре при работе в бэкенде WordPress требует больше усилий и может быть бессмысленным, так как ссылка на профиль также есть в меню слева.
