Я использую следующий JavaScript для определения ширины экрана и использования его в качестве константы в файлах шаблонов с помощью условных операторов для отображения/отображения не отображаемых частей моего сайта. Хотя он не имеет ничего общего с моими вопросами, но на всякий случай ... Да, я использую WordPress. Также я уже использую библиотеку PHP с mobiledetect.PHP, JavaScript - правильно ли определять ширину экрана путем перенаправления заголовка
function getLayoutWidth() {
if (isset($_GET['width'])) {
define("SCREEN_WIDTH", $_GET['width']);
} else {
echo "<script language='javascript'>\n";
echo " location.href=\"${_SERVER['SCRIPT_NAME']}?${_SERVER['QUERY_STRING']}"
. "&width=\" + screen.width;\n";
echo "</script>\n";
exit();
}
}
Важно:
Другие методы, как ...... Давайте предположим, что, если мой сайт 2MB размер, он будет по-прежнему нагрузки 2MB содержания, а затем скрыть 1.5Mb от этого на мобильных устройствах, используя свойства CSS, такие как
display:none;
. Принимая во внимание, что я не хочу, чтобы эта часть шаблона загружалась сама по себе, поэтому ничего не нужно было скрывать.Я не хочу загружать всю библиотеку JavaScript, например, jQuery или так, потому что
location.href=\"${_SERVER['SCRIPT_NAME']}?${_SERVER['QUERY_STRING']}". "&width=\" + screen.width;
- это единственный JavaScript на моем весь сайт. Остальное - это чистый PHP, HTML и CSS. Я даже отключил jQuery WordPress в интерфейсном шаблоне.
UPDATE: Поскольку некоторые друзья не получили мою точку зрения, хотя я уже ясно, что я не хочу, чтобы загрузить содержимое в DOM вообще, я даю немного больше ясности здесь ... ..
Для примера --- @ 1200px Я хочу, чтобы отображалась только одна боковая панель. @ 1600px Я хочу, чтобы 2 боковых панели отображались, и более 1600 пикселей. Мне нужно отобразить 3 боковых панели. Пожалуйста, не предлагайте решения Media Queries, как я уже знаю, и это именно то, что я не хочу делать. Я хочу избежать загрузки содержимого в DOM. Пожалуйста, давайте сосредоточимся только на заданных вопросах. Также, пожалуйста, не отправляйте предложения в качестве ответов. Пусть другие отвечают правильными ответами. Пожалуйста, разместите предложения в разделе комментариев.
Мои вопросы:
Является ли это хороший/правильный способ сделать с точки SEO стенд? Если не так?
Мой URL-адрес отображается как
example.com/my-product-category/my-product-name/?width=1440
Как удалить/?width=1343
и отобразить толькоexample.com/my-product-category/my-product-name
?
Лично, если бы я хотел получить размеры экрана, я бы установил cookie. Если файл cookie не существует, установите его, иначе прочитайте его (он должен быть способен читать как js, так и php). – RamRaider
@RamRaider Спасибо за предложение. Ну, я очень плохо разбираюсь в этой части программирования. Я в первую очередь парень из HTML/CSS. Будете ли вы достаточно любезны ответить на этот вопрос некоторым PHP-кодом, чтобы установить и прочитать cookie –
. Вам нужно делать это с помощью CSS, а не php/jscript. – Wobbles