如何使用Google Apps脚本将Google小工具嵌入Google网站

时间:2012-07-13 10:29:43

标签: google-apps-script

您好我想通过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文件中来获取代码。它可以工作,但它将小工具显示为编辑页面中的图像。我显然在做模板创建错误是否有另一种生成模板的方法?

1 个答案:

答案 0 :(得分:1)

在应用程序脚本中处理包含小工具和其他应用程序脚本的网站页面的最佳方法是手动创建“模板”页面,并在脚本代码中复制它。

  1. 手动创建Google协作平台页面并添加所需的小工具(例如第1页)
  2. 使用与此类似的代码

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

    var html = page1.getHtmlContent();

    var site = SitesApp.getSite(url);

    site.createWebPage(title,name,html);