WordPress как на ладони

О переименовании директорий внутри медиа библиотеки

Как WP хранит связи в Библиотеке медиа файлов?

Столкнулся с такой проблемой: внутри директории images, которая в настройках WP указана для хранения медиафайлов, изображения сгруппированы по папкам (допустим по месяцам). Требуется переименовать одну из папок.

Я пробовал сделать следующее: переименовываю папку, делаю дамп БД, в дампе исправляю старое имя на новое, импортирую дамп обратно в БД. В результате, в библиотеке перестают отображаться иконки картинок из переименованной папки. Вместо них default.png и имя файла. То есть, отображается именно наличие файла, а не его отсутствие (не битая картинка, как если бы я просто переименовал папку и не стал в БД ничего исправлять). При этом, если на такую иконку кликнуть, то исходный файл отображается...

Почему так происходит? И как добиться, чтобы и иконки отображались опять?

0
Гость
8.5 лет назад
  • 0
    Kama9618

    Там структура папок завязана в самих функциях работы с библиотекой. И не так просто переименовать папку и чтобы все работало по прежней логике... Я с этим вопросом не сталкивался, и точно не знаю что там и как. Сейчас глянул быстро и нашел вот такой плагин, судя по всему плагин хороший!

    https://wordpress.org/plugins/enhanced-media-library/

    Я рекомендую попробовать его. И если не сложно отписаться о нем здесь.

    Комментировать
  • 0

    Спасибо.

    Плагин посмотрел (бегло). Мою задачу он, видимо, не решает...

    С проблемой разобрался. Правда, обнаружив причину, исправил все руками. Но, теперь, зная причину, можно и автоматизировать, при желании smile

    А причина была в том, что в мета-данных поля же хранятся с указанием длины поля. То есть, например так ' s:12:"123456789012" ', и если длина поля меняется (а редактируя названия директорий я, конечно, изменил длину), то и читаются поля неправильно, и необходимо скорректировать значение s:новая_длина_поля.

    Таким образом, чтобы все работало правильно, я заменил имена директорий в дампе БД, и скорректировал 's:___'.

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация