а картинки постов вставлялись в редакторе? или бралась из миниатюры? если вставлялась, то, может, дело в относительных путях к картинке и в наличии\отсутствии слэша в начале адреса. у меня такое бывало. в любом случае, это можно исправить sql-инъекцией (заменить http://site.net/category/site.net на http://site.net/category), мне кажется.
да, вставлялись в редакторе
как правильно прописать команду?
сначала надо убедиться, что картинки действительно лежат по адресу типа
http://site.net/category/wp-content/uploads/2012/11/foto-200×200.jpeg
теперь надо зайти в БД через phpMyAdmin и на вкладке SQL выполнить команду вида:
UPDATE table SET field = REPLACE(field, 'старое слово', 'на новое слово');
где table — название таблицы (в твоем случае это будет wp_posts), а field — поле, в котором менять (в твоем случае это будет post_content).
то есть, пишешь
UPDATE wp_posts SET post_content = REPLACE(post_content, 'site.net/category/site.net', 'site.net/category');
и нажимаешь GO.
но перед этим ты ОБЯЗАТЕЛЬНО должен сделать бэкап БД. желательно еще и бэкап из-под WP.
еще это можно сделать через functions.php, но я не помню, как именно.
правильный вариант ссылки тот по которому не грузится
как скорректировать правильно sql команду?
да, так
но вот посмотрел сам это поле в базе и там такой адрес
src=»site.net/wp-content/uploads/2012/11/foto-200×200.jpeg»
как и в самой записи, если редактировать статью через админку… что-то добавляет его, а что…
проклятье, помоему дело вот в чем
src=»site.net/wp-content/uploads/2012/11/foto-200×200.jpeg»
нету вначале http://
создал статью, вставил картинку а там адрес с http и все отображается
upd:добавил в ручную и все отображается в статьях
теперь надо везде сразу заменить как-то….
вот, я же говорил, что дело в путях. надо чтобы было
wp-content/uploads/2012/11/foto-200×200.jpeg
или
/wp-content/uploads/2012/11/foto-200×200.jpeg
я все время путаю. исправь для начала в одном посте это значение. выясни, при каком работает и тогда можно делать нужный запрос.
да, должен быть либо полный путь, либо относительный. с новыми постами все будет нормально, но у тебя, как я понял, задача поправить старые. лучше сделать относительные пути, чтобы в будущем такого не было, если надумаешь еще раз сменить домен.
исправил сделал так
src=»http://site.net/wp-content/uploads/2012/11/foto-200×200.jpeg»
как блог добавляет, и все отображается
как теперь это http:// везде проставить?
Сделал
UPDATE ob_posts SET post_content = REPLACE(post_content, ‘site.net’, ‘http://site.net’);
Аминь! 🙂
Вам отдельное спасибо, что указали направление, и потратили свое время 🙂
как я сказал выше, если ты везде заменишь на полный путь, будут проблемы в будущем. по уму тебе надо заменить все
site.net/wp-content/uploads/
на
/wp-content/uploads/
но я не уверен в нужности слэша в начале. это нужно проверить методом тыка.
если хочешь полные пути, тогда запрос будет такой:
UPDATE wp_posts SET post_content = REPLACE(post_content, 'site.net/wp-content/uploads/', 'http://site.net/wp-content/uploads/');
но это некруто.
не забудь про бэкап перед инъекцией, я могу что-то напутать.
от такой замены могут вылезть ошибки, кстати. например, если в каком-то посте был указан адрес http://www.site.net, то теперь он будет выглядеть как www.http://site.net
🙂
надеюсь, не вылезет.
рад был помочь.