Gunakan komponen redirect Joomla untuk memperbaiki URL yang rusak

8

Adakah yang bisa membantu menggunakan komponen pengarah J3 untuk memperbaiki jenis tautan yang rusak ini:

https://www.portal-gestao.com/wh Whats/wh whatever/9999-title-of-the-page

Untuk:

https://www.portal-gestao.com/item/9999-title-of-the-page

Dan ini:

http://www.portal-gestao.com/wh whatever/wh Whats/itemlist/tag/name-of-the-tag.html

Untuk:

https://www.portal-gestao.com/item/tag/gurus.html

Dan ini:

http://www.portal-gestao.com/wh whatever/wh Whats/itemlist/user/9999-name-of-author.html

Kepada: http://www.portal-gestao.com/item/author/3707-name-of-author.html

Terima kasih banyak atas bantuannya!

Nuno Nogueira
sumber
apa yang Anda maksud dengan apa pun / apa pun / di url Anda, apakah mereka alias beberapa item menu? akan sangat membantu untuk menyediakan uri persis yang Anda lihat misalnya /components/com_tags/list/23-tag.html
Nagarjun
Ya, dulu sebelum memperbarui struktur menu. Contoh: portal-gestao.com/gestao/carreira/… portal-gestao.com/gestao/carreira/…
Nuno Nogueira
1
Jadi Anda telah menghapus sepenuhnya struktur menu lama Anda dan sekarang semua artikel lama Anda ditautkan dari mana? Haruskah semua diakses oleh / item / id-artikel? Pengarahan ulang J3 tidak akan membantu Anda dengan ini. Karena Anda harus membuat pengalihan halaman demi halaman.
FFrewin

Jawaban:

6

Dengan aturan .htaccess di bawah ini Anda dapat mengalihkan semua halaman dari url dengan pola:

https://www.portal-gestao.com/wh Whats/wh whatever/9999-title-of-the-page

ke url baru:

https://www.portal-gestao.com/item/9999-title-of-the-page


htaccess:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.portal-gestao.com
RewriteRule ^.*/.*/(.*)$ https://www.portal-gestao.com/item/$1 [L,R=301]

Tetapi saya tidak begitu yakin bahwa ini persis yang Anda inginkan, karena sesuatu seperti ini akan memengaruhi semua url dari pola di atas (2 dir level url dalam), kecuali jika semua url baru Anda sekarang seperti ini.

Mungkin akan lebih baik untuk membuat aturan yang sama, tetapi dengan menentukan secara tepat nama "apa pun" dari struktur lama, sehingga penulisan ulang url hanya akan memengaruhi jalan lama itu.

misalnya:

RewriteRule ^whatever1/whatever2/(.*)$ https://www.portal-gestao.com/item/$1 

Tentu saja, seperti yang ditunjukkan oleh @Nehal, Anda dapat mempertimbangkan ekstensi SEF seperti SH404SEF, JOOMSEF dll, yang akan membantu Anda menangani 404 halaman Anda (tautan rusak). Sebagian besar dari mereka memberikan pengaturan untuk mengonfigurasi bagaimana url situs web Anda harus dibangun.

FFrewin
sumber
Ya aturan pertama akan mengarahkan ulang semuanya, bukan itu yang saya butuhkan. Yang kedua tampaknya lebih baik. Terima kasih
Nuno Nogueira
3

Yang bisa Anda lakukan adalah menggunakan Redirect Manager Joomla untuk mengarahkan ulang URL lama ke yang baru.

Di backend Joomla, pergi ke:

Komponen >> Redirect >> Baru

Di bidang URL Sumber , masukkan URL lama dan di bidang URL Tujuan , masukkan URL baru

Lodder
sumber
Ya, saya tahu :-) Masalahnya adalah bagaimana membuat aturan di atas (bukan halaman per halaman)
Nuno Nogueira
1
Ahh ... untuk ini, Anda mungkin perlu menggunakan ekstensi pengalihan yang memiliki fitur regex atau mengedit htaccessfile Anda . Sayangnya, saya bukan htaccessahli jadi saya tidak bisa membantu. Semoga orang lain dapat memberi Anda beberapa wawasan
Lodder
3

Anda dapat menggunakan komponen JOOMSEF , yang untuk keperluan SEO dan lebih banyak lagi ekstensi ini gratis.

Juga di komponen itu Anda memiliki opsi untuk menghapus kategori dan nama menu dari url dan juga Anda dapat menyesuaikan url sesuai dengan Anda .

Nehal
sumber