Wordpress генерирует странные ссылки для изображений

Хай. После загрузки изображения в Wordpress отображается какая-то странная ссылка вместо «ссылка на проект/wp-content/uploads/2019/04/IMG_20171129_125745.jpg».

Я заметил, что он показывает некоторую информацию из базы данных. Например, идентификатор и дата, размер и т. д. Но непонятно, почему WordPress это делает.

Когда я проверяю источник, я получаю эту странную ссылку:

<a class = "logo" href = "http://localhost/project/"><img src = "22, 22, IMG_20171129_125745, IMG_20171129_125745.jpg, 667317, http://localhost/project/wp-content/uploads/2019/04/IMG_20171129_125745.jpg, http://localhost/project/img_20171129_125745/, , 1, , , img_20171129_125745, inherit, 0, 2019-04-07 10:54:26, 2019-04-07 10:54:26, 0, image/jpeg, image, jpeg, http://localhost/project/wp-includes/images/media/default.png, 1700, 1000, Array" alt = "logo"></a>

Вот PHP-код

<a class = "logo" href = "<?php echo get_home_url(); ?>/"><img src = "<?php the_field('website_logo','options');  ?>" alt = "logo" /></a>

Примечание. Здесь я использую расширенные настраиваемые поля.

можете ли вы показать код, пожалуйста?

Yassine CHABLI 07.04.2019 13:13

Hy я обновил код

Ken 07.04.2019 13:19

я имею в виду php-код

Yassine CHABLI 07.04.2019 13:20
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
3
176
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

*Фиксированный

Мне просто нужно было использовать URL-адрес изображения в качестве возвращаемого значения, я случайно использовал массив для возвращаемого значения. Спасибо.

Ответ принят как подходящий

Просто чтобы добавить к вашему ответу для людей, у которых возникнут проблемы в будущем, проблема заключалась в том, что поле изображения ACF, которое вы вызывали, было установлено на объект изображения, и вы ожидали, что оно вернет только URL-адрес. Есть 2 способа это исправить:

Вариант 1. Отредактируйте поле изображения, чтобы оно возвращало только URL-адрес изображения.

Плюсы

  • Легко и просто сделать, самое быстрое решение
  • Хорошо для встроенного фона css

Минусы

  • Невозможно контролировать размер возвращаемого изображения
  • Невозможно отобразить тег alt изображения, который может повлиять на SEO

Вариант 2. Используйте правильный код изображения ACF, чтобы отобразить то, что вы ищете.

Лучшим способом отображения изображения будет использование поля объекта «Изображение», поскольку оно обеспечивает гораздо лучший подход, поскольку у вас есть доступ ко всем атрибутам изображения, а не только к URL-адресу. Чтобы отобразить их, см. ниже:

$image = get_field('website_logo','options');

<a class = "logo" href = "<?php echo get_home_url(); ?>/">
    <img src = "<?php echo $image['url'];?>" alt = "<?php echo $image['alt'];?>" />
</a>

Дополнительную информацию об использовании объекта изображения при использовании полей изображения ACF можно найти в нажмите здесь.

Плюсы

  • Так же легко и просто сделать
  • Позволяет использовать alt, размеры, заголовок, подпись и т. д. изображения.
  • Позволяет вам использовать одно и то же изображение с легкостью дальше в коде, без необходимости снова вводить функцию поля

Минусы

  • Не идеальное решение при встраивании фонового изображения css, вместо этого используйте URL-адрес изображения.

Другие вопросы по теме