杉岡システム公式ブログ

Embedded. Computing.

【WixCode活用術】データベースのドキュメントを文字にリンクさせる方法


f:id:sugiokasysteminc:20180323141942j:plain
【WixCodeの活用法】DatabaseからPDFファイル(Document)を文字に直接リンクさせる動的ページ作成方法【Dynamic Page Link to Document】


杉岡システムのホームページ作成・運営にも利用しているWix(ホームページ作成ツール)ですが、最近になって新たな機能を追加しました。
WixCodeと呼ばれるものです。
なんでもJavaScript等もいじれるようになっているんだとか。
あとはデータベース上に事前に情報を入力しておけば、そこへのリンクを張ることで複数ページに同じ情報を共有でき、
さらにはデータベース上の情報のみ編集するだけで、そのデータベースへリンクを張っている複数ページの情報も自動的に最新の状態に保たれるといったとても便利な機能を兼ね備えてます。
言葉にして説明するとややこしいですが、まあ、気持ち的にはCSSの様な感じで使える機能といったところですかね。
いちいち文章や画像やPDFを一つ一つ各ページで変更しなくてもいいというわけです。おかげで編集し忘れが起きず、情報が錯綜することもなくなるといった寸法です。

そんなわけで、なかなかに便利だなと試しにWixCodeを触ってみたところ少し悩まされた部分がありましたので、今回はその解決策を紹介していきたいと思います。
調べてみたところ明確な解決策を載せているブログやサイトは見当たりませんでしたので。


はじめに

WixCodeを少しいじると分かるかと思いますが、データベース上に載せたPDFファイルにリンクを張ろうとすると、特定のWix提供アイコン・ボタン以外には張れないようになっています。
f:id:sugiokasysteminc:20180322162139p:plain
テキスト形式の文字をデータベースとリンクさせようとすると、上画像のようにドキュメント部分は灰色で表示され、選択できなくなっています。*1
この問題の解決策の1つとして【「テキスト・文字」にリンクを張っているかのように見せかける方法】が挙げられるのではないかと思います。
今回はその方法を紹介しますね(*'-'*)

大まかな流れとしては、
【データベース上のデータ作成】
 ↓
【ボタン作成、データに接続】
 ↓
【ボタンのデザインを変更し、他のテキストと見分けがつかないように似せる】
の3ステップとなってます。
それほど難しいことは行ってませんので、こんな発想もあるんだな程度に心に留めていただければ幸いです。



手順その1.データベース上にファイルを作成

f:id:sugiokasysteminc:20180322164536p:plain

Wixエディタ画面で左メニューにある「Database」に新規ファイル作成。
ここでは「products」とします。
新規ファイル作成はメニュー「Database」横にマウスのポインタを持ってくると「+」マークが表示されるので、それをクリックすることで出来ます。



f:id:sugiokasysteminc:20180323134026p:plain

データベース上にファイルを作成したら、その中に任意のドキュメントを選択して載せます。*2
そのためにはドキュメントメニューを作成しなければなりません。
ドキュメントメニュー作成は以下の手順で行います。

  1. データベースのテーブル上部分、右にある「+」にマウスポインタをもっていくと「Add Column」と表示されるので、それをクリック。
  2. すると上画像の様に表示されるので「Column Name」と「Field Name」を任意に入力。*3
  3. 「Data Type」は初期設定では「Text」になっているので、「Document」に変更。



f:id:sugiokasysteminc:20180322165336p:plain

ドキュメントメニューを作成したら、セル部分をダブルクリックしてドキュメントファイルを載せます。
今回は「カタログ」と「取扱説明書」の2つのメニューを作成し、各々ドキュメントファイルを載せました。
形式はPDFファイルです。(上画像参照)




手順その2.任意のページにデータベース上へのリンクを張る

まずは既に作成済みのページでも、新規に作成したページでもいいので、データベースにリンクさせるページを選択します。
任意のページにデータベース上へのリンクを張る方法(動的ページ作成方法)はいくつかありますが、私は以下の方法が一番楽で気に入ってます。*4


f:id:sugiokasysteminc:20180323114158p:plain

新規ページでも既に作成済みのページでも操作方法は変わりません。まずは新規ボタンを作成します。

  1. Wixエディタ画面で左メニューより「+」選択。
  2. 新たに表示されたメニューより「ボタン」を選択。
  3. テキストボタン項目内のボタンを選択。今回は上画像に記してある赤丸印内のアイコンボタンを選択(以降"ボタンA"と記す)しましたが、テキストボタンであればどれでも構いません。



f:id:sugiokasysteminc:20180323121418p:plain
f:id:sugiokasysteminc:20180323121624p:plain

  1. 先ほど作成したボタンAを選択し、出てきたメニューの1番右端の「データに接続」を選択。
  2. 「ボタンを接続」メニューの中に「データセットを作成」というボタンがあるのでそれをクリック。
  3. 「Choose a collection」欄から今回使用したいデータベース上のファイルを選択。
  4. 「Dataset name」は日本語でも英語でも好きなように入力します。今回は「Products dataset」に設定しておきます。
  5. 設定が完了したら「Create」ボタンをクリック。



f:id:sugiokasysteminc:20180323121947p:plain

すると上画像の赤丸印部分の様なアイコンが表示され、無事、任意のデータベースへのリンクが張られたことが確認できます。




手順その3.ボタンAのリンクの接続先を設定


続いてボタンAのリンクの接続先を設定します。

f:id:sugiokasysteminc:20180323122513p:plain

  1. ボタンAをクリックするとメニューが表示されます。その右端に「データに接続」あるいは英語表記で「Connected to data」と表記された(マウスカーソルを当てると表示されます)緑色のアイコンがあるのでそれをクリック。
  2. すると上画像の丸印部分の様に「リンクの接続先」メニューが表示されます。初期設定では「接続されていません」と表記されているので、そこをクリック。

今回はラベルの接続先は無視して進めます。



f:id:sugiokasysteminc:20180323122720p:plain

するとメニューが新たに表示されるので下にスクロールしていきます。
メニューには大きく分けて「Actions」「Fields」の2つの項目がありますが、そのうちの「Fields」項目内に「Document」が黒字で表記されているのが見つかるかと思います。
今回は「取扱説明書」を扱いたいので、そちらを選択します。



これでひとまず動的ページの作成は完了しました。
プレビューで確認すると分かるかと思いますが、無事にリンクが張られています。
また、リンク先をデータベース上で変更するだけで、自動的にこの動的ページのボタンAのリンク先も変更されていることが確認できるかと思います。

さて、次はいよいよ「テキストにデータベース上のDocumentをリンクさせているかのように見せかける」最後の仕上げを行っていきます。



手順その4.ボタンAのデザイン変更


f:id:sugiokasysteminc:20180323123128p:plain
f:id:sugiokasysteminc:20180323125805p:plain

  1. ボタンAを選択したら、上に出てきたアイコンメニューから筆ペンマークの「デザインを変更」をクリック。
  2. 続いて新しく開けたボタンデザインメニュー下の「デザインをカスタマイズ」をクリック。
  3. 上画像2枚目左端に丸印で記してあるように、上のボタンタイプ一覧から一番左の四角いスタンダードなボタンタイプを選ぶ。(ここは省いても特に問題なし)
  4. 「不透明度・色」メニュー内の「背景」部分を0%に設定。
  5. 「枠線」メニュー内の「不透明度・色」を0%、「太さ」を0に設定。
  6. 「影」メニュー内の「影を表示する」をオフに設定。
  7. 「テキスト」メニュー内よりフォント設定をサイト内で使用しているテキストフォントに合わせてください。これにより一見しただけではボタンかテキストか判別しにくくなります。
  8. 「ホバー」「無効」時の設定も同様に行う。(見落としがちなので注意!)




手順その5.Wixデータベースの確認


f:id:sugiokasysteminc:20180323130641p:plain
f:id:sugiokasysteminc:20180323130657p:plain

Wixマイサイト画面 > Wixデータベース より、エディタ画面で設定したデータベース上のデータがきちんと共有されているか確認してください。
もしこちらにきちんとデータが共有されていない場合、公開前のプレビュー画面ではリンクがきちんと張られていても、公開後、実際のインターネット上で見てみるとリンクが張られていない、といった現象が起きることがあります。
もし共有されていない場合はデータベース上の上メニューより「同期」ボタンをクリックするか、「インポート / エクスポート」をクリックしてデータをエクスポートし、Wixデータベース上にインポートしてください。




おわりに

以上でDatabaseからPDFファイル(ドキュメント)を文字に直接リンクさせる動的ページ作成方法の紹介は終わります。
こうして書き出してみるとなかなかに面倒臭そうでややこしそうですが、実際にやってみるとそうでもないので気軽に試してみてください。
HTMLやCSSといったものを弄らなくても使えるホームページ作成ツール、というのがコンセプト(おそらく)だけあって感覚的な操作が多い気がします。
まだまだ色んなやり方、活用法があるかと思いますので、ゆっくり慣れていけたらなあと思いつつ…。
最後までご覧下さりありがとうございました。

*1:ここでいう「ドキュメント」とはデータベース上の「Data TypeがDocument」のもののことを指します。

*2:ドキュメントはWixドキュメントファイルから選択して載せます。

*3:Column Nameはテーブル上部のメニュー名として表示されるようなので、日本語で入力しても良いかもしれませんが、Field Nameは英語入力推奨(日本語入力不可)です

*4:今回はドキュメント作成時における動的ページ作成方法をご紹介してます。同じ様な方法で他の動的ページも作成可能です