Drupal 6つのサイトで、ユーザーが自分のモジュールのページに?destination = fooクエリ文字列がURLに付加された状態で遭遇する可能性があるサイトで、サイトでの以前のやり取りから頻繁に遭遇します。この結果はさまざまです「不便」から「非常に悪化」まで。
drupal_goto()
のデフォルトの動作は、宛先パラメーターを最初にチェックし、drupal_goto()
への引数が存在しても無視します。
destination
を無視する方法でdrupal_goto()を使用するDrupalネイティブの方法はありますか?
(はい、私はユーティリティ関数でdrupal_goto()
のバージョンを再作成できることを知っていますが、Drupalネイティブのソリューションが存在する場合はそれを好みます)
実際には非常に簡単です。drupal_goto()
を呼び出す前に$_REQUEST['destination']
を設定解除するだけです。
実際、unset($_REQUEST['destination'])
は機能しませんが、代わりにunset($_GET['destination'])
を使用して機能させることができました。