Как исправить «Архив несовместим» при загрузке zip-архивов, созданных в MacOS?

После обновления до версии WordPress 6.4.3 вы могли заметить, что zip-архивы некоторых плагинов и тем перестали загружаться в админке WordPress, выдавая следующую ошибку.

Ошибка Архив Несовместим в версии WordPress 6.4.3
Ошибка «Архив несовместим», или «Incompatible Archive».

Пожалуй сейчас я бы не хотел слишком вдаваться в подробности – баг это или фича, давайте лучше разберёмся, почему это происходит и как это исправить.

Если вдруг у вас возникала эта проблема, но сейчас у вас не получается её воспроизвести, то скачайте любой плагин с wordpress.org, распакуйте его и снова заархивируйте правой кнопкой мыши на MacOS – готово!

Давайте теперь разбираться, как это исправить. Варианты перейти с мака на винду, даунгрейднуть WordPress до 6.4.2 или загружать плагины напрямую через FTP – не рассматриваю!

Способ 1. Исправление при помощи фильтр-хука

Если вы являетесь скорее владельцем определённого сайта, а не разработчиком, и не хотите париться по поводу того, создан ли архив плагина или темы корректно или просто заархивирован на маке – то думаю этот способ вам подойдёт!

Всё, что вам нужно сделать, это добавить на свой сайт эту строчку кода:

add_filter( 'unzip_file_use_ziparchive', '__return_false' );

Если вы не знаете, куда вставлять код, читайте тут.

Способ 2. Исправление при помощи Keka

Keka – это не в смысле «кек», это альтернативный архиватор для Mac OS. Обычно он у меня стоит, потому что помогает работать ещё и с rar-архивами. Тут всё экстра-легко – архивируем файл с его помощью и готово.

архиватор Keka

Способ 3. Исправляем при помощи терминала

Основная наша задача – исключить из созданных zip-архивов скрытую папку __MACOSX. И сделать это можно либо создав архив при помощи терминала, либо удалив эту скрытую папку из существующего архива при помощи терминала.

zip -vr true-plugin.zip true-plugin/

Флаг -vr означает отображать информацию об архивировании и добавлять в архив все вложенные папки и файлы (если его не указать, у вас только будет заархивирована пустая папка).

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Пишите, если нужна помощь с сайтом или разработка с нуля.

Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.

Миша Рудрастых и WordPress

Полезности из мира WordPress и жизни студии.

Мой телеграм-канал