ブログ | Monotalk の AMPページのHTML を取得して、
amp-toolbox/packages/optimizer at master · ampproject/amp-toolbox で変換した HTML を保存するツールです。
config.js
を変更することで、以下の条件を満たすサイトであれば、最適化されたAMPのHTMLファイルを生成できます。
- sitemap.xml が設置されている。
- sitgmap.xml に記載されているページが、amphtml属性を保持したlinkタグを持つ。
ツールの使用方法を記載します。
-
./libs/commands/initialize.js
sqliteファイルを初期化します。
2回目の実行以降は、作成したテーブルの再生成を行います。 -
./libs/commands/saveUrl.js
sitemap.xml に記載されているURLを、sqliteに登録します。 -
./libs/commands/saveAmpUrl.js
sqliteに登録したsitemap.xml のURLにアクセスし、
"link[rel='amphtml']
で定義されているAMP のURLを収集します。
収集結果は、sqliteに登録します。 -
./libs/commands/ampHtmlGen.js
saveAmpUrl.js
の実行結果をINPUTにして、htmls
フォルダに、最適化した AMP HTMLを出力します。
git clone https://github.com/kemsakurai/amp-optimized-page-generator.git
cd amp-optimized-page-generator/
npm install
mkdir htmls
npm run init
npm run find-amp-url
npm run gen-html
config.js
を変更すると、参照するサイトマップとdomainUrlを変更できます。
domainUrl
は、linkタグから取得したAMP URL の接頭部に付与する文字列です。
- config.js
module.exports = {
siteMapUrl : 'https://www.monotalk.xyz/sitemap.xml',
domainUrl : 'https://www.monotalk.xyz'
};
templatesディレクトリ配下に、htmlsフォルダを配置して、urls.py でマッピングします。
#!/bin/sh
PROJECT_HOME="<django_project_home>"
rm -Rf "$PROJECT_HOME"amp_start_blog_post/templates/amp_start_blog_post/htmls
\cp -Rf htmls "$PROJECT_HOME"amp_start_blog_post/templates/amp_start_blog_post/htmls