Next.jsでGoogle AnalyticsやYouTube埋め込みを簡単にできる@next/third-partiesの使い方

Next.jsには、人気なサードパーティのライブラリーをパフォーマンスに配慮しながら簡単に使える公式パッケージ@next/third-partiesが用意されています。
この記事では、@next/third-partiesの使い方を解説します。
目次
@next/third-partiesをインストールする
まずは、@next/third-partiesをインストールします。
@next/third-partiesは活発に開発中の実験的なパッケージなので、@latestまたは@canaryフラグを付けてインストールすることが推奨されています。
npm install @next/third-parties@latestGoogle Analyticsを使う
すべてのWebページでGoogle Analyticsを使う場合は、Root Layoutで<GoogleAnalytics />コンポーネントを読み込みます。
gaIdには、Google AnalyticsのIDを設定します。
import { GoogleAnalytics } from "@next/third-parties/google";
export default function RootLayout({ children }: { children: React.ReactNode }) { return ( <html lang="ja"> <GoogleAnalytics gaId="G-XYZ" /> <body>{children}</body> </html> );}また、必要に応じてGoogle Analyticsのイベントを手動で送信することもできます。
<GoogleAnalytics />コンポーネントはサーバーコンポーネントで利用できますが、sendGAEvent()はクライアントコンポーネントで使用する必要があります。
"use client";
import { sendGAEvent } from "@next/third-parties/google";
export function ShareButton() { return ( <button onClick={() => sendGAEvent("event", "shareButtonClicked", { value: "hoge" })}>共有する</button> );}YouTubeを埋め込む
@next/third-partiesには、YouTube動画を埋め込めるコンポーネントも用意されています。
内部ではLite YouTube Embedを使っており、パフォーマンスに配慮してYouTubeを埋め込めます。
videoidには、埋め込みたい動画のIDを指定します。そのほか、paramsにパラメーターを指定することで、再生位置などの指定もできます。
import { YouTubeEmbed } from "@next/third-parties/google";
export default function Page() { return <YouTubeEmbed videoid="jNQXAC9IVRw" />;}そのほかの機能
@next/third-partiesには、Google AnalyticsやYouTubeの埋め込みのほか、Google Tag Manager(GTM)やGoogleマップの埋め込みのサポートも含まれています。
詳しくは、公式ドキュメントを参照してください。
参考リンク
記事をシェア
フォローして最新情報を入手
Googleの優先ソースに追加すると、このサイトの記事をGoogleで見つけやすくなります。また、ぜひXやRSSフィードもフォローしてください。
次の記事
-1.png&w=1080&q=75)
生まれた時から、母国語よりも先にJavaScriptを使っていました。ネットの海のどこにもいなくてどこにでもいます。
Webフロントエンドプログラマーとして、TypeScriptを用いたWebアプリやブラウザー拡張機能を制作。Xのシャドウバン検知ツール「Shadowban Scanner」やリンクカード復活ツール「Restore Link Card」を公開し、国内外のメディアで紹介されました。iGEM 2023ではJapan-UnitedチームのWikiを制作してGrand Prizeの獲得に貢献。ブログではXやSNSの最新ニュース、不具合の検証と対処法、フロントエンド開発の知見を発信しています。










![[新しいXチャットへようこそ]というテキストが画面に大きく表示されており、その下には次の3つの説明が表示されている。[エンドツーエンドの暗号化:メッセージは、端末にかかわらずエンドツーエンドで暗号化されています。][最先端のプライバシー:Xを含め、他の人がメッセージを読むことはできません。][パスコードを設定:メッセージを保護するため、4桁のパスコードを設定してください。]これらの説明の下には、[パスコードを作成]という大きなボタンが配置されている](/_next/image/?url=%2Fapi%2Fmedia%2Ffile%2Fwelcome-to-new-chat.png&w=1920&q=75)

