SOY Mailのデータベースを各サイト毎に作成する(要PHP)

SOY Mailのデータベースは標準設定であれば、

/CMSインストールディレクトリ/common/db/soymail.db

SOY CMSの管理用のデータベース内に作成されます。

※前者がSQLite版、後者がMySQL版


複数サイトを運営していて、各々のサイト毎に管理者が設定されている場合、

あるサイトの管理者が他サイトのユーザ宛にメールマガジンを発行したくない

といった場合にSOY Mailのデータベースの標準設定だと問題があるため、

各サイト毎のデータベースにSOY Mailのデータベースを作成する方法が用意されています。




SOY Mailのデータベースの作成場所の設定ですが、

はじめに

CMSインストールディレクトリ/common/config/user.config.php.sample

CMSインストールディレクトリ/common/config/user.config.php

のようにリネームします。


user.config.phpにはSOY CMS、SOY Shopの制限に関する設定が記述されています。

user.config.phpを開き、60行目付近にある

//define("SOYMAIL_USE_SITE_DB", false);

define("SOYMAIL_USE_SITE_DB", true);

コメントを外して、値をtrueに変更します。


変更後にどこかのサイトの管理画面にログインすると、


soymail_use_site_db


soymail_use_site_db1


SOY CMSのロゴ付近にメールマガジンのリンクが追加され、

このリンクをクリックすることで、


soymail_use_site_db2


サイト専用のユーザ名簿が生成されます。


この機能を利用する場合、

各管理者にはSOY Mailの権限をApp操作者に設定しておくと良いです。


補足

今回の機能はSOY Shopで作成したサイトにもSOY Mailのデータベースを作成することが出来ます。

user.config.phpでSOY Mailのデータベースの設定を変更した後、SOY Shopで作成したサイトの管理画面にログインすると、


soymail_use_site_db3


soymail_use_site_db4


画面右上にメールマガジンへのリンクが表示されます。

SOY CMSで作成したサイト同様、このリンクからSOY Mailの管理画面へ遷移する際に、

SOY Shopで作成したサイト側のデータベースにSOY Mailのテーブルが作成されます。