Решение проблем с аттачами WP при «нестандартной папке картинок (НЕ wp-content/uploads)» в версии WordPress 2.7.1 и новее

В продолжение моего недавнего поста про глюки с БД.

Через день после того исправления глюк на том самом втором сайте повторился. Было перепробовано все что только можно

Проблема возникала не со всеми картинками, а в основном с теми, где в базе каким то образом прописался полный путь в файловой системе (без разницы — старого и нового хостинга). Удаление путей хирургическим путем в базе приводило к тому что WP забывал что у картинки есть миниатюра.

и помогало только «удаление всех глючных картинок из базы» и повторная закачка. Меня этот вариант не устроил и я искал другие способы. Вспомнил что глюк произошел после обновления с версии 2.7 до 2.7.1 (но мне не сразу сообщили про этот сбой).

Гугл по разным запросам вывел меня таки на этот блог, где предлагалось закомментировать 4 строчки в одном файле движка. Сработало!

Открываем файл wp-includes/post.php и комментируем там этот блок (строки 2566-2569)

			elseif ( false !== strpos($file, 'wp-content/uploads') )
$url = $uploads['baseurl'] . substr( $file, strpos($file, 'wp-content/uploads') + 18 );
else
$url = $uploads['baseurl'] . "/$file"; //Its a newly uploaded file, therefor $file is relative to the basedir.

Если лень патчить файл ручками и у вас такая же проблема — просто скачайте этот файл (для версии 2.7.1) и замените ваш в папке wp-includes

Надеемся в версии 2.7.2 баг исправят…

Ни*уя баг не исправили и в 2.8.2 версии он также присутствует. Авторы совсем обленились. Вот пропатченный файл для версии 2.8.2

Вообще, как пишет автор вышеназванного поста, проблема возникнуть может с любыми картинками, которые лежат на диске сервера вне папки указанной в настройках блога

Связанные записи

5 комментариев на запись “Решение проблем с аттачами WP при «нестандартной папке картинок (НЕ wp-content/uploads)» в версии WordPress 2.7.1 и новее”

  1. Пинк 12 марта 2009 в 13:13

    Не сталкивался с такой проблемой, но всё равно пропатчил у себя по крайней мере. Спасибо.

  2. kravru 12 апреля 2009 в 17:23

    Открываем файл wp-includes/post.php и комментируем там этот блок (строки 2566-2569)

    Вообще-то это строки 2543-2546

  3. Rahmetov 15 апреля 2009 в 2:39

    Закачал файл, ни фига не помогло :(

  4. Lecactus 22 июня 2009 в 19:34

    в 2.8 проблема такая же :-( так и не исправили. пришлось патчить по новой

  5. Максим 30 марта 2013 в 0:19

    У меня ничего не получается. Нашлось другое решение?