スプレッドシートを自動でPDF化⇒ダウンロードできるようにする
スプレッドシートで表を作る
当サイトで今回、「代理店・制作会社さま向け 価格一覧」をスプレッドシートで管理できるように仕様変更しました。
PDFのダウンロード用リンクを設けて、常にスプレッドシートの最新情報が反映されているように工夫しています。
なので今後は価格帯や項目の増減、説明文の修正などが発生した際はスプレッドシートの修正をするだけで自動で反映されるようになります。
今回使用しているスプレッドシート
今回はこのスプレッドシートからデータを取得しています。
(閲覧のみ権限で開きます)
※今回のJSON化は「表」シートを使用しています
注意点
もちろん、すでにダウンロードされたファイルは変更できませんので、上部に最終更新日と最新情報を必ずサイトから確認いただくように注意文を記載しています。
あとはURLの値を変更するだけ
Googleスプレッドシートのシートを開いているときのURLに/export?format=pdfというパラメータを付与するとPDFに変換したデータをダウンロードできるようになります。
もしくは下記URLのスプレッドシートIDとシートIDをPDF化したいシートのものと入れ替えて下さい。
- PDF化させるURLテンプレート
- https://docs.google.com/spreadsheets/d/【スプレッドシートID】/export?format=pdf&gid=【シートID】
スプレッドシートIDとシートID
例えば今回はこのスプレッドシートをPDF化しました。
もともとのURLはこうなっています。
https://docs.google.com/spreadsheets/d/1jWXAB7BHyuEecx3L7o5KWp-qceeO0k5q5sJDtHUDRo0/edit#gid=1791773483
このURLでいうと、スプレッドシートIDは「1jWXAB7BHyuEecx3L7o5KWp-qceeO0k5q5sJDtHUDRo0」、シートIDは「1791773483」です。
なので先ほどのURLに各IDの値を入れ替えるか、元のURLに「/export?format=pdf」を足してみてください。
あとは出来上がったURLをサイトのaタグに埋め込むなど使用ください。
スプレッドシート管理のメリット
価格表のように今後変動が考えられるコンテンツは毎回作り直してPDFを上げ直して、はかなりのコストになります。
また、古いまま差し替え漏れていてトラブルに発生する危険性も常にはらんでいますので、そのリスク回避もできるようになります。
スプレッドシートならさらに
今回のシートはただPDFを生成するためだけのシートではありません。
この表からデータを抽出して、リアルタイムにサイトの情報を更新することもできます。
WordPressは本業のWEB制作の人でないと取っつきにくいUIだったりしますし(本職でも…)、全部の機能をWordPressにブッ込むと複雑怪奇になりすぎてクライアントも理解不能になりがちです。
スプレッドシートならExcelライクに使えるのでクライアントも取っつきやすいですし、管理も楽になるのでオススメです。
特に今回のテクはGASと呼ばれるプログラム(Excelのマクロのようなもの)も書かなくてよいテクニックなので導入の敷居が低くオススメです。
もし自分のサイトにも導入したい!と思われる方はお問い合わせ下さいませ。