Chciałbym usunąć lub ukryć pole wprowadzania Biografia na stronie profilu. Jak Ty to robisz? Usunąłem już niektóre metody kontaktu z tej strony, ale nie jestem pewien, jak pozbyć się biografii.
14
Nie ma dedykowanego haka - zarządzanie użytkownikami ma niski priorytet w WordPress. Musisz użyć buforowania wyjściowego (tak, to nie jest miłe).
Oto prosta demonstracja, w jaki sposób można to zrobić:
add_action( 'personal_options', array ( 'T5_Hide_Profile_Bio_Box', 'start' ) );
/**
* Captures the part with the biobox in an output buffer and removes it.
*
* @author Thomas Scholz, <[email protected]>
*
*/
class T5_Hide_Profile_Bio_Box
{
/**
* Called on 'personal_options'.
*
* @return void
*/
public static function start()
{
$action = ( IS_PROFILE_PAGE ? 'show' : 'edit' ) . '_user_profile';
add_action( $action, array ( __CLASS__, 'stop' ) );
ob_start();
}
/**
* Strips the bio box from the buffered content.
*
* @return void
*/
public static function stop()
{
$html = ob_get_contents();
ob_end_clean();
// remove the headline
$headline = __( IS_PROFILE_PAGE ? 'About Yourself' : 'About the user' );
$html = str_replace( '<h2>' . $headline . '</h2>', '', $html );
// remove the table row
$html = preg_replace( '~<tr>\s*<th><label for="description".*</tr>~imsUu', '', $html );
print $html;
}
}
Możesz pobrać kod jako samodzielną wtyczkę: Wtyczka Usuń Bio Box .
Pola hasła znajdują się teraz w obszarze Informacje kontaktowe … jeśli Ci się nie podoba, dodaj nagłówek w stop()
- i zadbaj o I18n. ;)
IS_PROFILE_PAGE
stałej :)<h3>
jest<h2>
teraz. Naprawiłem kod.Od ostatniej zmiany klasy działa to:
źródło
$headline = __( IS_PROFILE_PAGE ? 'About Yourself' : 'About the user' )
w to$headline = ( IS_PROFILE_PAGE ? __('About Yourself') : __('About the user' ));
<h2>
taguOpierając się na poprzednich odpowiedziach, oto, czego używam do usuwania części strony użytkownika, których nie chcę:
Nadal jest zależny od struktury HTML, ale działa dla mnie.
źródło
Najprostszym i najlżejszym rozwiązaniem jest użycie CSS, aby ukryć go przed widokiem.
źródło
Dodanie poniższego kodu do pliku functions.php spowoduje usunięcie sekcji biografii dla wszystkich języków witryny wielojęzycznej:
źródło