Ответы в темах

Просмотр 15 ответов — с 46 по 60 (всего 97)
  • @denisco, есть задача для seo стилизовать h3 под текст. Чтобы начало абзаца начиналось с h3 и без видимого разделения продолжалось в виде обычного текста.

    Вы намекаете на то что не пройдет html вадидация?

    Работа все еще актуальна.
    Где вы реальные спецы за реальные деньги?

    @flector,

    относительно недавно поисковики стали требовать к индексации и стили и скрипты

    IMHO, это для защиты с другого фронта, когда в отданном сервером HTML ссылок нет, а через JS они подставляются. Ссылки это как частный случай, там могут быть и редиректы и вирусы и т.д., в общем всё нежелательное что можно подтянуть через клиента не засвечивая в отданом HTML.
    + сейчас отдельные боты поисковиков оценивают качество сайта (пользовательские факторы, оптимизация картинок скриптов и т.д.), поэтому им уже нужно обрабатывать клиентскую часть как обычному браузеру. При этом они работают параллельно с ботами, которые клиентскую часть игнорят.

    Поэтому в максимуме нужно постараться угодить всем ботам.

    Тем временем я маленько переделал HTML/CSS по своей проблеме.
    Получилось HTML:

    <h1 class="show">Museums,<br/> Galleries, Exhibition Halls</h1>
    <div class="h1Area"></div>

    CSS

    .content .mosaic .h1Area {
    	float:left;
    	height:100%;
    }
    .content .mosaic h1.show {
    	margin:0;
    	font-family:"MullerBold", Arial, "Helvetica CY", "Nimbus Sans L", sans-serif;
    	font-size:30pt;
    	line-height:30pt;
    	color:#fff;
    	letter-spacing:4px;
    	text-transform:uppercase;
    }
    @media screen and (min-width: 971px) {
    	.content .mosaic h1.show{
    	position:absolute;
    	right:100%;
    	top:0;
    	padding:25px 35px 16px 0;
    	white-space:nowrap;
    	word-wrap:normal;
    	-webkit-transform-origin:100% 0;
    	-moz-transform-origin:100% 0;
    	-o-transform-origin:100% 0;
    	transform-origin:100% 0;
    	-ms-transform-origin:100% 53%;
    	/* Переворачиваем текст */
    	-webkit-transform:rotate(-90deg);
    	-moz-transform:rotate(-90deg);
    	-o-transform:rotate(-90deg);
    	transform:rotate(-90deg);
    	-ms-transform:rotate(180deg);
    	}
    }
    @media screen and (max-width: 970px) {
    	.content .mosaic .h1Area {
    	display:none;
    	}
    	.content .mosaic h1.show{
    	padding:0 0 16px 0;
    	font-size:20pt;
    	line-height:20pt;
    	}
    }

    Всё вроде работает как нужно, но смущает конструкция

    @media screen and (min-width: 971px) {...}
    .....
    @media screen and (max-width: 970px) {...}

    Есть ощущение что не очень изящная конструкция.

    @flector,

    а вот css они учитывают всегда.
    еще с тем времен, когда в display:none пихали туеву кучу ключевиков.

    Совершенно верно, только это означает как раз обратное — в то время когда юзер не видит ссылок в display:none, поисковику абсолютно пофиг что display:none, поэтому он и видит все ссылки в коде.

    @sevlad, да там уже в CSS используется определение размера экрана, через него собственно и меняются свойства у этих <H1>.

    У меня была мысль собрать этот набор CSS в одно условие, но этот код писал довольно опытный программист, и он даже с использованием @media screen max-width оставил 2 заголовка + на jQuery происходят не до конца понятные мне вещи.
    Есть опасение что не всё так просто.

    @flector, на сколько я понимаю, поисковики в массе своей игнорируют всё что происходит на клиенте (CSS/JS).
    Соответственно он видит то что ему отдал сервер, а это 2 заголовка с указанием классов, что там с этими классами происходит, поисковику знать не нужно.

    но вообще верстальщик херню сотворил, зачем было 2 заголовка то химичить, если можно в media запросы разные стили для одного заголовка запихнуть?

    Черт его знает, может болел… 😉

    В общем мысль я понял, попробую всё в одно условие загнать.

    @sevlad, ну вот прям так не искал.
    В яндексе / гугле подобными запросами искал, в плагинах искал другими запросами.
    А что, среди плагинов в выдаче есть подходящий?
    Я например пробовал самый первый — XML Sitemap & Google News feeds — побороть его не смог.

    У Polylang есть схема работы с языками через GET, а есть через поддомены (наш случай).
    Возможно какой-то плагин и заработает через GET, но нам нужно на поддоменах…

    • Ответ изменён 7 лет, 4 месяца назад пользователем noindex.

    @flector, ну так-то да, многое от самого плагина зависит…

    В общем грохнул я поле ‘active_plugins’ в БД, сайт заработал все плагины деактивировались.
    Начал по одному включать и после включения одного самописного сайт начал валиться в ту же самую ошибку.
    В принципе я даже догадываюсь почему именно он съедает память, он периодически гоняет большие массивы данных в тч через WP CRON.
    Вопрос в чем — почему он не приводил к этой ошибке до отключения совершенно постороннего плагина?
    При деактивации одного плагина происходит что-то вроде реинициализации всех плагинов поголовно?

    @flector, при чем тут база?
    1. Память жрет wp-db.php, который отвечает за работу с базой
    2. Тут субъективно конечно и я могу ошибаться, но данный плагин с файлами ничего на делает, значит деактивация привела только к изменению базы.

    Итого = после изменений в базе, начал жрать память скрипт по работе с базой.
    Такая вот нехитрая, но возможно ошибочная логика.

    Менять хостинг и удалить прожорливые плагины тоже не вариант, да и больно кардинально.
    Хостинг до деактивации плагина в принципе устраивал, а лишних плагинов кроме того что попытался удалить — нет. Только вместо него нужно ставить новый.

    @flector, да, Вы были правы.

    Но за многие годы работы, я слишком часто сталкивался с отписками саппорта в стиле «у нас всё ок, разбирайтесь в своём коде».
    Так же было время, когда я создавал и возглавлял службу поддержки, в которой помимо руководства частенько «сидел» на первой-второй линии.
    Так что знаю как это всё работает 🙂

    Поэтому перед обращением в «последнюю инстанцию» я всегда стараюсь найти железо-бетонные аргументы и перепробовать все варианты решения проблем без их участия.
    В данном случае меня сбила с толку ситуация с мнимой работой после отключения директивы RewriteEngine On
    в настройках WP.
    Казалось что правильный редирект происходит, но на самом деле просто пропадала ошибка зацикленности и открывалась страница на которую уже привел зацикленный редирект.

    А к концу дня мозг уже на столько кипел, что не мог адекватно воспринимать ситуацию.
    Если бы не @timurhamitov, думаю сейчас я бы уже писал в саппорт 🙂

    В любой случае спасибо за участие! 🙂

    Господа, проблема решена.
    Пришел настоящий программист, понаступав часок на мои грабли, догадался покурить сайт хостера (Мастерхост)….

    В итоге заработало так (может кому в будущем пригодится):

    RewriteEngine On
    RewriteCond %{HTTP:PORT} !^443$
    RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

    @flector, в wp-config.php изменения откатил, .htaccess тоже содержит только стандартные директивы WP.

    Сейчас я добавил в htaccess Ваш код, получил:

    RewriteCond %{HTTPS} off
    RewriteCond %{HTTP:X-Forwarded-Proto} !https
    RewriteCond %{HTTP:HTTPS} !=on [NC]
    RewriteCond %{REQUEST_URI} !robots.txt
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    
    #BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    Только появляется проблема — я не могу даже попасть в админку чтобы в пермалинках нажать сохранить, возникает та же ошибка с цикличными редиректами, даже на HTTPS…

    • Ответ изменён 7 лет, 4 месяца назад пользователем noindex.

    @flector, еще разок.
    В какой момент и сколько раз нужно обновлять пермалинки и как?
    Я уже раз 5 обновлял и пермалинки (нажимал кнопку «сохранить») и основную страницу настроек.
    При ручном вводе HTTPS все ссылки работают корректно.
    В пермалинках такая картина: http://prntscr.com/ew27yn
    В основных настройках такая картина: http://prntscr.com/ew29a6

    Ребят, что-то я запутался совсем…
    Не работают редиректы уже и на статичном сайте…

    Сейчас на сайте нативный htaccress

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    Что ему дописать чтобы появился редирект ?%)

    Такой формат уводит сайт в цикл:

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    </IfModule>
    
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    Такой формат работает с тем же эффектом:

    RewriteCond %{HTTPS} off
    RewriteCond %{HTTP:X-Forwarded-Proto} !https
    RewriteCond %{HTTP:HTTPS} !=on [NC]
    RewriteCond %{REQUEST_URI} !robots.txt
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    Вот еще нерабочий вариант:

    RewriteEngine On
    RewriteCond %{HTTP:SSL} !1
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L,R=301]
    
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    @flector, мое мнение о том что определенные директивы работают, когда я убираю
    RewriteEngine On
    ошибочны.
    Редирект не начинает работать, просто когда я убираю это директиву и нажимаю обновить, URL в браузере УЖЕ с HTTPS.
    Поэтому создается впечатление что редирект сработал, а на самом деле просто цикличность пропала.

    Сейчас проверил все найденные ранее конструкции редиректа БЕЗ директив WP в htaccess — ниодна не сработала.
    Либо редиректа нет либо есть с зацикливанием.

    • Ответ изменён 7 лет, 4 месяца назад пользователем noindex.
    • Ответ изменён 7 лет, 4 месяца назад пользователем noindex.
    • Ответ изменён 7 лет, 4 месяца назад пользователем noindex.
    • Ответ изменён 7 лет, 4 месяца назад пользователем noindex.
    • Ответ изменён 7 лет, 4 месяца назад пользователем noindex.

    @flector, конечно нелогично.
    Закачиваю на домен статичный сайт из 3-х php файлов, без базы.
    Закачиваю туда такой htaccess

    
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    </IfModule>
    

    Проверяю работу по HTTPS — всё ок.
    Захожу на HTTP, получаю редирект на HTTPS — всё ок.

    Какая в данном случае проблема у хостера?
    Её нет — логично?

    Закачиваю WP.
    В htaccess добавляю строки, которые требует WP, в итоге получаем такой htaccess:

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    </IfModule>
    
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    Проверяем сайт по HTTPS — все ок.
    Заходим на HTTP — получаем циклический редирект.
    Что изменилось в отличие от статично сайта?
    Поставили WP и дописали в htaccess строки, которые он требует.
    Вывод — проблема в связке «WP — директивы htaccess» — логично?

    @yube, я конечно могу ошибаться, но разве в случае нормальной работы со статичным сайтом это важно?

    Не подумайте что мне жалко, просто не понимаю какая может быть разница в какой переменной лежит признак HTTPS если без WP циклического редиректа нет, значит Apache понимает что юзер УЖЕ на HTTPS.
    Скрин из phpinfo — http://prntscr.com/ew1e4x

Просмотр 15 ответов — с 46 по 60 (всего 97)