■ユーザーズフォーラム リニューアルのお知らせ
新規投稿は新ユーザーズフォーラムにお願いします。

mailプラグイン × getContentsName() 「書き直す」ボタンで戻った後の挙動

kyobu02 > mailプラグイン × getContentsName() 「書き直す」ボタンで戻った後の挙動 @ 2013/11/28 19:45
mailプラグインにおいて、テンプレート1つを使い回し、
各フォームに応じて、ヘッダ等を動的に差し替えるため、

$bcBaser->getContentsName() を用いて現在のフォームを分岐させていたのですが、

例)フォームを2種類作ったとします。

/contact
/contact_privacy

通常通りアクセスすると getContentsName は "Contact" または "ContactPrivacy" になってくれるので、
それを元にタイトルなどを差し替えるようにswitchなどで分岐させていたのですが、

確認画面に移行してから、「書き直す」ボタンで戻ったフォームでは
(その際のURLは /contact/submit or /contact_privacy/submit になっています)

getContentsName が 問答無用で "MailMail" になってしまいます。

プラグインの仕様的にもしかしたら仕方ない事かも知れませんが、ご報告です。

原始的にgetHereでURLを取得し、分岐させることで対処しました。




<?php
//カテゴリ名取得して、ヘッダ内容を切り替え
$catName = $bcBaser->getContentsName();

//…では対応しきれないので
//「書き直す」リンクの際に対応
$hereUrl = $bcBaser->getHere();
switch($hereUrl){
case '/contact':
case '/contact/submit':
	$catName = 'Contact';
	break;
:
:

//$catNameに応じてヘッダ切り替え表示
:
:





■ BaserCMSのバージョン:2.1.2
■ レンタルサーバー名:さくらインターネット スタンダード / 自前CentOS
■ スマートURLの利用: OFF
■ 設置フォルダ: [ドキュメントルート / サブフォルダ]
■ 利用しているデータベース: SQLite / MySQL / PostgreSQL
■ PHPスキル(自己評価): [ C ]
ログイン
ユーザー名:
パスワード:


  新規登録 / パスワード紛失

検索

facebook
フォーラムで悩みが解決した場合など、よかったら「いいね!」をポチっとクリックしてください!質問の回答者や開発者の励みになります

フォーラムガイド


関連リンク

オンライン状況
8 人のユーザが現在オンラインです。 (6 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 8