0 ) echo '
' . implode("
", $error) . '
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í.
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.
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.
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.
Košík je zatím prázdný.
Přejít do obchodu