3

Symfony2.3 + FosUserBundle を使用した HWIOAuthBundle は初めてです。私のプロジェクトでは、facebook、twitter、googleplus のログインにこのバンドルを使用しています。

私はこれを正常にインストールし、これは正常に機能しています。しかし、facebook、twitter、google plus Images を twig ファイルに表示したいので、login.html.twig をオーバーライドしたいのですが、HWIOAuthBundle でこれを行う方法がわかりません。

私のlogin.html.twig

{% block content %}
  {# Bonus: Show all available login link in HWIOAuthBundle #}
  {% render(controller('HWIOAuthBundle:Connect:connect')) %}
{% endblock %}

ベース HWIOAuthBundle login.html.twig

{% extends 'HWIOAuthBundle::layout.html.twig' %}

{% block hwi_oauth_content %}
{% if error %}
    <span>{{ error }}</span>
{% endif %}
{% for owner in hwi_oauth_resource_owners() %}
<a href="{{ hwi_oauth_login_url(owner) }}">{{ owner | trans({}, 'HWIOAuthBundle') }}</a>     <br />
{% endfor %}
{% endblock hwi_oauth_content %}

Htmlページでこのタイプを示しているのはどれですか:

Facebook
Google Plus
Twitter

これは、いずれかをクリックして自分のページ (Facebook、Twitter、Google Plus) にリダイレクトすると、デフォルトで表示されます。

しかし、私はこのタイプの HTML を表示したい:

    <!-- socials -->
       <ul class="top-socials">
           <li><a class="facebook" href="#">Facebook</a></li>
           <li><a class="twitter" href="#">Twitter</a></li>
           <li><a class="google-plus" href="#">Google+</a></li>
       </ul>

これどうやってするの ?

4

2 に答える 2

3

そのための2つの解決策があります:

  1. バンドルの継承を使用し、親パスでテンプレートを調整します
  2. 次のように app/Ressources/ でテンプレートを宣言します: app/Ressources/AcmeBundle/Directory/template.html.twig (/AcmeBundle/Directory/template.html.twigベンダーのテンプレートへの正確なパス)

文書 :

于 2014-01-08T15:06:21.973 に答える