Saya mencoba membungkus kepala saya di sekitar filter kontekstual lagi! Saya menggunakannya beberapa waktu lalu tapi saya benar-benar bingung lagi. Inilah yang saya coba lakukan:
- Hasilkan halaman simpul konten yang dikloning dengan istilah taksonomi dimasukkan ke halaman yang dikloning ini.
mis .: EXAMPLE.com/shite-shoes/blue
Ketika pengguna mencapai halaman / sepatu putih itu akan menunjukkan halaman simpul asli diarahkan ke warna putih. Sekarang jika pengguna mendarat di / white-shoes / blue itu akan menampilkan halaman simpul yang sama, tetapi kali ini semua konten tubuh akan ditulis ulang menggantikan warna putih dengan warna biru.
Dalam Tampilan, saya harus membuat tampilan Halaman dengan jalur:% /%
Sekarang saya akan membuat filter kontekstual untuk mengambil nid. Saya menambahkan Konten: nid sebagai filter kontekstual. Saya memilih MEMBERIKAN NILAI DEFAULT dan saya memasukkan kode PHP ini:
$ x = drupal_lookup_path ('source', arg (0));
$ y = meledak ('/', $ x);
mengembalikan $ y 1 ;
Kode PHP itu pada dasarnya mengubah bagian / white-shoes dari URL menjadi NID. Tapi itu tidak berhasil. Saya menguji kode melalui drush ev melalui terminal dan saya memang mendapatkan hasil yang dikembalikan, jadi saya tahu itu berfungsi.
Saya melakukan hal yang sama untuk nama istilah taksonomi dan menambahkan filter kontekstual untuk itu juga. Kali ini saya memilih MEMBERIKAN NILAI DEFAULT dan memilih RAW VALUE DARI URL dan memilih argumen ke-2.
Seperti yang Anda lihat ketika saya memasukkan PREVIEW VALUE untuk filter kontekstual: AAA / BBB / CCC. Nilai default saya diabaikan. Seharusnya meraih argumen ke-2, tetapi hanya mendapatkan argumen ke-1. Lihatlah pernyataan SQL WHERE dan Anda akan melihatnya mendapatkan AAA padahal seharusnya BBB.
Jadi pertanyaannya adalah apa yang saya lakukan salah atau ada solusi yang lebih baik untuk apa yang ingin saya capai?