Drupal 8の例:名:)でユーザー用にいくつかのフィールドを作成しました。それをホームページ(page.html.twig)に印刷しようとしていますが、私は次のことを試しました:
{{ user.field_first_name.0['#context']['value'] }}
{{ user.field_first_name.0.value }}
{{ user.field_first_name }}
Mytheme.themeに前処理関数を追加してみましたが、それでも機能しませんでした。
以下が機能することに注意してください
{{ user.displayname }}
与えられた助けに感謝し、
ありがとう
ページテンプレートにユーザーフィールドを印刷するには、Viewsブロックを作成し、既存の領域に配置します。
よくても、まず https://example.com/admin/structure/display-modes/view の下にUserの新しいビューモードを追加し、次にon https://example.com/admin/config/people/accounts/display 新しく作成したビューモードを選択し、表示するフィールドを配置します。
次に、ビューを作成し、表示Usersし、右下[〜#〜] advanced [〜#〜]に表示させます。ユーザーIDのコンテキストフィルターを追加します。 デフォルト値を提供を選択し、ログインしたユーザーからユーザーIDを選択して保存します。次に、左端のフォーマット>表示>ユーザーで、以前に作成した表示モードを選択します。
ページテンプレートにユーザー値を印刷しません。
page.html.twig
は印刷領域です。page.html.twig
はユーザーロールごとにキャッシュされます。同じロールを持つ次のユーザーは、別のユーザーの最初にキャッシュされた値が表示されます。