2017-02-28 4 views
1

ブロガーのブログにFacebookのコメントプラグインを追加しました。デスクトップとモバイルデバイスで同じURLを扱っている点が異なります。私が使用するコードでは、expr:href = 'data:post.url'があり、ページの現在のURLを特定するのに役立ちます。問題は、ユーザーがデスクトップブラウザを使用している場合、リンクはexample.blogspot.com/post1.htmlのようになりますが、携帯端末のリンクはexample.blogspot.com/post1.html?mのようになります= 1ここで、ユーザーがモバイルブラウザー上にいることを識別するためにm = 1が追加されます。問題が出てくる。 Facebookのコメントプラグインは、ページの最後にわずかな違いがあるため(m = 1)、別のページと同じページを扱っています。その結果、モバイルユーザはデスクトップブラウザから作成されたコメントを見ることができず、その逆もありません。デスクトップブラウザでm = 1を手動で追加するとコメントが表示されます。ブログのモバイル版はオフになっています。これを修正するには?Facebookのコメントプラグインで別のページと同じように扱う

一つの関連する質問ではない、同じ問題かかわら:Facebook comments plugin - same comments on every page

答えて

1

使用

expr:href='data:post.canonicalUrl' 

代わりの

expr:href='data:post.url' 

data:post.canonicalUrlを使用する利点は、URLが常にあなたがあるかどうかを同じままということですそれをデスクトップまたはモバイルで使用します。また、常に変更されたccTLDの影響を受けないURLのblogspot.comバージョン(カスタムドメインを使用していない場合)を返します

+0

残念ながら、それは機能しません。それでも私はデスクトップ上のモバイルデバイスからのコメントを見ることができず、その逆もありません。 ?m = 1がある場合、モバイルデバイスからのすべてのコメントが表示されます。助けてくれてありがとう。忘れて、私はカスタムドメインを使用しています – Mattt

+0

これは今後作成する新しい投稿にはうまくいくはずです。それらのコメントは、開かれているモバイル版またはデスクトップ版に関係なく、タイプ「yourdomain.com/YYYY/MM/post-title.html」のURLにのみリンクします。古い投稿の場合、異なるURLにリンクされているコメントを移行する方法はありません。 FacebookのリンクがURLにコメントする際に、モバイル版やその他のバージョンにリンクされたコメントを表示する場合(URLに?m = 0がある場合など)、古い投稿のFacebookのコメントボックスを複数表示する必要があり、 http://stackoverflow.com/q/17570850/933980 –

+1

ありがとうたくさんのPrayag。それは働いている。私はいくつかのウェブサイトから古いコードを使用していましたが、今はfacebookの開発者ページの最近のコードを使っていましたが、expr:href = 'data:post.url'の代わりにexpr:href = 'data:post.canonicalUrl'私はそれを正しく見ることができます。 btw、私は古いコメントはありませんし、それは問題ではありません。主なものに実装する前に予備のブログでテストしてください。もう一度、ありがとう。 – Mattt

関連する問題