0

こんにちは、sites.CreateWebPage()関数を使用してGoogleガジェットをページに追加したいと思います。ガジェットのコードを関数のhtml部分に貼り付けてこれを試してみましたが、うまくいかないようです。

これが私のコードです:

  var aboutSection = '<div><img src="https://www.google.com/chart?chc=sites&amp;cht=d&amp;chdp=sites&amp;chl=%5B%5BGoogle+Apps+Script'%3D20'f%5Cv'a%5C%3D0'10'%3D499'0'dim'%5Cbox1'b%5CF6F6F6'fC%5CF6F6F6'eC%5C0'sk'%5C%5B%22Google+Script+Gadget%22'%5D'a%5CV%5C%3D12'f%5C%5DV%5Cta%5C%3D10'%3D0'%3D500'%3D297'dim'%5C%3D10'%3D10'%3D500'%3D297'vdim'%5Cbox1'b%5Cva%5CF6F6F6'fC%5CC8C8C8'eC%5C'a%5C%5Do%5CLauto'f%5C&amp;sig=6fhWXmnlPoRsJXpVKNfumRBLsmo" style="display: block; text-align: left; " data-props="align:left;showBorder:true;showBorderTitle:true;borderTitle:Google Script Gadget;height:200;objectTitle:About;libId:Mf2G3RE0TBWexGMtAO6CROH-2sYrtNBN4;restrictionMyself:false;restrictionDomain:false;restrictionAnyone:true;allowAnonymous:false" id="7206614969763905" data-type="maestro" class="sites-placeholder-maestro" data-origsrc="https://sites.google.com/a/macros/eyethu.org/exec?service=AKfycbzpyOcUFaYweehTWPn9XwERTfAOPXoBeua2RZ8NVg" width="500" height="300"></div> <div></div>';
  site.createWebPage(name + ' ' + surname, name + '_' + surname, aboutSection);

(')引用符が問題を引き起こしていることは知っていますが、すべて('')に置き換えましたが、まだ機能していません。フレームとその欠落している画像アイコンを表示するだけです。

よろしくお願いします。

これはあなたの提案の後に私がしたことです:

var templ = HtmlService.createTemplateFromFile('profile').evaluate();
var tem = templ.getContent();
site.createWebPage(name + ' ' + surname, name + '_' + surname, tem);

サイトを編集し、htmlをコピーして、htmlファイルに貼り付けることでコードを取得しました。動作しますが、編集ページにガジェットが画像として表示されます。私は明らかにテンプレートの作成を間違っていますが、テンプレートを生成する別の方法はありますか?

4

1 に答える 1

1

Apps Scriptsでガジェットやその他のアプリスクリプトを含むサイトページを処理する最良の方法は、「テンプレート」ページを手動で作成し、スクリプトコードにそのコピーを作成することです。

  1. Googleサイトページを手動で作成し、必要なガジェット(page1など)を追加します。
  2. これに似たコードを使用してください

    var page1 = SitesApp.getPageByUrl('url_of_page1');

    var html = page1.getHtmlContent();

    var site = SitesApp.getSite(url);

    site.createWebPage(title、name、html);

于 2012-07-13T11:49:08.433 に答える