WordPress mengambil data meta untuk semua jenis posting khusus dalam tampilan daftar

9

Saya mengalami masalah di WordPress di mana PHP sedang sekarat. Saya telah meningkatkan memori, tetapi proses PHP melonjak hingga 100% penggunaan CPU kemudian mati dan Apache melempar 500 kesalahan.

Saya sudah mencoba membuat Apache untuk mencatat sesuatu, atau PHP / MySQL untuk mencatat kesalahan tetapi tidak ada yang dicatat selain kesalahan umum 500.

Masalah 500 ada di halaman daftar misalnya:

/wp-admin/edit.php?post_type=artist

Saat ini kami memiliki lebih dari 1200 entri artis di WordPress, jika saya menambahkan jenis tanggal seperti ini:

/wp-admin/edit.php?post_type=artist&orderby=date

Kemudian daftar memuat dengan baik, bahkan cepat! Saya telah duduk dan menyaksikan log kueri MySQL dan tampaknya WordPress memuat meta data untuk setiap posting (semuanya 1.200) untuk menghasilkan daftar 10 atau lebih. Untuk hanya satu dari kueri, itu menghasilkan 92000 baris. Saya menggunakan Bidang Kustom Tingkat Lanjut dan templat dengan kerangka kerjanya sendiri, sehingga setiap pos memiliki sebagian besar meta data terlampir. Saya berpikir bahwa ini terlalu banyak data untuk diproses oleh PHP dan saya memukul langit-langit di sini. 1200 posting kemungkinan akan dua kali lipat dengan mudah selama tahun depan.

Bagaimana saya bisa memaksa pemuatan halaman awal untuk menambahkan jenis tanggal atau memperbaiki masalah dengan memuat semua data meta itu?

Paul Cullen
sumber
Sudahkah Anda mencoba menonaktifkan ACF dan plugin lainnya? Saya pikir saya pernah memiliki masalah yang sama dan saya pikir pelakunya di sini bukan WP itu sendiri tetapi dengan ACF. misalnya ACF menambahkan data meta ke revisi dan kemudian memuat semua itu juga. Harap pastikan apa sumber masalah ini karena ini akan membantu orang lain membantu Anda.
kraftner
Hai @kraftner ive menonaktifkan ACF dan tidak ada bedanya.
Paul Cullen
Berapa banyak memori yang Anda gunakan di wp-config (WP_MAX_MEMORY_LIMIT)? Apa nilai PHP.INI Anda untuk memory_limit? Coba naikkan secara maksimal. Juga, saya akan melihat file konfigurasi mysql Anda.
Emanuel Rocha Costa
Saya telah menaikkan PHP dan WP_MAX_MEMORY_LIMIT keduanya menjadi 512 sementara tidak berpengaruh. File konfigurasi mysql saya adalah: default-storage-engine=MyISAM innodb_file_per_table=1 max_allowed_packet=268435456 open_files_limit=10000 query_cache_size=64M log_slow_queries = 1 log-slow-queries=/var/log/mysql.slow.log log-error=/var/log/mysqld.log general_log_file = /var/log/mysql_general.log
Paul Cullen
1
apakah tipe tulisan "artis" yang hierarkis (seperti halaman)? .. jika demikian ini mungkin penyebabnya karena semua posting akan ditanyakan di dasbor admin. Jika aplikasi Anda memungkinkan, Anda dapat mencoba mengubah hierarki menjadi false untuk "artis" CPT dan melihat apakah itu mengurangi masalah memori
locomo

Jawaban:

1

Coba ubah hierarkis: salah dalam definisi CPT Anda (jika aplikasi Anda memungkinkan).

Ketika CPT diatur ke hierarkis: true semua posting akan ditanyakan di dasbor admin yang dapat menyebabkan masalah memori.

locomo
sumber
0

Masalahnya adalah bahwa CPT diatur ke hierarkis, mengalihkannya ke hierarkis: false di functions.php menyelesaikan masalah.

Paul Cullen
sumber
1
Harap terima jawaban Anda sendiri, sehingga pertanyaan ini dapat ditutup.
cjbj