Wordpress изменить размер изображения с пользовательским именем файла

Я использовал WordPress add_image_size функция на мою тему function.phpи работает нормально но не для того что мне нужно.

Я использую функцию в режиме мягкой пропорциональной обрезки, например: add_image_size('mySIZE', 420, 9999)Ведьма означает, что высота изображения изменится, а имя файла будет выглядеть как "image_name-420x230.jpg".

Поскольку я получаю изображение через AJAX, мне нужно имя файла, ширина будет 420, но я не знаю высоту каждого загружаемого изображения.

что мне нужно, это функция, которая изменяет размер и дает имя файла без высоты, например "image_name-420.jpg"

есть идеи как это сделать?

Спасибо!

1 ответ

Ну, я нахожу свой выход.

Мой AJAX получает JSON, когда я делаю запрос MySQL, я перебираю массив, получая post_id.

так как у меня есть post_id, я могу использовать функцию wp get_the_post_thumbnail($posr_id, 'mySIZE') после того, как у меня есть html img нужного размера, я получаю src из строки и добавляю массив результатов и возвращаю JSON.

for ($i = 0; $i < count($results); $i++) {
    $img = get_the_post_thumbnail($results[$i]['id'], 'mySIZE');
    preg_match( '@src="([^"]+)"@' , $img, $match );
    $src = array_pop($match);
    array_push($results[$i], $src);
}

return json_encode($results, JSON_PRETTY_PRINT);
Другие вопросы по тегам