Как интегрировать Ускоренные Мобильные Страницы в проект Magento

Я начал интегрировать концепцию AMP в мой текущий живой проект Magento.

Я сделал ниже вещей.

один тестовый HTML-файл в папке www, как предлагается здесь, https://www.ampproject.org/docs/get_started/create/basic_markup.html это работало отлично.

Я сделал в моем проекте magento, в 1column.phtml,

<!DOCTYPE html>
<html amp lang="en" xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->getLang() ?>" lang="<?php echo $this->getLang() ?>">

в head.phtml, добавили первую строку, как показано ниже

<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1" />
<link rel="canonical" href="http://www.example.com" />
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "NewsArticle",
"headline": "Open-source framework for publishing content",
"datePublished": "2015-10-07T12:02:41Z",
"image": [
"logo.jpg"]
}
</script>
<style amp-boilerplate>body{-webkit-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-moz-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:-amp-start 8s steps(1,end) 0s 1 normal both;animation:-amp-start 8s steps(1,end) 0s 1 normal both}@-webkit-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}</style><noscript><style amp-boilerplate>body{-webkit-animation:none;-moz-animation:none;-ms-animation:none;animation:none}</style></noscript>
<script async src="https://cdn.ampproject.org/v0.js"></script>

Я запускаю домашнюю страницу, добавив #development=1, и получить ошибку в консоли, как показано ниже:

TypeError: aa.Object.getOwnPropertyDescriptor(...) is not a non-null object
(var e in b)aa.Object.defineProperties?aa.Object.defineProperty(a,e,aa.Object.ge...
validator.js (line 2, col 221)

ReferenceError: amp is not defined

Может кто-нибудь помочь мне решить эту проблему.

Заранее спасибо..

5

Решение

Попробуй удалить

xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->getLang() ?>" lang="<?php echo $this->getLang() ?>"

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

<!doctype html>
<html amp lang="en">
1

Другие решения

Что может быть проще — использовать расширение для интеграции AMP в ваш магазин Magento. Я использовал описанный, созданный с помощью основ кодирования: http://codingbasics.net/accelerated-mobile-pages-magento/

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

-2