作業中のWebアプリにFacebook共有プラグインを使用したいのですが、基本的な共有ボタンのみが必要です。アプリはJavaScriptの読み込みにrequirejsを使用するため、 how-to に従い、facebookのAPI URLをfacebookのコードスニペットにあるものに変更しました docs 。これは機能せず、sdkはエラーinvalid version specified
をスローします。これが私のファイルの見た目です。
main.js
require.config({
shim: {
'facebookshare' : {
exports: 'FB'
}
},
paths: {
'facebookshare': "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.0"
}
});
require(['fb']);
fb.js
define(['facebookshare'], function(facebook) {
document.body.innerHTML += '<div class="fb-share-button" data-href="https://developers.facebook.com/docs/plugins/" data-layout="button"></div>';
});
Requirejsでfacebook共有プラグインのみを含める最良の方法は何ですか?
次の質問に言及しましたが、具体的な解決策はありません。 不明なエラー:バージョンが指定されていません および 誤ったバージョンエラー 。
Facebookが提供する標準の埋め込みコードを使用している場合でも、次のエラーが発生していました。
不明なエラー:指定されたバージョンが無効です sdk.js
最初に確認することは、FB.init
呼び出しにバージョン番号を含めることです。
FB.init({
appId: 'your-app-id',
xfbml: true,
version: 'v2.8'
});
...単純な調整を行い、パスを変更する必要がありました:
From: //connect.facebook.net/en_GB/sdk.js
To: //connect.facebook.net/en_GB/all.js
これによりエラーが修正されました。残念ながら、私には理由がわかりません。 :-(
以下に示すように、version
プロパティにsrc
パラメーターを含めることを検討してください。
js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.8"
Webのようなボタン のデフォルトのテンプレートは不完全です。 [コードを取得]ボタンをクリックすると、Facebookはversion
パラメーターを含む完全なテンプレートを生成します。
マイナーヘッドアップ、私は変更する必要がありました
js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1
&
version=v2.8";
に
js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1
&
version=v2.8";
ファイルをHTTPからHTTPSに変更しているときに、この問題に遭遇しました。その理由は、次のコードに特定の「HTTP:」または「HTTPS:」がないことです。
<div class="fb-comments" data-width="100%" data-href="//amazingjokes.com/image/2017-03-17/A_good_sign_for_St__Patricks_day" data-num-posts="5"
data-colorscheme="light">
</div>
通常、「// domain.com」は現在のスキームをコピーするため、htts://example.comにアクセスすると、「// example2.com」へのリンクは「 https: //example2.com '。 'fb-comments'の場合、data-hrefにHTTPまたはHTTPSを明記する必要があります。
また、facebookによると「 https://example.com 」は「 http://example.com 」とは別のページです。サイトをSSLにアップグレードすると、ソーシャルプラグインのURLをHTTPからHTTPSに変更すると、過去のコメントがすべて失われます...私が選択した解決策は、すべての古い投稿にHTTPを使用し、最近のすべてにHTTPSを使用することでした
Facebook Share Button Configurator !のソースコードにエラーがある(またはあった)ページ。ページでShare Configuratorを使用すると、正常に機能するはずです。ただし、ページに「Webサイトにコード例をコピーして貼り付けてください...」というコード例があります。これは不適切なコードであり、ページにボタンが表示されなくなります。 JavaScriptコンソールには、「エラー:指定されたバージョンが無効です」と表示されます。
この問題に関して、2018年6月にFacebookでチケットを開きました。彼らはそれがコードの問題であることを認め、コード例を修正することを約束しましたが、2018年6月17日の時点で、悪いコードはまだサイトに残っています。
お役に立てれば。