Email Before Download:フォーム送信後にダウンロードリンクを表示できる
サイトからファイルをダウンロードしようとする時、
フォームにメールアドレスを入力して送信後、
ダウンロードリンクがメールで送られてくるパターンがありますよね。
自サイトでもそのような機能を実装させたい。
そのような時に便利な WordPress 用プラグインがあります。
それは「Email Before Download」です。
その導入手順から日本語化・使い方と設定などを解説していきます。
Email Before Download
Email Before Download は、フォーム入力後にダウンロードリンクを表示されたり、
ダウンロードリンクをメールで通知することができます。
ダウンロードリンクの通知の仕方は、
フォーム送信後の画面に表示もしくは入力されたメールアドレスに配信を選択できます。
※両方を選択することもできます。
表示させるダウンロードリンクは、実リンクをユーザーに表示させないようにすることも可。
入力されたメールアドレスをドメイン単位でチェックしてブロックすることもできます。
なお、フォームの作成と管理は「Contact Form 7」で、
ダウンロード管理は「Download Monitor」で行いますので
事前にインストールした上で準備が必要です。
Contact Form 7 – WordPress.org
Download Monitor – WordPress.org
記事を作成もしくは更新時点でのバージョン:6.1
マルチサイトでの利用:可
Gutenberg エディターでの動作
Gutenberg エディターに追加される機能は無いので、気にする必要は無いです。
インストール手順
Email Before Download をインストールするには 2 種類の方法があります。
下記の URL から ZIP ファイルを入手して、管理画面からアップロードして有効化する。
Email Before Download – WordPress.org
もしくは、WordPress.org の公式プラグインディレクトリにリリースされているので、
管理画面からインストールできます。
ダッシュボードから「プラグイン」メニューの「新規追加」を選択し、
プラグイン追加画面右上の検索窓に「Email Before Download」と入力します。
検索結果の一番左上に表示されると思うので、「今すぐインストール」をクリックします。
※一番左上に表示されない場合は、上記の画像から探して下さい。
インストールが完了したら、プラグインを「有効化」します。
プラグインのインストールに慣れていない方は、
下記の記事にて詳しく解説していますので、御覧ください。
WordPressプラグインのインストール手順を解説 – WordPress活用術
日本語化
Email Before Download を有効化した際に日本語化されない場合には、
日本語化用の言語パックを translate.wordpress.org から入手できる場合があります。
WordPress と関連プロジェクト(テーマ・プラグイン)用の翻訳プラットフォームとして、
translate.wordpress.org (GlotPress) が導入されています。
※ボランティアで翻訳されている場合が多いので、
全てのプラグインで、必ずしも日本語化用の言語パックが用意されているわけでは無いです。
また、用意されていても 100% 翻訳されている保証もありません。
日本語化用の翻訳ファイルの探し方は、下記の記事を参照してください。
WordPress公式での日本語化用の翻訳ファイルの探し方 – WordPress活用術
専用テーブル
下記のテーブルを Email Before Download 専用のテーブルとして作成し利用します。
テーブル作成時に $wpdb->prefix も使用しているので、マルチサイトにも対応。
class-email-before-download-activator.php から CREATE TABLE 文を抜粋(記事用に一部修正)。
CREATE TABLE IF NOT EXISTS ebd_item (
`id` int(11) NOT NULL auto_increment,
`download_id` varchar(128) NULL,
`file` varchar(255) NULL,
`title` varchar(255) NULL,
`timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
);
CREATE TABLE IF NOT EXISTS ebd_link (
`id` mediumint(9) NOT NULL AUTO_INCREMENT,
`item_id` int(11) NOT NULL,
`is_downloaded` smallint(3) NOT NULL DEFAULT '0',
`email` varchar(128) NOT NULL,
`expire_time` bigint(11) DEFAULT NULL,
`time_requested` bigint(11) DEFAULT NULL,
`uid` varchar(255) NOT NULL,
`selected_id` bigint(20) NOT NULL,
`delivered_as` varchar(255) DEFAULT NULL,
`is_masked` varchar(4) DEFAULT NULL,
`is_force_download` varchar(4) DEFAULT NULL,
UNIQUE KEY `id` (`id`)
);
CREATE TABLE IF NOT EXISTS ebd_posted_data (
time_requested bigint(20),
email VARCHAR(128) NULL,
user_name VARCHAR(128)CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL,
posted_data text(2000) NOT NULL,
UNIQUE KEY id (time_requested)
);
専用メニュー
管理画面の「設定」メニューの中に追加されています。
使い方
[email-download contact_form_id="9999″ download_id="999″]
フォームを表示させたい投稿もしくは固定ページなどに上記のショートコードを記載します。
ID には、
contact_form_id:Contact Form 7 のフォーム ID
download_id:Download Monitor のダウンロード ID
を指定します。
設定
一般設定(General Settings)
ここでは、一般設定を行えます。
- Default Delivery Format
デフォルトのダウンロードリンクの配信形式を選択します。 - Default Link Expiration Time
ダウンロードリンクの有効期限を選択します。。 - Forbidden Domains
ダウンロードリンク配信禁止ドメインをカンマ区切りで登録します。
内部リンク設定(Inline Link Settings)
一般設定で「インラインリンク」または「両方」を配信形式として選択している場合、
以下の設定が適用されます
- Default Link Target
ダウンロードリンクのデフォルトターゲット(target=)を選択します。 - Custom CSS
カスタム CSS を適用したい場合に CSS クラスを入力します。 - HTML Before Link
ダウンロードリンクの前に表示したい HTML コードを入力します。 - HTML After Link
ダウンロードリンクの後に表示したい HTML コードを入力します。
メール設定(Email Settings)
配信形式として「メール」または「両方」を選択している場合、
以下の設定が適用されます。
- Single URL Template
デフォルトのダウンロードリンクを含む文字列をカスタマイズしたい場合に使用します。 - Multiple URL Template
デフォルトのダウンロードリンクを含む文字列をカスタマイズしたい場合に使用します。
- Default Attachment
ダウンロードファイルをメールに添付するかどうか。ショートコードで個別に上書き可。。 - From Email Subject
メールの件名を入力します。 - From Email Name
メールの送信者名を入力します。 - From Email
メールアドレスを入力します。
追加設定(Additional Settings)
以下の設定は、複数の URL がショートコードに含まれている場合にのみ適用されます。
各項目の設定値は、ショートコードで上書き可。
- Default CF7 Form ID
全てのダウンロードに同じフォームを使用する場合の CF7 のフォーム ID を入力します。 - Default Checkbox State
(複数の)チェックボックスのデフォルトのチェック状態を設定します。 - Default Hide Form
ユーザーがダウンロードを選択するまで、フォームを非表示にするかどうか。 - Default Radio Buttons
チェックボックスの代わりにラジオボタンを使用するかどうか。 - Default Display File Thumbnail
Download Monitor のファイルのサムネイル画像をファイルのタイトルと一緒に表示するかどうか。