Di Drupal 7, saya menggunakan kode berikut.
function my_goto($path) {
drupal_goto($path, array(), 301);
}
Kode apa yang harus saya gunakan di Drupal 8?
redirection
8
Anu Mathew
sumber
sumber
Jawaban:
Ini adalah kode yang harus digunakan dalam Drupal 8. Lihat perubahan Record untuk info lebih lanjut.
sumber
use Symfony\Component\HttpFoundation\RedirectResponse;
Untuk membangun di atas tanggapan Anu Mathew ;
Untuk menambahkan kode status, ini hanya param kedua di kelas RedirectResponse;
sumber
Saya belum bekerja di drupal 8, tetapi karena dokumentasinya
drupal_goto
dihapus dari Drupal 8.Di tempat
drupal_goto
Anda perlu menulis:dan sesuatu seperti ini dengan parameter:
Periksa di sini https://www.drupal.org/node/2023537 dan kelas RedirectResponse
sumber
\Drupal::url('route.name')
dengan url Anda atau mungkin url absolut.Ini dapat dicapai dengan memanfaatkan Komponen EventDispatcher simfoni bawaan. Yang harus Anda lakukan adalah membuat modul khusus. Tambahkan file services.yml Anda dan berikan konfigurasi layanan yang sesuai.
di direktori modul src Anda tambahkan buat kelas EventSubscriber.php Anda dan jelaskan metode Anda di sini.
sumber
Kode pengalihan yang berfungsi dengan baik untuk saya adalah sebagai berikut:
Dalam kasus lain saya mendapatkan semacam pengecualian atau kesalahan, misalnya: LogicException: Pengontrol harus mengembalikan respons ...
ATAU
https://www.drupal.org/project/drupal/issues/2852657
Sudah ada diskusi tentang itu, semoga bisa membantu!
sumber
ini berfungsi untuk pengalihan internal atau eksternal:
sumber