0

Django Zinniaをインストールしました。Edit Entry Admin Pageで、Facebook HTML Like ButtonコードをEntryに貼り付けても表示されません。

ここからソース コードを取得しています: https://developers.facebook.com/docs/reference/plugins/like/

これをエントリに貼り付けます:

<div class="fb-like" data-href="http://developers.facebook.com/docs/reference/plugins/like" data-width="450" data-show-faces="false" data-send="false"></div>

ただし、それをEntryに貼り付けると、最終的には次のようになります。

エントリーのスクリーンショット

エントリーを保存してブログを見てみると、いいねボタンがありません。要素を検査すると、次のようになります。

<div class="fb-like fb_edge_widget_with_comment fb_iframe_widget" fb-xfbml-state="rendered">
    <span style="height: 0px; width: 0px;">
        <iframe id="f2bdd2133" name="f1df56cf" scrolling="no" title="Like this content on Facebook." class="fb_ltr" src="http://www.facebook.com/plugins/like.php?api_key=&amp;channel_url=http%3A%2F%2Fstatic.ak.facebook.com%2Fconnect%2Fxd_arbiter.php%3Fversion%3D27%23cb%3Df2f816705c%26domain%3Dlocalhost%26origin%3Dhttp%253A%252F%252Flocalhost%253A8000%252Ff273626188%26relation%3Dparent.parent&amp;colorscheme=light&amp;extended_social_context=false&amp;href=http%3A%2F%2Flocalhost%3A8000%2Fblog%2F2013%2F09%2F19%2Ftest%2F&amp;layout=standard&amp;locale=en_US&amp;node_type=link&amp;sdk=joey&amp;show_faces=true&amp;width=450" style="border: none; overflow: hidden; height: 0px; width: 0px;">
        </iframe>
    </span>
</div>

Entry Admin Pageで再びEntryを編集しようとすると、Facebook コードが消えてしまいました。

ここに画像の説明を入力

私のページには JS SDK コードがあります。

ここで何が起こっているのですか? Facebook のいいね! ボタンを表示するにはどうすればよいですか?

4

2 に答える 2

0

質問はかなり古いですが、解決策を共有する必要があると思います。それがあなたにとって役に立たなくても、他の誰かがそれに出くわすかもしれません。

ジニアのエントリ管理者にも同様の問題がありました。問題は wymeditor にありました。zinnia で使用されているリリースでは、エントリに iframe を追加できませんでした。

私が思いついた解決策は次のとおりです。

  1. wymeditor プラグイン (ここで説明されているプラ​​グイン wymeditor は挿入された iframe を保存できません) を staticfiles ディレクトリに配置します。
  2. 次のように、コードのどこかで zinnia EntryAdmin をオーバーライドします。
    class CustomZinniaEntryAdmin(EntryAdmin):
        def _custom_media(self):
            _base_media = super(CustomZinniaEntryAdmin, self)._media()
            return _base_media + forms.Media(
                js=('/your/static/path/jquery.wymeditor.embed.js',)
            )
        media = property(_custom_media)
    admin.site.unregister(Entry)
    admin.site.register(Entry, CustomZinniaEntryAdmin)

そして、それはうまくいくはずです。

于 2016-03-31T14:21:49.603 に答える