ページヘッダーの先頭にスクリプトを追加する方法

既存のCookie同意ソリューション(consentmanager.net提供)用のスクリプトを追加する必要があります。

これは、ページヘッダーの最初の全体要素として配置する必要があります。
管理ツールのHEAD、HEADER、AFTER HEAD、BODYのさまざまなオプションを試しましたが、どれも機能しませんでした。

HEADに配置すると、スクリプトはヘッダーアイテムの真ん中、多くのディスコーススクリプトやその他のものの下に公開されます。Cookieの設定が何であっても、他のカスタムコンテンツ(ここではFont Awesomeアイコン)をブロックしますが、それだけです。

HEADERに配置すると、まったく機能しません。

AFTER HEADに配置すると、レンダリングされたソースコードでスクリプトを見つけることさえできません。

BODYに配置すると(この場所には別のスクリプトがあります)、ページの下部に非常に遅れて公開されます。しかし、ヘッダーにスクリプトを追加できない場合は、ボディの最初に配置する必要があります。

したがって、私の小さなスクリプトの実装はまったく成功していません。
headセクションの先頭にスクリプトを追加する機会があるかどうか、誰か教えていただけますか?

前もって感謝します!

「いいね!」 2

こんにちは @SchweizerSchoggi さん。サイトにconsentmanager.netのCookie同意バナーを追加してテストしたところ、「Semi-automatic blocking」タブのスクリプトを使用した場合、正常に動作しました。

別のコードを使用すると、サイト全体がブロックされてしまいます。カスタムJavaScriptを使用してスクリプトを挿入することで解決できるかもしれませんが、他のコードスニペットを使用する方が簡単です。

「いいね!」 2

@cocococosti ありがとうございます。
はい、半自動ブロック スクリプトは選択肢になり得ますが、Discourse 管理ツールのどこに配置すればよいでしょうか?

セクションに挿入しようとしました。
カスタマイズ => テーマ => CSS/HTML の編集 => Body

しかし、その場合挿入が遅すぎます。body タグの直後に統合されるべきですが、実際には body タグが閉じる直前に挿入されています。

Headで行う必要があります: カスタマイズ => テーマ => CSS/HTMLの編集 => Head

または、スクリプトを使用してテーマコンポーネントを作成し(Headに追加するプロセスは同じです)、テーマに追加します: Beginner's guide to using Discourse Themes

HEADセクションでは機能しません。どちらのセクションも機能していないようです。スクリプトはHEADまたはBODYのいずれかに統合されるのが遅すぎます:frowning:

@SchweizerSchoggi ホストされているお客様ですので、ご希望であれば、お客様のサイトにログインして確認することができます。スクリプトコードをプライベートメッセージで送っていただけますでしょうか?

「いいね!」 1

クッキー同意スクリプトをテーマに追加した後、ブラウザのコンソールを確認したところ、コンテンツセキュリティポリシーによりCookie同意マネージャーの複数のスクリプトがブロックされていることがわかりました。それらをcontent security policy script srcサイト設定に追加したところ、Cookie同意バナーが正しく表示されるようになりました。

「いいね!」 4

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.