Autonomía digital y tecnológica

Código e ideas para una internet distribuida

Cómo añadir campos extra al perfil de un usuario en WordPress

Imago voragine.net

Añadir campos al perfil de los usuarios de nuestra página funcionando bajo WordPress, y así conseguir personalizarlos es sencillo. Únicamente tenemos que añadir algo de código al archivo functions.php del tema que estemos usando: por un lado el código que añadirá las cajas a la página de edición del perfil en el administrador de WorPress; por otro, la acción que creará y actualizará ese registro en la base de datos.

En el siguiente ejemplo añadiremos un campo para que el usuario pueda incluir su cuenta de twitter.

// extra fields in user profile
add_action( 'show_user_profile', 'extra_user_profile_fields' );
add_action( 'edit_user_profile', 'extra_user_profile_fields' );

function extra_user_profile_fields( $user ) { ? >

 

</pre>
<h3>Extra profile information</h3>
<table class="form-table">
<tbody>
<tr>
<th><label for="twitter">Twitter</label></th>
<td><input id="twitter" class="regular-text" type="text" name="twitter" value="<?php echo esc_attr( get_the_author_meta( 'twitter', $user->ID ) ); ?>" /></td>
</tr>
</tbody>
</table>
<pre>

 

< ?php
add_action( 'personal_options_update', 'save_extra_user_profile_fields' );
add_action( 'edit_user_profile_update', 'save_extra_user_profile_fields' );

function save_extra_user_profile_fields( $user_id ) {

if ( !current_user_can( 'edit_user', $user_id ) ) { return false; }
update_user_meta( $user_id, 'twitter', $_POST['twitter'] );
}

El código está dividido en tres cajas debido a que el plugin que uso para mostrar el código no trata muy bien código PHP y HTML mezclado, pero todo va dentro del functions.php. También es necesario borrar el espacio entre el signo de interrogación y el signo de mayor que o menor que, que he incluido en el cierre y la apertura de código PHP igualmente para que el plugin no se queje.

Para obtener estos valores del perfil del usuario en nuestro tema podemos usar la función get_user_data, por ejemplo.

1 comentario

Dejar un comentario

*
*

 

Un trackback

  • Registro de usuarios en WordPress sin plugin mediante formulario: código mejorado | Autonomía digital y tecnológica

    […] Hace tiempo publicábamos cómo crear un formulario de registro de usuarios en WordPress, para permitir que nuevos usuarios se den de alta en nuestra web sin necesidad de pasar por el gestor. Publicamos ahora el código mejorado, más organizado y con alguna funcionalidad extra: se incluye el código para notificar por correo al administrador de la página el registro del nuevo usuario, y el envío también por correo de los datos de inicio de sesión al usuario. También se incluye la manera de rellenar campos personalizados del perfil, que hemos tenido que crear previamente. […]