Jak umožnit úpravu uživatelských informací bez přístupu do administrace WordPressu

Pustit uživatele do administrační části WordPressu je vždy riziko a osobně to nedoporučuji dělat. Někdy však chcete, například když používáte poradnu, aby si uživatel mohl spravovat svůj uživatelský účet. Především změna hesla se hodí v těch případech, kdy se při registraci uživatele automaticky generuje heslo.

Ideálním řešením je vytvořit speciální šablonu stránky, kde umožníte úpravu uživatelských informací.

Tvorba šablony stránky pro úpravu uživatelských informací

Začněte tím, že běžte do aktuální šablony a udělejte si kopii souboru page.php.

Nový soubor pojmenujte template-uzivatel.php.

Na samotný začátek souboru vložte následující kód:

 $current_user->ID, 'user_pass' => esc_attr( $_POST['pass1'] ) ) );
        else
            $error[] = __('Hesla nejsou shodná, nedošlo k aktualizaci.', 'profile');
    }

    /* Aktualizuje uživatelksé informace. */
    if ( !empty( $_POST['url'] ) )
        wp_update_user( array( 'ID' => $current_user->ID, 'user_url' => esc_url( $_POST['url'] ) ) );
    if ( !empty( $_POST['email'] ) ){
        if (!is_email(esc_attr( $_POST['email'] )))
            $error[] = __('E-mail není validní, prosím zadejte jej znovu.', 'profile');
        elseif(email_exists(esc_attr( $_POST['email'] )) != $current_user->id )
            $error[] = __('Tento e-mail je již používaný. Vyberte prosím jiný.', 'profile');
        else{
            wp_update_user( array ('ID' => $current_user->ID, 'user_email' => esc_attr( $_POST['email'] )));
        }
    }

    if ( !empty( $_POST['first-name'] ) )
        update_user_meta( $current_user->ID, 'first_name', esc_attr( $_POST['first-name'] ) );
    if ( !empty( $_POST['last-name'] ) )
        update_user_meta($current_user->ID, 'last_name', esc_attr( $_POST['last-name'] ) );
    if ( !empty( $_POST['description'] ) )
        update_user_meta( $current_user->ID, 'description', esc_attr( $_POST['description'] ) );

    /* Přesměrování a načtení aktuálního obsahuje.*/
    if ( count($error) == 0 ) {
        //action hook for plugins and extra fields saving
        do_action('edit_user_profile_update', $current_user->ID);
        wp_redirect( get_permalink() );
        exit;
    }
}
?>

Poté najděte v souboru WordPress loop a nahraďte ji následujícím kódem:


    

0 ) echo '

' . implode("
", $error) . '

'; ?>

Například WordPress loop z šablony Twenty Fifteen vypadá takto:


Soubor uložte a nezapomeňte jej nahrát do základní složky šablony na hostingu.

Nyní se přihlašte jako administrátor do WordPressu a vytvořte novou stránku. V boxu Vlastnosti stránky vyberte šablonu Úprava uživatele.

Tvorba stránky
Tvorba stránky

Nyní stačí jen stránku publikovat a je hotovo.

Jak úprava uživatele vypadá ve výchozí šabloně Twenty Fifteen se můžete podívat na obrázku. Pokud chcete můžete ještě doladit vzhled formuláře pomocí style.css.

Upravit uživatele Twenty Fifteen
Upravit uživatele Twenty Fifteen

Alternativou může být využití některých z níže uvedených pluginů:

Stránku pro úpravu uživatelských informací poté vytvoříte jako běžnou stránku, ale do obsahu vložíte shortcode, který je propojí s pluginem. Jméno shortcodu vždy záleží na zvoleném pluginu a jeho znění najdete v dokumentaci pluginudo.

Tyto pluginy bych doporučil použít v případě, že kromě úpravy informací chcete také na stránky vyvést například přihlašovací formulář nebo tvorbu příspěvku.

Správa WordPress webu

Nemusíte na to být sami. Pomůžeme vám s pravidelnou údržbou i novými vylepšeními.

Více informací

Diskuze

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Nákupní košík

Neuteklo vám něco?

Pokrok a WordPress na nikoho nečekají, tak nám tu raději nechte e-mail, ať o nic nepřijdete!

Zkontrolujte svoji doručenou poštu nebo spam koš, abyste mohli svůj e-mail potvrdit.

Vylaďte WordPress stránky s naším tahákem

V e-booku najdete informace a rady pro WordPress od A do Z. Zadejte e-mail a my vám WordPress tahák pošleme.

Zkontrolujte svoji doručenou poštu nebo spam koš, abyste mohli svůj e-mail potvrdit.

Přejít nahoru