因此谷歌宣布加速移动页面(AMP) https://github.com/ampproject/amphtml
Wordpress发布了一个插件,其他发布商发布了一些支持......但基本上大多数发布商/网站都会有一组替代AMP内容的网址.
我不认为很多网站会很快将他们的整个前端转换为AMP,那么移动网络如何利用新的AMP内容呢?
那么移动浏览器何时或如何决定显示此AMP内容?如果它在HTML <head>部分中,则移动浏览器在下载该部分后将仅知道AMP内容的位置.是否有在HTTP标头中发送AMP网址的规范?或者还有另一种方式吗?
AMP页面是否可以与非正式的自定义组件一起使用?
我可以想象得到一个官方版本最适合传播使用,但对于只想要在一些自定义组件中编程的1个网站,是否需要将其组件批准为官方版本,或者它可以只创建一个并将其包含在自己的代码中?
https://github.com/ampproject/amphtml/blob/master/spec/amp-html-components.md
我正在尝试将底部有Disqus评论的文章转换为AMP.要做到这一点,我使用的是<amp-iframe/>:
<div id="disqus_thread">
<amp-iframe
src="https://disqus.com/embed/comments/?https&base=default&version=11a9d09102788744769550f3928faf15&f=<<DISQUS ID GOES HERE>>&t_u=<<DISQUS SITE URL GOES HERE>>&s_o=default"
sandbox="allow-same-origin allow-forms allow-modals allow-scripts allow-popups"
layout="responsive"
frameborder="0"
width="600" height="500">
</amp-iframe>
</div>
Run Code Online (Sandbox Code Playgroud)
iframe加载,似乎加载了所有脚本依赖项,但没有显示任何内容.如果您检查iframe的内容,Disqus会打印一条消息,指出Disqus无法加载.我不知道如何从这里调试它.有什么我想念的,或者我应该以不同的方式接近它?
此外,像Disqus这样的评论提供方式是由插件确定的任意高度.所以我可能无法在iframe上设置固定的高度.我需要做些什么才能使其正常工作?
我很高兴我的 AMP 页面终于得到验证,但当调用https://fonts.googleapis.com/css?family=Georgia|Times+New+Roman时,我总是收到 403 Forbidden 。我已按照文章页面的 AMP 示例进行操作。还有其他人遇到过这个吗?
我们的cms托管多个域,并且通常尽可能更容易使用相对路径.我只是想知道是否可以使用:<link rel="amphtml" href="/path/to.amp.html" />
而不是绝对的http(s)url
我需要手动编写AMP页面代码,并将它们添加到我的Wordpress网站,这样我才能确保它们是完美的.我使用的所有插件都没有完成我需要的所有工作,并导致Search Console出错.
我已经创建了一个可以玩的子主题,并且一直试图添加一个新的PHP页面模板,但没有运气!
我手动编码的原因是
我有一个网站多年,有一些表格可以登录等.最近我做了所有谷歌的AMP证明,但表格停止工作.我现在正在寻找几天,但我找不到合适的答案.
首先,我包含了所有必要的脚本和代码,就像在此页面上一样.之后,出现了第一个错误:"表单提交失败::响应必须包含AMP-Access-Control-Allow-Source-Origin标头".
然后我在页面中添加了标题.之后,第一个错误消失,但出现第二个错误:"表单提交失败::意外令牌<在位置0的JSON中".我在这里读过这个,但它对我来说没有真正的解决方案.
在这个阶段,我陷入了困境,我认为我走错了道路就像这样一个简单的形式.我只想回应一下输入......你能帮我吗?
亲切的问候,
帕特里克
<?php
header("Access-Control-Allow-Credentials: true");
header("Access-Control-Allow-Origin: *.ampproject.org");
header("AMP-Access-Control-Allow-Source-Origin: https://www.domain.com");
header("Access-Control-Expose-Headers: AMP-Access-Control-Allow-Source-Origin");
?>
<!doctype html>
<html amp>
<head>
<meta charset="utf-8">
<script async src="https://cdn.ampproject.org/v0.js"></script>
<script async custom-element="amp-form" src="https://cdn.ampproject.org/v0/amp-form-0.1.js"></script>
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">
<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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="canonical" href="https://www.domain.com/test.php"/>
<title>AMP form</title>
</head> …Run Code Online (Sandbox Code Playgroud) 有什么方法可以配置我manifest.json禁用浏览器弹出窗口,要求“安装”站点?我正在使用以下 JavaScript 代码来防止它:
window.addEventListener('beforeinstallprompt', function(e) {
e.preventDefault();
return false;
});
Run Code Online (Sandbox Code Playgroud)
但是我也需要在 AMP 版本上阻止它,而且我无法在那里运行 JavaScript 代码。
javascript service-worker amp-html progressive-web-apps manifest.json
无法加载资源:服务器响应状态为500(内部服务器错误)cdn.ampproject.org/v0.js:68响应必须包含AMP-Access-Control-Allow-Source-Origin标头Yd @ cdn.ampproject .ORG/v0.js:68 cdn.ampproject.org/v0.js:68表单提交失败:错误:响应必须包含AMP存取控制允许来源-Origin标报道
我们如何确保其正常运作.
应用所有标签. https://github.com/ampproject/amphtml/blob/master/spec/amp-cors-requests.md
到目前为止,我还没有找到在AMP页面上创建粘性标头的可靠方法。我知道有CSS解决方法/黑客,但是在生产环境中我什么也不能使用。一个简单的“ position:fixed;” 不幸的是,在我的情况下不起作用。
在所有组件中,我以为会有一个可以滚动滚动的body类,但是我还没有发现任何东西。同样不要以为“ amp-position-observer”会有用。
我想念什么吗?理想情况下,我希望能够在滚动X像素数量之后切换元素的类名。如果在AMP中可行?
amp-html ×10
php ×3
javascript ×2
cors ×1
css ×1
disqus ×1
fonts ×1
forms ×1
google-amp ×1
google-api ×1
iframe ×1
post ×1
wordpress ×1