X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Подводные грабли Google-AMP и Яндекс-Турбо
k0ttee
k0ttee
Topic Starter сообщение 24.2.2018, 17:21; Ответить: k0ttee
Сообщение #1


Вот немного о том, какие проблемы возникали с Google-AMP и Яндекс-Турбо (на самописном сайте без движков).

Что не так с AMP-страницами реализованными плагином Wordpress:
- ссылки ведут на обычные страницы
- навигационного меню нет даже кастрированного
- в подвале предательская dufollow-ссылка на вордпресс.ком

Что не так с Турбо-страницами? Да тоже все плохо.

Наверно не нужно объяснять, что отсутствие навигации на страницах - верный путь потерять посетителя.

Вот несколько поблем, которые могут возникнуть в ходе рукопашной реализации или допиливания плагинов.

Кот перерабатывал старый сайт, адреса которого в классическом стиле /страница.html. А раз так - значит и AMP будет краше сделать в классическом виде адресов, то есть не /страница.html/amp а будто бы на сервере есть каталог /amp/страница.html. Разместить можно хоть на поддомен.

Проблема с путями к картинкам

Относительные пути вида <img src="картинки/картинка.png"> на AMP-адресах ссылаются на сайт.ру/amp/картинки/картинка.png
Можно поколдовать через .htaccess а можно просто подставлять в началах относительных путей слэш.
#добавить слеш в начало относительных путей картинок (вместо img.png будет /img.png)
$article=preg_replace('/<img([^>]*)src=["\']([^"\'\\/][^"\']*)["\']/', '<img\1src="/\2"', $article);

Регулярное выражение выглядит страшновато, зато сработает и с тэгами картинок у которых навалено атрибутов вида <img альт тайтл класс айди src="картинка">

Проблема с зоопарком ссылок

Часто ссылки в контенте сделаны то задницей, то передницей. Никогда не знаешь, попадется тебе относительная или абсолютная ссылка с протоколом или без.
Я все привел к минимализму и стандартизации - отнисительные начинающиеся с /amp/

#все внутренние ссылки будут относительными (с добавлением /amp/ в начале)
$article=str_replace('https://'.$_SERVER["HTTP_HOST"].'/','/',$article); #абсолютные внутренние ссылки сделать относительными (вместо site.ru/page.html будет /page.html)
$article=str_replace('http://'.$_SERVER["HTTP_HOST"].'/','/',$article); #абсолютные внутренние ссылки сделать относительными (вместо site.ru/page.html будет /page.html)
$article=str_replace('//'.$_SERVER["HTTP_HOST"].'/','/',$article); #абсолютные внутренние ссылки сделать относительными (вместо site.ru/page.html будет /page.html)

$article=preg_replace('/((?:href) *= *[\'"](?!(\/\/)))/i', "$1/amp", $article); #дописать /amp к относительным ссылкам (вместо /page.html будет /amp/page.html)


Проблема с меню

На модных нынче страницах запрещен свой Javascript, поэтому неплохое меню сделанное JS-спойлерами нельзя использовать.
Придется переписать его с JS на CSS.

Вот легкий пример спойлера, чтобы скрывать группы навигационных кнопок-ссылок. Пример будет работать во всех браузерах, умеющих псевдокласс :checked (будет работать и в старой Opera 12, и даже в Interner Explorer 9).

.spoiler >  input + .box {
    display: none;
}
.spoiler >  input:checked + .box {
    display: block;
}

<div class="spoiler">
     <input type="checkbox" >
     <div class="box">
           Содержимое спойлера
     </div>
</div>


--------------------
Задонь кибер-коту на крипто-вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
airman
airman
сообщение 26.2.2018, 15:52; Ответить: airman
Сообщение #2


Ты еще забыл упомянуть, что валидатор https://validator.w3.org/ не может договориться с гугловским валидатором AMP страниц https://search.google.com/test/amp. Приоритет конечно на Google иначе он не будет индексировать AMP страницы, выдавая ошибку.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
k0ttee
k0ttee
Topic Starter сообщение 26.2.2018, 17:04; Ответить: k0ttee
Сообщение #3


Не получается совместить атрибут языка документа с атрибутом этой байды, поэтому - или <html amp> или <html lang="ru">

Вычитал, что можно <html amp-data> однако и на ёлку залезть и жопу не ободрать не удалось.

Еще вместо <style amp-custom> можно <style amp-data="custom"> или типа того... Гугля начнет предупреждать, что применен устаревающий вариант. Но даже так придется выбирать - между валидатором W3C и валидатором AMP.

И зоопарк ссылок не удалось победить. :(


--------------------
Задонь кибер-коту на крипто-вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
k0ttee
k0ttee
Topic Starter сообщение 6.3.2018, 8:17; Ответить: k0ttee
Сообщение #4


Вопрос на засыпку...
Если свои свисто-перделки на JS делать нельзя, как тогда прикрутить к AMP-странице уведомление "сайт собирает куки" требуемое в законодательном порядке?
Или страницы грузятся с серверов гугла, так что посещения сайта деюре и не было?


--------------------
Задонь кибер-коту на крипто-вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
airman
airman
сообщение 6.3.2018, 10:03; Ответить: airman
Сообщение #5


k0ttee, забей пока, пусть хоть в поиске появятся для начала, а то до сих пор нет :o Хотя ошибок валидатор не находит...

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Аналоги Яндекс Директ
3 kuz999 1670 26.3.2024, 14:12
автор: knezevolk
Открытая тема (нет новых ответов) ⭐⭐⭐ Google Voice | Gmail - OLD аккаунты "SMS и звонки" ⭐⭐⭐
12 Chekon 3808 24.3.2024, 13:56
автор: Chekon
Горячая тема (нет новых ответов) Google запускает новый браузер элементами искусственного интеллекта
38 arendator 13310 21.3.2024, 18:10
автор: Rebex
Открытая тема (нет новых ответов) Сайт не индексируется в Google без добавления ссылок в адурилку
4 Nekit 984 20.3.2024, 21:44
автор: MorKer
Открытая тема (нет новых ответов) Если статья не в индексе Google - она уникальна или нет?
2 uahomka 795 20.3.2024, 11:17
автор: Vmir


 



RSS Текстовая версия Сейчас: 28.3.2024, 16:20
Дизайн