Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Проблемы:

Часть изображений отсутствует в библиотеке (но все изображения есть на диске хостинга, по крайней мере должны быть)

Часть вложений (из-за этого или по другим причинам) не определяется как "медиафайл" в редакторе изображений.

Изображения хаотично разбросаны по папкам

Требуется перезалить библиотеку.

1. Обойти все записи.

В каждой записи, для каждого изображения (вложения) выполнить действия.

2. Скачать изображение на локальный диск(можно ли на директорию на сервере для ускорения?)

3. Закачать его обратно в библиотеку "из-под записи"

при этом файл автоматически (благодаря плагинам) вставится в уникальную для данной записи директорию (если в

директории есть такой же файл будет ли это проблемой?), привяжется к этой записи и , если превышает лимит,

продет процедуру resize.

4. Вставить в запись, с какой нибудь подписью (нужно для формирования [caption id="attachment_№")

5. Из свежевставленного изображения взять число wp-image-# и заменить этим номером числом число в wp-image-#

в исходном изображении

6. Из свежевставленного изображения взять ссылку src="xxx"

6.1. заменить этой ссылкой ссылку в исходном изображении

6.2. заменить/добавить (так как может отсутствовать) href в исходном изображении.

6.3 В [caption id="attachment_№"(при наличии, может отсутствовать) заменить № этим числом

7. удалить свежевставленное изображение из записи

8. Проверить имеется ли в коде исходного изображения класс my-image или my-image-min

Если нет

8.1 Если исходное изображение 1е в записи добавить my-image-min

8.2 Если исходное изображение не 1е в записи добавить my-image

(не знаю важно или нет но при добавление класса через редактор изображений классы size и wp-image меняются

местами)

На сколько я понимаю в результате таких действий должно (т.е. это является кончной целью):

1. Сформироваться новая библиотека.

2. Файлы изображений разложатся по папкам привязанных к записям, записи начнут ссылаться на новые залитые

изображения.

3. В записях появятся правильные wp-image-# (как в html коде так и в базах wp)

4. Изображения редактором изображений будут считаться "Медиафайлами" (в нем будет доступен выбор размера

изображения, и ссылка будет типа "медиафайл"

5. При этом изображения останутся на своих местах в записи и у них останутся станые подпись, title и alt

6. Добавится пользовательский класс (как в html коде так и в редакторе изображений)

7. В записях появятся правильные [caption id="attachment_№" (как в html коде так и в базах wp)

Может быть есть другой путь?

наверное это возможно сделать через базу данных, но результат должен быть эквивалентен "ручному" выполнению

пунктов 1-8 (я описал некоторые моменты, например формирование wp-image-#, может еще есть какие то невидимые

пользователю действия которые делает WP для таких действиях пользователя)

9 лет назад
selftrips
Алексей 
57 летРоссия
10 лет в сервисе
Был
9 лет назад