Baris bukan sistem yang aneh ditambahkan ke core_url_rewrite

8

core_url_rewriteMeja kami tampaknya tumbuh berlebihan (baris 21M saat ini) - Saya tahu ada pertanyaan lain tentang ini, tetapi tidak satu pun dari mereka yang menyebutkan keanehan khusus ini: banyak baris baru yang ditambahkan is_system = 0, dan id_pathada sesuatu seperti " 97704000_1422557940 ". Angka setelah garis bawah nampak sebagai stempel waktu ketika baris ditambahkan, tetapi saya tidak yakin apa angka pertama itu.

Saran untuk core_url_rewritemasalah tampaknya selalu memotong tabel dan mengindeks ulang, dan mungkin itu yang terjadi, tetapi kami memiliki banyak penulisan ulang kustom di tabel sehingga harus terus-menerus menambahkannya kembali akan menjadi masalah nyata , dan saya lebih suka sampai ke akar masalah.

Kami baru saja memutakhirkan ke 1.9.1.0, tetapi ada baris dalam tabel kembali hampir dua tahun (!).

Ada ide?

Ben Slinger
sumber

Jawaban:

6

Ini adalah masalah Klasik dengan penulisan ulang. Penyebab root tidak memiliki kunci URL unik. Biasanya disebabkan oleh memiliki produk-produk sederhana yang dapat dikonfigurasi dengan nama yang sama.

Untuk alasan yang jelas, satu jalur permintaan (URL) harus cocok dengan satu tindakan di Magento. Karenanya semua jalur permintaan harus unik. Jalur URL produk dan kategori dibuat dari kunci URL mereka dan biasanya ketika Anda memiliki produk yang dapat dikonfigurasi, pemilik toko / pekerja backend tidak meluangkan waktu untuk memastikan produk sederhana di bawah yang dapat dikonfigurasi memiliki kunci URL yang berbeda. Ini menyebabkan Magento menyisipkan tanda hubung dan nomor urut. Diberikan produk yang dapat dikonfigurasi dengan 4 simples, ini berarti setidaknya 4 URL dengan urutan ditambahkan setiap iterasi (karena Magento tidak / tidak dapat membedakan antara proses yang urutannya sudah dibuat). Ini bertambah dengan cepat di katalog besar.

Alur kerja untuk memulihkan adalah sebagai berikut:

  1. Pastikan semua kunci URL unik memperbaiki input Anda dan melakukan pengindeksan ulang penulisan ulang.
  2. Hapus semua penulisan ulang yang cocok WHERE id_path LIKE "%_%" AND options="RP" AND (catalog_id IS NOT NULL OR product_id IS NOT NULL) AND target_path NOT IN (temp_table).
  3. Untuk pencocokan penulisan ulang yang tersisa, WHERE id_path LIKE "%_%" AND options="RP" AND (catalog_id IS NOT NULL OR product_id IS NOT NULL)atur request_path ke target_path dan atur target_path ke request_path yang cocok dengan kombinasi category_id-product_id dan di mana opsi IS NULL.
  4. Pasang ekstensi ini dan aktifkan semua optimasi
  5. Reindex menulis ulang setidaknya dua kali, memverifikasi jumlah baris konsisten (tidak ada perubahan pada produk atau kategori).
  6. Pantau Alat Webmaster dan 404 untuk URL basi tambahan yang masih di spider dan harus diarahkan. Lebih disukai menerapkan 301 di server web Anda agar tetap core_url_rewritebersih.

Catatan: Skrip ini membantu membuat kunci URL yang unik, dengan mengiterasi nilai atribut dan menambahkannya hingga kunci unik dihasilkan. Perhatikan bahwa skrip ini tidak memeriksa konflik antara kategori dan produk. Biasanya ini bukan masalah, karena kategori secara alami dinamai dalam bentuk jamak, tetapi jika Anda menjual misalnya domba atau ikan, ini masih bisa menjadi masalah. Kasus sudut lainnya adalah bentrokan antara URL katalog dan halaman CMS. Script ini tidak memeriksanya, tetapi juga tidak memengaruhi penulisan ulang karena pengidentifikasi halaman CMS tidak ada di sana. Ini hanya akan menghasilkan halaman CMS atau kategori / halaman produk yang ditampilkan di mana orang akan melihat yang lain.

Temp_table yang disebutkan harus diisi dengan URL yang ada di semua peta situs. Ini mengurangi beberapa dampak SEO dengan mempertahankan varian tanda hubung dan nomor urut yang hidup dan pada langkah 3 ini kemudian ditulis ulang ke URL yang benar. Ekstensi pada langkah 4 mencegah sejumlah URL memasuki tabel core_url_rewrite, terutama produk yang tidak diatur ke visibilitas "katalog / pencarian". Ketika Anda memiliki produk sederhana yang merupakan bagian dari yang dapat dikonfigurasi dan tidak terdaftar secara terpisah, ini harus ditandai "tidak terlihat secara individual" dan ekstensi ini kemudian mencegah mereka dari memasukkan penulisan ulang. Ini adalah pengoptimalan yang berharga untuk toko-toko dengan produk yang dapat dikonfigurasi tanpa memandang mereka memiliki masalah penulisan ulang URL ini. Mengenai langkah 5, jika tidak ada perubahan pada kunci url produk dan kategori, maka setiap indeksasi akan menghasilkan jumlah penulisan ulang yang sama. Jika ini bukan masalahnya, Anda masih memiliki konflik di suatu tempat dan harus memburunya.

Semoga ini bisa menjelaskan sedikit.

Melvyn
sumber
jawaban yang bagus dan +1 untuk itu. Tapi alangkah baiknya jika Anda menambahkan lebih banyak detail seperti bagaimana mengatasi masalah inti ini, tautan apa pun.
Rajeev K Tomy
Akan melakukan. Sedang dalam perjalanan keluar.
Melvyn
0

Saya percaya ini biasanya pengalihan yang dihasilkan secara program ketika Anda mengubah produk dan kategori dalam katalog. Mereka dimaksudkan untuk mempertahankan tautan lama untuk mengirim pelanggan ke lokasi baru, tetapi Anda mungkin dapat membersihkannya setelah beberapa saat karena mereka cenderung menumpuk dari waktu ke waktu — terutama jika Anda memiliki beberapa situs web / toko / tampilan dan banyak produk.

fantastis
sumber