Ich muss einige Profilfelder gemäß den Benutzerrollen von der Seite "Profil" entfernen. Zum Entfernen des Farbwählers habe ich verwendet remove_action("admin_color_scheme_picker", "admin_color_scheme_picker")
. Ich möchte diese Felder entfernen:
- Spitzname
- Name öffentlich anzeigen als
- AIM-, Yahoo-, Google Talk- und About yourself-Felder
- Der Bereich "Show Admin Bar" mit den beiden Kontrollkästchen
Ich habe die Datei 'user-edit.php' durchgesehen, um zu sehen, ob es Aktionen / Filter gibt, mit denen ich das machen kann, aber es scheint, als gäbe es keine. Kann mir jemand sagen, wie das geht? Jede Hilfe wäre dankbar. Vielen Dank
EDIT: Danke @helenhousandi für die Antwort. Ich hatte es aber schon so gemacht.
<?php
add_action('admin_footer-profile.php', 'remove_profile_fields');
function remove_profile_fields()
{
if(current_user_can('custom_role'))
{ ?>
<script type="text/javascript">
jQuery("h3:contains('Personal Options')").next('.form-table').remove();
jQuery("h3:contains('Personal Options')").remove();
jQuery("h3:contains('About Yourself')").next('.form-table').remove();
jQuery("h3:contains('About Yourself')").remove();
</script>
<?php }
}
?>
Ich weiß, das ist etwas länger, aber es hat funktioniert! Ich denke, ich werde mit @ helenhousandis Antwort gehen.
functions.php
oder eine Plugin-Datei gehen. Solange die Haken stimmen, funktioniert es an beiden Stellen.