Saltar al contenido

Drupal: obtenga el nombre de usuario en la plantilla de ramitas de usuario personalizada

Solución:

El nombre para mostrar no es un campo que pueda configurar en {{ content }}. Puede obtenerlo directamente de la entidad de usuario:

{{ user.displayname }}

Referencia para el método php: AccountInterface :: getDisplayName

{{ user.name.0.value }}

debería darte lo que quieres.

La forma preferida es inyectar el nombre de usuario como una variable en una función de preproceso. Para hacerlo, modifíquelo en el archivo .theme de su tema.

<?php

/**
 * Implements hook_preprocess_user().
 */
function yourtheme_preprocess_user(&$variables) {
  /** @var User $account */
  $account = $variables['elements']['#user'];

  $variables['username'] = $account->getDisplayName();
}

luego, en su plantilla de usuario, puede usar eso como {{ username }}.

Editar:

Para obtener la URL completa:

  • En tu plantilla {{ path('entity.user.canonical', {'user': user.id}, {}) }}
  • En yourtheme_preprocess_user (): $variables['user_url'] = Url::fromRoute('entity.user.canonical', ['user' => $account->id()])->setAbsolute()->toString();
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *