ホームページ ウェブフロントエンド CSSチュートリアル 概念APIで電子メールのサインアップを収集します

概念APIで電子メールのサインアップを収集します

Mar 19, 2025 am 10:12 AM

このチュートリアルでは、Jamstackアーキテクチャを使用してニュースレターのサインアップシステムを構築し、Netlify機能、概念API、Mailgunを統合します。メールサブスクライバーを直接収集する方法を調べてみましょう。

概念APIで電子メールのサインアップを収集します

今日、多くの個人がニュースレターを作成し、Subrcack、MailChimp、Revue(Twitter)、さらにはFacebookなどのサービスを活用しています。その他は、MailPoetなどの自己管理WordPressソリューションを選択します。このチュートリアルでは、HTMLフォーム、サーバーレス機能、データベースを使用して電子メールアドレスを収集するためのカスタムシステムです。この方法は、多くの既存のプラットフォームに関連するコストを回避します。

このチュートリアルは、netlify関数、概念データベース、およびmailgunを使用してシステムを構築します(ただし、API対応の電子メールサービスは置き換えられる可能性があります)。すべてのサービスには無料の層があります(制限付き)。完全なコードはGitHubで利用できます。

概念:データベースソリューション

概念はデータベースとして機能します。これは、メモを取る、プロジェクト管理などのための多用途のワークスペースです。ユーザーフレンドリーなインターフェイスからアクセスできるデータベース機能は、メールサブスクリプションを保存するのに最適です。 「ニュースレターメール」と呼ばれるテーブル(データベース)を作成し、シンプルな「電子メール」列と概念の組み込み「作成された時間」プロパティを使用します。

概念APIトークンと統合

概念データベースに接続するには、概念統合を作成します(概念アカウント内ではなく、ログイン中の概念Webサイトで)。 「ニュースレターのサインアップ」に名前を付けて、内部統合トークン(APIトークン)を取得します。重要なことに、「ニュースレターメール」データベースをこの統合と共有して、アクセスを付与します。

NetLify関数:サーバーレス電源

Netlify関数は、サーバーレスAPIエンドポイントを提供します。 Netlifyフォームを使用できますが、無料ティアは1か月あたり100までの提出を制限します。ただし、Netlify関数は、はるかに高い呼び出し限界(無料プランで月額125,000)を提供し、より多くの電子メールサインアップを処理するのに適しています。

Netlifyプロジェクトのセットアップ

Netlify CLI( npm install netlify-cli -g )をインストールし、プロジェクトディレクトリを作成し、NPM( npm init )を初期化し、NetLifyで認証します。 functionsディレクトリ( functions = "functions" )を指定するには、 netlify.tomlファイルが必要です。

netlify関数(index.js)

この関数は、フォームの送信を処理します。 @notionhq/clientパッケージ( npm install @notionhq/client --save )をインストールします。 notion APIトークン( NOTION_API_TOKEN )とデータベースID( NOTION_DATABASE_ID )を使用して.envファイルを作成します。データベースIDは、データベースの概念URLにあります。

index.js関数は、電子メールアドレスを検証し、概念APIを使用してデータベースにメールを追加し、成功またはエラー応答を返します。

HTMLフォーム(index.html)

電子メール入力と送信ボタンを備えた単純なHTMLフォームが作成されます。 JavaScriptコードは電子メールを検証し、Netlify関数( /.netlify/functions/index )にpostリクエストを送信します。ブートストラップ5はスタイリングに使用されます。

Mailgun Integration(welcome.js)

確認メールを送信するには、MailGun(または同様のサービス)を統合します。 MailGunダッシュボードからMailGun APIキーとドメインを取得し、 MAILGUN_API_KEYおよびMAILGUN_DOMAINとして.envファイルに追加します。

mailgun-jsパッケージ( npm install mailgun-js --save )をインストールします。 welcome.js Netlify関数を作成して、概念から新しいサインアップを取得し(過去30分以内)、Mailgun APIを使用して確認メールを送信します。

テストと次のステップ

フォームをテストし、データベースエントリを確認し、郵便配達員のようなツールを使用してwelcome関数に投稿リクエストを送信します。確認メールについては、スパムフォルダーを確認してください。

将来の改善には、スケジュールされたタスクの実装(GitHubアクションを使用するなど)を実装して、ウェルカムメールを定期的に送信し、 welcomeエンドポイントにセキュリティ対策を追加することが含まれます。

このチュートリアルは、ニュースレターサインアップシステムを構築するための堅牢で費用対効果の高い教育的アプローチを提供します。このプロセスは、さまざまなサービスとAPIを組み合わせて機能的なアプリケーションを作成する力を示しています。

以上が概念APIで電子メールのサインアップを収集しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Vue 3 Vue 3 Apr 02, 2025 pm 06:32 PM

それは' Vueチームにそれを成し遂げてくれておめでとうございます。それは大規模な努力であり、長い時間がかかったことを知っています。すべての新しいドキュメントも同様です。

ブラウザから有効なCSSプロパティ値を取得できますか? ブラウザから有効なCSSプロパティ値を取得できますか? Apr 02, 2025 pm 06:17 PM

私はこの非常に正当な質問で誰かに書いてもらいました。 Leaは、ブラウザから有効なCSSプロパティ自体を取得する方法についてブログを書いています。それはこのようなものです。

CI/CDで少し CI/CDで少し Apr 02, 2025 pm 06:21 PM

「ウェブサイト」は「モバイルアプリ」よりも適していると言いますが、Max Lynchからのこのフレーミングが好きです。

粘着性のあるポジショニングとサスのダッシュを備えた積み重ねられたカード 粘着性のあるポジショニングとサスのダッシュを備えた積み重ねられたカード Apr 03, 2025 am 10:30 AM

先日、Corey Ginnivanのウェブサイトから、この特に素敵なビットを見つけました。そこでは、スクロール中にカードのコレクションが互いに積み重ねられていました。

WordPressブロックエディターでのマークダウンとローカリゼーションを使用します WordPressブロックエディターでのマークダウンとローカリゼーションを使用します Apr 02, 2025 am 04:27 AM

WordPressエディターでユーザーに直接ドキュメントを表示する必要がある場合、それを行うための最良の方法は何ですか?

レスポンシブデザインのブラウザを比較します レスポンシブデザインのブラウザを比較します Apr 02, 2025 pm 06:25 PM

これらのデスクトップアプリがいくつかあり、目標があなたのサイトをさまざまな次元ですべて同時に表示しています。たとえば、書くことができます

スティッキーヘッダーとフッターにCSSグリッドを使用する方法 スティッキーヘッダーとフッターにCSSグリッドを使用する方法 Apr 02, 2025 pm 06:29 PM

CSS Gridは、レイアウトをこれまで以上に簡単にするように設計されたプロパティのコレクションです。何でもするように、少し学習曲線がありますが、グリッドは

フレックスレイアウト内の紫色のスラッシュ領域が誤って「オーバーフロー空間」と見なされるのはなぜですか? フレックスレイアウト内の紫色のスラッシュ領域が誤って「オーバーフロー空間」と見なされるのはなぜですか? Apr 05, 2025 pm 05:51 PM

フレックスレイアウトの紫色のスラッシュ領域に関する質問フレックスレイアウトを使用すると、開発者ツールなどの混乱する現象に遭遇する可能性があります(D ...

See all articles