Я использую Пантеон, WordPress и Ларго тема. Pantheon сообщает мне, что Largo записывает тысячи файлов в каталог / tmp. Мой сайт невероятно медленный, потому что функция wp_unique_filename в WordPress не может найти уникальные имена.
Я публикую это на тот случай, если у кого-то будет такой же опыт. Я не уверен, как остановить создание файлов TMP, не нарушая тему. Любые предложения о том, с чего начать, будет принята с благодарностью!
Авторы Largo оказали мне некоторую помощь, и хотя они прояснили проблему, я все еще не уверен, как ее исправить. Вот дополнительная информация:
WordPress требует, как часть их критериев для отправки в каталог тем wordpress.org, чтобы темы использовали WP_Filesystem для чтения и записи в файловую систему. Это часть меры WordPress по обеспечению правильной обработки прав доступа к файлам WordPress и любыми используемыми темами или плагинами. Largo использует WP_Filesystem в коде, который Pantheon назвал причиной миллионов временных файлов, засоряющих файловую систему.
WP_Filesystem выбирает один из пяти различных способов доступа к файловой системе в зависимости от конфигурации вашего хоста.
Похоже, что в этом случае WP_Filesystem использует WP_Filesystem_FTPext. Вот соответствующий фрагмент исходного кода для класса WP_Filesystem_FTPext: https://core.trac.wordpress.org/browser/tags/4.3/src/wp-admin/includes/class-wp-filesystem-ftpext.php#L97
Вы можете видеть, что здесь вызывается wp_tempnam, который, в свою очередь, вызывает wp_unique_filename. Я думаю, что в строке 104, вероятно, произошла ошибка, но она не будет сообщаться в журнале ошибок PHP, так как @ftp_fget имеет префикс «@», который подавляет ошибки.
Если какая-то ошибка возникает в строке 104, это означало бы, что временный файл был открыт, но никогда не закрывался, оставляя временные файлы в litter / tmp, как отметил Pantheon.
Задача ещё не решена.
Других решений пока нет …