Googleドライブにウェブサイトに埋め込みたいフォルダがあります。埋め込みコードや、Googleドライブのヘルプ記事に記載されているものが見つかりません。
Googleドライブフォルダは、list
およびgrid
ビューに埋め込み表示できます。
<iframe src="https://drive.google.com/embeddedfolderview?id=FOLDER-ID#list" style="width:100%; height:600px; border:0;"></iframe>
<iframe src="https://drive.google.com/embeddedfolderview?id=FOLDER-ID#grid" style="width:100%; height:600px; border:0;"></iframe>
Q:フォルダーID(FOLDER-ID)とは何ですか?
A:Googleドライブに移動>>フォルダーを開く>>ブラウザーのアドレスバーでそのURLを確認します。例えば:
フォルダURL: https://drive.google.com/drive/folders/0B1iqp0kGPjWsNDg5NWFlZjEtN2IwZC00NmZiLWE3MjktYTE2ZjZjNTZiMDY2
フォルダID:
0B1iqp0kGPjWsNDg5NWFlZjEtN2IwZC00NmZiLWE3MjktYTE2ZjZjNTZiMDY2
この手法は、パブリックアクセスを持つフォルダーに最適です。特定のGoogleアカウントとのみ共有されているフォルダは、この方法でそれらを埋め込むと問題が発生します。この編集の時点で、「アクセスが必要」または「アカウントの切り替え」(またはGoogleアカウントへのサインイン)を支援するいくつかのボタンを備えた「許可が必要です」というメッセージが表示されます。これらのボタンのJavascriptは、ChromeのIFRAME
内では正しく機能しません。
詳しくは https://productforums.google.com/forum/#!msg/drive/GpVgCobPL2Y/_Xt7sMc1WzoJ
Googleドライブのフォルダーは、list
およびgrid
ビューに埋め込み表示できます(ファイルまたはフォルダーをクリックして新しいタブで開くだけです)。そのためには、単にFOLDER-IDを自分のものに置き換えます。
リストビュー
<iframe src="https://drive.google.com/embeddedfolderview?id=FOLDER-ID#list" style="width:100%; height:600px; border:0;"></iframe>
または、リストモードがデフォルトであるため、モードを指定しません。
<iframe src="https://drive.google.com/embeddedfolderview?id=FOLDER-ID" style="width:100%; height:600px; border:0;"></iframe>
グリッドビュー
<iframe src="https://drive.google.com/embeddedfolderview?id=FOLDER-ID#grid" style="width:100%; height:600px; border:0;"></iframe>
Idは、フォルダーのURLのfolders/
の後のハッシュ(英数字の意味不明)です。ドライブフォルダを開くと、ブラウザのアドレスバーにURLが表示されます。たとえば、
https://drive.google.com/drive/folders/0B1iqp0kGPjWsNDg5NWFlZjEtN2IwZC00NmZiLWE3MjktYTE2ZjZjNTZiMDY2
フォルダーIDは0B1iqp0kGPjWsNDg5NWFlZjEtN2IwZC00NmZiLWE3MjktYTE2ZjZjNTZiMDY2
です。
フォルダーがGoogle Appsドメインの一部である場合、アクセス許可の問題を軽減するためにURLにドメインを追加できます(詳細は先に説明します)。
<iframe src="https://drive.google.com/a/MY.DOMAIN.COM/embeddedfolderview?id=FOLDER-ID#grid" style="width:100%; height:600px; border:0;"></iframe>
MY.DOMAIN.COMおよびFOLDER-IDを独自のものに置き換えるだけです。
この手法は、パブリックアクセスを持つフォルダーに最適です。特定のGoogleアカウントとのみ共有されているフォルダーは、ユーザーのブラウザーでアクティブなGoogleアカウントによっては、この方法でそれらを埋め込むときに問題を引き起こす可能性があります。
空白のフレームは、GoogleがX-Frame-Options
ヘッダー経由でログインページをIFRAMEに埋め込むことを禁止しているためです(おそらく、__ SOMECODE] _ヘッダーを使用して、SAMEORIGIN
に設定すると、同じドメイン内にありません(vg drive.google.com
)。これは、ブラウザの開発者コンソールで確認できます。
ドライブフォルダーのリストまたはグリッドビューを取得するには(ファイルまたはフォルダーをクリックして新しいタブで開くだけです)、次を使用します。
<iframe src="https://drive.google.com/embeddedfolderview?id=FOLDER-ID#grid" style="width:100%; height:600px; border:0;"></iframe>
または、Google Suite/Apps Driveの場合:
<iframe src="https://drive.google.com/a/MY.DOMAIN.COM/embeddedfolderview?id=FOLDER-ID#grid" style="width:100%; height:600px; border:0;"></iframe>
MY.DOMAIN.COMおよびFOLDER-IDを独自のものに置き換えます。 #grid
を削除して、詳細なファイルリストを取得します。
プライベートフォルダーの場合、埋め込みフォルダーを使用してページを読み込む前に、ユーザーに正しいアカウントにログインしてもらいます。フォルダがGoogle Appsドメインにある場合、ドメインをURLに追加できます。それ以外の場合は、承認されたアカウントにログインする必要があります。
(この答えは森の編集ですが、彼がintentを変更したため拒否されました)
ビジネス/ Gsuiteアプリ、またはそれらが呼び出すものには、ドメインを指定できます(複数のGoogleアカウントにログインしたときに元の回答で500エラーが発生する問題がありました)。
<iframe
src="https://drive.google.com/a/YOUR_COMPANY_DOMAIN/embeddedfolderview?id=FOLDER-ID"
style="width:100%; height:600px; border:0;"
>
</iframe>