■課題①親ページの指定方法
昨日の記事の最後でも書いたとおり、以下の構文を追加すると、
新しくページを追加する場合の親ページを指定できるとのこと。
私が新しく追加したページを配置したいのは、下記の場所です。
「https://sites.google.com/a/mypleis.com/yuka_matsuda/」の直下にある
「自伝を書く (jiden)」というページの下
※()内は、ページ名です
これらの情報を基に、スクリプトを書いてみました。
なお、正しいスクリプトを載せる前に、しばし試行錯誤した結果にお付き合いください~。
■これらは間違い
まず、言葉の通り忠実に、書いてみたのが次のスクリプト。
「続けて」書いて、「親ページ」のページタイトルを構文の中に書き込み書き込み。
※以下、昨日の記事に載せたスクリプトの抜粋です。全文は昨日の記事を参照。
あれ、やっぱりホーム直下にページが追加されてる。
しかも、「スクリプト失敗しました」というメールも届いて、これじゃダメだって。
では、「(親ページ)」の所をページ名(jiden)にしてみる?
それとも、URLを指定すればOK??
どちらもダメ―。。。。。
あ、setParentの前に、サイトを指定(”site.~”)してみる?
あれー、意外と難しいわねー。
分かる人から見たら、何をアホなことを・・・と呆れられそうですね フゥ(o´Å`)=з
■さらなる参照元
何かもっと詳しく説明してあるブログはないか?と色々検索してみて、
やっと、それらしい記事を発見しました!
【初心者のためのGoogle Apps Scriptプログラミング入門:】
http://libro.tuyano.com/index3?id=667001&page=4
ブログの著者の方には大変申し訳ないですが、「入門以下」レベルの私には、
書いてあることの意味を紐解くのにかなり苦心しましたが・・・(´`)=3
お蔭様で何となく分かったのは、
① setParent()の()内には、「Pageオブジェクト」というものを入れるということ。
② Pageオブジェクトを取得するには、以下のような構文があるということ。
-.getAllDescendants(オプション);
-.getChildren(オプション);
-.search(クエリー,オプション);
-.getChildByName(名前);
オプション、クエリーというのが何なのかはまだ分からないので、とりあえず、
”.getChildByName(名前)”を選ぶことにします。
■これが正解
そうこうしながら、やっとこさ行き着いたスクリプトがこちら。
思った通り、これでいけました!
でも、これだとまだ冗長な気がするし、「createWebPage()に続けて・・・」という説明に
当てはまらないような。
で、結果的に行きついた、恐らく100点満点のスクリプトがこちら。
(随分引っ張ってしまってごめんなさいね~~。)
■動作テスト
さて、では上記のスクリプトを動かしてみるとどうなるかしら。
フォームから入力・送信→フォームの台帳に反映されるまでは、昨日と一緒なので割愛。
そして、Googleサイトに戻って更新してみると・・・・・・
「自伝を書く (jiden)」の直下にサブページとして、ページが追加されています~~~♪
Googleサイトのデフォルト機能で、「サブページリスト」を挿入しているので、
そのリストにもきちんと反映されています。
今日はここまで。
■予告編
明日は、先日の課題②ページ名を自動生成させるというのを解決すべく、
頑張ってみようと思います。
0 件のコメント:
コメントを投稿