Вопрос или проблема
Можно ли отключить шаг обрезки при добавлении значка сайта черезCustomizer тем в WordPress 5+ (это произошло с 5.5)?
Мне обрезка не нужна, так как я всегда загружаю квадратное изображение в соответствии с рекомендациями.
Поэтому этот шаг мне совершенно не помогает, а на самом деле вызывает следующие проблемы:
- Создается ненужная копия изображения с префиксом
cropped
. - Для обрезанного изображения создается НОВЫЙ вложение.
Таким образом, все настройки, которые я сделал для вложения необрезанного изображения, теряются, и имя файла значка сайта всегда будет содержать этот префикс cropped
.
Существует ли способ исправить это без изменения исходного кода этой проблемы?
Чтобы заставить значок сайта быть конкретным вложением, вы можете использовать страницу wp-admin/options.php
и найти ярлык site_icon
, затем изменить значение поля на ID вложения, которое вы хотите использовать.
Конечно, это также можно сделать через SQL с запросом, несколько похожим на:
update wp_options set option_value=123 where option_name="site_icon";
Обратите внимание, что это сработает только после инициализации опции site_icon
.
К сожалению, для этой проблемы по-прежнему нет решения. WordPress все равно обрезает изображение, даже если ваш фавикон размером 512px x 512px.
Чтобы решить эту проблему, я установил Elementor и обновил свой значок сайта через настройки сайта. Это не обрезает изображение, и вам не придется иметь дело с дополнительным файлом в вашей медиатеке с префиксом cropped
.
WordPress ужасен, но я обнаружил, что если вы выберете значок через страницу основных настроек вместо настроек персонализации и нажмете “Сохранить изменения”, это не создаст обрезанную версию. Требование по размеру само по себе абсурдно, так как фавикон обычно не превышает 32×32 пикселя.
Чтобы избежать обрезки и использовать SVG в качестве значка сайта, вы можете использовать WP-CLI:
wp option update site_icon 123
В этом примере 123 – это ID файла.
Ответ или решение
Чтобы отключить обрезку иконки сайта в WordPress, существует несколько способов решения этой проблемы. Проблема с обрезкой иконок, даже если вы загружаете квадратное изображение нужных размеров, действительно беспокоит многих пользователей. Вот несколько методов, которые помогут вам избежать ненужной обрезки:
-
Настройки через wp-admin: Вы можете вручную установить иконку сайта, используя административную панель WordPress. Для этого перейдите на страницу
wp-admin/options.php
, затем найдите опциюsite_icon
. Измените значение поля на ID прикрепленного изображения, которое вы хотите использовать в качестве иконки сайта. Чтобы узнать ID вложения, просто перейдите в раздел "Медиафайлы" и наведите курсор на нужное изображение – ID будет отображен в ссылке.Пример SQL-запроса для этого:
UPDATE wp_options SET option_value=123 WHERE option_name="site_icon";
Здесь 123 – это ID вашего изображения. Учтите, что это работает только после того, как вы инициализировали опцию
site_icon
. -
Использование WP-CLI: Если вы предпочитаете командную строку, воспользуйтесь WP-CLI для обновления иконки сайта. Вы можете выполнить следующую команду:
wp option update site_icon 123
Заметьте, что 123 здесь также — это ID файла, который вы хотите использовать в качестве иконки.
-
Использование Elementor: Если на вашем сайте установлен плагин Elementor, вы можете обновить иконку сайта через его настройки сайта (Site Settings). В этом случае не будет производиться обрезка изображения и не будет создаваться дополнительное изображение с префиксом «cropped» в вашей библиотеке медиафайлов.
-
Изменение настроек в общем разделе: Как упоминалось, изменение иконки сайта через общий раздел настроек (General Settings) тоже может помочь. Перейдите в "Настройки" – "Общие" и загрузите иконку сайта там. После того как вы сохраните изменения, обрезание, скорее всего, не произойдет.
Пока что это все доступные решения проблемы с обрезкой иконок сайта в WordPress. Возможно, в будущих обновлениях разработчики обратят на это внимание и предложат более интуитивно понятное решение. Если же вам крайне необходима данная функциональность без обрезки, рекомендуется использовать один из вышеописанных методов.