Lesefortschritt:

    Userprofil-Special – Trick #2: Zusätzliche Felder zum Userprofil hinzufügen

    13. Juni 2026 | functions.php, Word­Press

    Trick # 581 | Dieser Beitrag beinhaltet 761 Wörter. – Geschätzte Lesezeit: ca. 4 Minuten.

    Die Userprofile in Word­Press beinhalten gerade mal die nötigsten Angaben: Name, Mail, gewünschter Username und nur wenig mehr. Die Felder lassen sich aber ergänzen. Etwa mit der Postadresse, der Telefonnummer oder mit dem Geschlecht. Geht ganz einfach.

    Der folgende Code wird in die Datei functions.php Ihres Word­Press-Themes eingefügt. Diese Datei können Sie im Backend unter Design/Theme-Datei-Editor bearbeiten:

    // Zusätzliche Benutzerfelder: Geschlecht, Adresse, PLZ, Wohnort und Telefonnummer
    // Felder zum Benutzerprofil hinzufügen
    function add_custom_user_fields($user) {
    if (!current_user_can('edit_user', $user->ID)) {
    return;
    }$gender = get_user_meta($user->ID, 'gender', true);
    $street = get_user_meta($user->ID, 'street', true);
    $postal_code = get_user_meta($user->ID, 'postal_code', true);
    $city = get_user_meta($user->ID, 'city', true);
    $phone = get_user_meta($user->ID, 'phone', true);
    ?>
    <h3>Zusätzliche Informationen</h3>
    <table class="form-table">
    <tr>
    <th><label for="gender">Geschlecht</label></th>
    <td>
    <select name="gender" id="gender">
    <option value="" <?php selected($gender, ''); ?>>Bitte auswählen</option>
    <option value="male" <?php selected($gender, 'male'); ?>>nännlich</option>
    <option value="female" <?php selected($gender, 'female'); ?>>weiblich</option>
    <option value="other" <?php selected($gender, 'other'); ?>>divers</option>
    </select>
    <br>
    <span class="description">Wählen Sie das Geschlecht aus.</span>
    </td>
    </tr>
    <tr>
    <th><label for="street">Strasse</label></th>
    <td>
    <input type="text" name="street" id="street" value="<?php echo esc_attr($street); ?>" class="regular-text" />
    <br>
    <span class="description">Geben Sie die Strasse ein.</span>
    </td>
    </tr>
    <tr>
    <th><label for="postal_code">Postleitzahl</label></th>
    <td>
    <input type="text" name="postal_code" id="postal_code" value="<?php echo esc_attr($postal_code); ?>" class="regular-text" />
    <br>
    <span class="description">Geben Sie die Postleitzahl ein.</span>
    </td>
    </tr>
    <tr>
    <th><label for="city">Wohnort</label></th>
    <td>
    <input type="text" name="city" id="city" value="<?php echo esc_attr($city); ?>" class="regular-text" />
    <br>
    <span class="description">Geben Sie den Wohnort ein.</span>
    </td>
    </tr>
    <tr>
    <th><label for="phone">Telefon</label></th>
    <td>
    <input type="text" name="phone" id="phone" value="<?php echo esc_attr($phone); ?>" class="regular-text" />
    <br>
    <span class="description">Geben Sie die Telefonnummer ein.</span>
    </td>
    </tr>
    </table>
    <?php
    }
    add_action('show_user_profile', 'add_custom_user_fields');
    add_action('edit_user_profile', 'add_custom_user_fields');// Felder speichern
    function save_custom_user_fields($user_id) {
    if (!current_user_can('edit_user', $user_id)) {
    return;
    }if (isset($_POST['gender'])) {
    update_user_meta($user_id, 'gender', sanitize_text_field($_POST['gender']));
    }
    if (isset($_POST['street'])) {
    update_user_meta($user_id, 'street', sanitize_text_field($_POST['street']));
    }
    if (isset($_POST['postal_code'])) {
    update_user_meta($user_id, 'postal_code', sanitize_text_field($_POST['postal_code']));
    }
    if (isset($_POST['city'])) {
    update_user_meta($user_id, 'city', sanitize_text_field($_POST['city']));
    }
    if (isset($_POST['phone'])) {
    update_user_meta($user_id, 'phone', sanitize_text_field($_POST['phone']));
    }
    }
    add_action('personal_options_update', 'save_custom_user_fields');
    add_action('edit_user_profile_update', 'save_custom_user_fields');

    Nun sehen Sie in den Userprofilen ganz unten die neuen Felder angezeigt. Die dort eingegebenen Daten werden in die User-Tabelle Ihrer Word­Press-Datenbank gespeichert.

    Werbung

    Word­Press-Sitemap deaktivieren

    Seit der Version 5.5 bietet Word­Press (endlich) die Funktion einer eingebauten Sitemap an, mit welcher Google & Co. über Änderungen und neue Beiträge auf dem Laufenden gehalten werden. Deren Funktionen sind jedoch etwas eingeschränkt und viele ...
    Keine Inhalte gefunden.

    Werbung

     

    Pin It on Pinterest

    Share This