■ユーザーズフォーラム リニューアルのお知らせ
新規投稿は新ユーザーズフォーラムにお願いします。
このフォーラムは閲覧専用のアーカイブです。

項目の初期値について

NewPulsar > 項目の初期値について @ 2018/3/20 9:50
お世話になります。

BaserCMS 4.0.10.1
ベース:nada icon

メールフォームにて、お名前項目を作る際にログインユーザの
名前をデフォルトで設定したいのですが、どうすれば良いでしょうか?
BcUtil::loginUser()を使って、設定するんだと思いますが
その設定する対象のファイルが分かりません。
Baser\Plugin\Mail\View\MailFields 辺りかなぁと探して
いるのですが、どれをカスタマイズするのかが不明です。

ご存じの方がいれば教えて頂けないでしょうか?
ご教授宜しくお願いします。
seto > Re: 項目の初期値について @ 2018/3/20 10:34
こんにちは

/theme/【テーマ名】/Elements/mail_input.php 内の

echo $this->Mailform->control($field['type'], "MailMessage." . $field['field_name'] . "", $this->Mailfield->getOptions($record), $this->Mailfield->getAttributes($record));

(50-60行目あたり)

を

$attributes = $this->Mailfield->getAttributes($record);
if ($field['field_name'] == '【フィールド名】' && $user = BcUtil::loginUser()) {
$attributes['value'] = h($user['name']);
}
echo $this->Mailform->control($field['type'], "MailMessage." . $field['field_name'] . "", $this->Mailfield->getOptions($record), $attributes);


に書き換えたらメールフィールドにログインユーザーの名前を表示できましたー
NewPulsar > Re: 項目の初期値について @ 2018/3/20 11:04
seto様

バッチリでした!素晴らしいです、感動です!!
ソースを詳細に書いて頂いたので、フィールド名を書き換えるだけで実現しました。
本当に有難うございました!