5/5 - (1 голос)

При миграции из одной CMS (DLE) в WordPress появилась проблема с некоторыми статьями. Проблема была в следующем, в конце урла некоторых статей стоит знак «-«. В dle url с таким окончанием отрабатывали без проблем, но в WP отдается 404. Так как таких статей много и менять вручную плохая идея пишем небольшой запрос и применяем все изменения непосредственно в БД MySQL

update `wp_posts` set post_name= trim(TRAILING '-' from post_name)  WHERE `post_type`='post' and `post_name` like  '%-'

Таким образом можно удалить любой последний символ в строке MySQL

В нашем случае мы получили рабочие ссылки типа

/kak-sbrosit-nastroyki-faervola-na-servere-windows-server-2008-r2-

Если необходимо заменить не последний символ, а какой-то определенный или часть строки, то можно воспользоваться следующим примером

update `wpf_posts` set guid= replace(guid,'http://www.itfb.com.ua','https://itfb.com.ua')