AMP HTML ページの作成
まずは以下のマークアップから見ていきましょう。これは、今後のボイラープレートとしても利用できます。 これをコピーし、.html 拡張子のファイルとして保存してください。
<!doctype html> <html amp lang="en"> <head> <meta charset="utf-8"> <script async src="https://cdn.ampproject.org/v0.js"></script> <title>Hello, AMPs</title> <link rel="canonical" href="https://amp.dev/ja/documentation/guides-and-tutorials/start/create/basic_markup/"> <meta name="viewport" content="width=device-width"> <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> </head> <body> <h1>Welcome to the mobile web</h1> </body> </html>
この例では body 内のコンテンツはとてもシンプルですが、ページの head 内には一見わかりづらいコードが多数あります。では、必要なマークアップを分解してみましょう。
HTTPS の使用: AMP ページとコンテンツを作成するときは、(HTTP ではなく)HTTPS プロトコルの使用をぜひ検討してください。AMP ドキュメント自体や画像、フォントには HTTPS は必須ではありませんが、HTTPS を必要とする AMP 機能は数多くあります(動画、iframe など)。AMP ページですべての AMP 機能を最大限に活用するためには、HTTPS プロトコルを使用してください。HTTPS の詳細については、HTTPS を使用する理由をご覧ください。
必要なマークアップ
AMP HTML ドキュメントに関するルール
ルール | 説明 |
---|---|
先頭に <!doctype html> doctype を指定します。 |
HTML の標準です。 |
最上位階層のタグを <html ⚡> にする( <html amp> も可 )。 |
ページを AMP コンテンツとして識別します。 |
<head> タグと <body> タグを含む。 |
HTML では任意ですが、AMP では任意ではありません。 |
<meta charset="utf-8"> タグを <head> タグの最初の子要素にする。 |
ページのエンコードを識別します。 |
<script async src="https://cdn.ampproject.org/v0.js"></script> タグを <head> タグの 2 番目の子要素にする。 |
AMP JS ライブラリを含めて読み込みます。 |
<head> タグ内に <link rel="canonical" href="$SOME_URL"> タグを含める。 |
この AMP HTML ドキュメントの通常の HTML バージョンを指定するか、そのような HTML バージョンが存在しない場合は、このドキュメント自体を指定します。詳しくは、ページを検出可能にするをご覧ください。 |
<meta name="viewport" content="width=device-width"> タグを含める。initial-scale=1 を含めることも推奨されます。 |
レスポンシブなビューポートを指定します。詳しくは、レスポンシブな AMP ページの作成をご覧ください。 |
<head> タグ内に AMP ボイラープレート コードを含める。 |
AMP JS が読み込まれるまで、最初はコンテンツを非表示にするための CSS ボイラープレートです。 |
省略できるメタデータ
このサンプルには、最低限の要件に加えて、head 内に Schema.org の定義も含まれています。これは AMP においては必須ではありませんが、コンテンツを特定の場所(Google 検索のトップニュースカルーセル内など)に配信する際に必要となります。
- Google 検索用の AMP の準備方法 - AMP ページを Google 検索用に準備する方法について説明します。
- メタデータのサンプル - 他のさまざまな場所(Twitter など)で必要となる全メタデータについて詳しく説明します。
AMP ページを初めて作成するのに必要な情報は以上です。ただしもちろん、本文に表示されるコンテンツはまだ多くありません。次のセクションでは、画像などの基本要素やカスタム AMP 要素を追加する方法、ページのスタイルを設定する方法、レスポンシブなレイアウトを作成する方法について説明します。