Как переименовать ссылки внутри всех страниц?

Главные вкладки

Аватар пользователя treusp treusp 10 января 2011 в 19:34

Возникла нужда (ну как минимум сильное желание) исправить неудачно выбранную директорию для аплоада через IMCE.
Понятно, что новые картинки начнут заливаться, куда надо. А со старыми что делать?
Можно ли как-то xxx/*.jpg переименовать в yyy/*.jpg по всем типам материалов?
Теоретически, конечно, я могу выгрузить дамп базы, текстовым редактором сделать замену и импортировать обратно.
Но как-то это некузяво.
Наверняка же можно SQL запросом все забабахать?
Хотя бы просто по контексту /xxx/.img/ заменить на /yyy/img/ (да, да, в первой подстроке есть символ точка, который в т.ч. хочу убрать)

Спасибо!

P.S. Я совсем на новеньких, даже названия таблиц, где хранятся тексты, не знаю.

Комментарии

Аватар пользователя ubercoder ubercoder 10 января 2011 в 20:39

Самый простой способ сделать «в лоб» — экспортировать базу (сделать дамп всей базы с drop table) в текстовом редакторе сделать замену и импортировать заново.

Если картинки только в тексте нод такой запрос должен помочь:

UPDATE
  node_revisions
SET
  body = REPLACE(body, '/xxx/.img/', '/yyy/img/'),
  teaser = REPLACE(teaser, '/xxx/.img/', '/yyy/img/')
Аватар пользователя treusp treusp 10 января 2011 в 22:10

Да, в только в теле нод (page, story и нескольких самодельных). А если в блоке что и встретится - руками поправлю.
Большое спасибо!