Я нахожу различные ответы, которые используют такие вещи, как javascript, для создания изображений Retina на всем сайте, но это не то, что я здесь. Вот немного фона:PHP Условно для обслуживания различного изображения, если Retina Display
Я создал тему WordPress и добавил загрузку изображений как для логотипа обычного размера, так и для дисплеев Retina (я сделал то же самое для значка) ,
Но я все еще изучаю PHP, и у меня есть время, пытаясь понять, как написать условный оператор, который будет обслуживать изображение X для дисплеев не Retina, изображение Y для дисплеев Retina (@ X2) или X изображение, если ни один не был загружен для Y.
Если это вообще полезно, я использую плагин OptionTree для создания различных параметров в моей теме, а идентификаторы для моих двух изображений - «логотип-регулярный» и «логотип», логотип-сетчатка».
Это то, что я имею в своем заголовке прямо сейчас для логотипа. Очевидно, что он загружает только обычный логотип:
if (! function_exists('ot_get_pixie_option')) {
/* get the logo */
$logo = ot_get_option('logo-regular', array());
if (! empty($logo)) {
echo '<a href="' . get_home_url() . '"><img src="' . $logo . '" alt="' . get_bloginfo('name') . '" /></a>';
}
};
PHP - это серверная информация, информация о том, является ли экран * сетчаткой * или нет на стороне клиента. Без использования JavaScript или CSS вы не можете знать, имеет ли клиент, посещающий ваш сайт, экран * сетчатки * или не только с помощью PHP. Лучшее, что вы можете сделать, это проверить агент пользователя и сделать предположения, что некоторые пользовательские агенты * должны иметь * сетчатые экраны *. Однако это не очень надежный способ сделать это. Нормой в этом случае является использование мультимедийных запросов CSS и фоновых изображений. – Novocaine