logoWebRelease 2 ユーザーズマニュアル
Version 2.80K 版
menu
1章 はじめに
  • 1. はじめに
  • 2. WebRelease の利用環境
  • 3. 製品のライセンスについて
2章 ユーザ管理
  • 1. WebRelease のユーザ管理
  • 2. ユーザの一覧
  • 3. ユーザの登録
  • 4. ユーザの休止
  • 5. ユーザの削除
  • 6. ユーザの一括削除
  • 7. 自分のユーザプロファイルの変更
  • 8. ログイン通知メール
  • 9. TOTP ワンタイムパスワードの設定
  • 10. ログインユーザ一覧
  • 11. ログイン履歴
  • 12. ユーザ登録情報の一括処理
3章 サイトの作成
  • 1. サイトの作成
  • 2. サイト設定
  • 3. スタッフ設定
    • 1. スタッフの役割
    • 2. スタッフの登録
    • 3. スタッフの設定
    • 4. スタッフのテンプレート設定
    • 5. スタッフのフォルダへのアクセス制限
    • 6. スタッフの承認ステップ
    • 7. スタッフの解任
    • 8. スタッフの役割の一括設定
  • 4. サイトリソース
    • 1. リソースの登録
    • 2. リソースの編集
    • 3. リソースの編集 [テキストファイル]
    • 4. リソースの編集 [zip ファイル]
    • 5. リソースの編集 [画像ファイル]
    • 6. リソースの編集 [添付ファイル]
    • 7. リソース内の外部リンクチェック
    • 8. リソースの削除とダウンロード
    • 9. リソースの一括移動
    • 10. リソース名の一括設定
    • 11. リソースの一括削除
    • 12. リソースフォルダ
    • 13. リソースフォルダを Zip にする
  • 5. 辞書の管理
  • 6. 外部リンクのチェック
  • 7. サイトのエキスポート
  • 8. サイトのインポート
  • 9. サイトの閉鎖
  • 10. サイトの削除
  • 11. サイトの操作履歴
4章 FTPの設定
  • 1. FTP の設定
  • 2. プライマリチャネルの設定
  • 3. FTP 記録の参照
  • 4. FTP の実行状況
  • 5. FTP 予約(定時起動)の設定
5章 テンプレート
  • 1. テンプレート
  • 2. テンプレートの作成
  • 3. 文書型の定義
  • 4. 要素のタイプ
    • 1. 1行テキスト
    • 2. 複数行テキスト
    • 3. WYSIWYG エディタ
    • 4. ラジオボタン
    • 5. ポップアップボタン
    • 6. チェックボックス
    • 7. 年月日/時分/秒
    • 8. 目次
    • 9. リンク
    • 10. イメージ
    • 11. 添付ファイル
    • 12. XMLリーダ
    • 13. コンポーネント
    • 14. グループ項目
    • 15. セレクタ
    • 16. 各要素に共通の設定項目
  • 5. テンプレートリソース
  • 6. テンプレートの展開
    • 1. 要素参照
    • 2. 関数呼び出し
    • 3. 演算子
    • 4. リソース参照
    • 5. メソッド
    • 6. 拡張タグ wr-if wr-then wr-else
    • 7. 拡張タグ wr-switch wr-case wr-default
    • 8. 拡張タグ wr-conditional wr-cond
    • 9. 拡張タグ wr-for
    • 10. 拡張タグ wr-break
    • 11. 拡張タグ wr-variable
    • 12. 拡張タグ wr-append
    • 13. 拡張タグ wr-clear
    • 14. 拡張タグ wr-return
    • 15. 拡張タグ wr-error
    • 16. 拡張タグ wr-- と wr-comment
  • 7. WYSIWYG エディタ設定
  • 8. テンプレート・プロファイラ
  • 9. テンプレートのリビジョン
  • 10. テンプレートのダウンロード
  • 11. テンプレートのアップロード
  • 12. テンプレートの上書きアップロード
  • 13. テンプレートのフォルダ
  • 14. テンプレートの状態
  • 15. テンプレートの削除
  • 16. ページ作成後のテンプレート修正
  • 17. 入力フィールドの短縮表示
  • 18. 作成したページの一覧
  • 19. テンプレートとスタッフ
  • 20. テンプレートの操作履歴
  • 21. テンプレートを参照している目次の一覧
  • 22. テンプレートの検索
6章 コンポーネント
  • 1. コンポーネント
  • 2. コンポーネントの使用例
  • 3. コンポーネントとセレクタ
7章 ページの作成
  • 1. ページの作成
  • 2. ページのプレビュー
  • 3. 実機でのプレビュー
  • 4. ページの状態
  • 5. ページの編集
    • 1. ページタイトル/ファイル名
    • 2. フォルダ
    • 3. フォルダ中でのページの位置
    • 4. ページの状態
    • 5. 公開期間の設定
    • 6. 変更を禁止
    • 7. プレビューURL/編集画面URL
    • 8. 他のコンテンツへのリンク
    • 9. 圧縮処理
    • 10. エンコーディング
    • 11. リンク先候補
    • 12. その他の操作
  • 6. コンテンツの入力
    • 1. 複数行テキスト
    • 2. WYSIWYG エディタ
    • 3. イメージ
    • 4. 添付ファイル
    • 5. リンク
    • 6. XML リーダ
    • 7. 入力欄の追加と削除
    • 8. 入力欄の開閉
  • 7. ページリソース
    • 1. リソースの登録
    • 2. リソースの編集
    • 3. リソースの編集 [テキストファイル]
    • 4. リソースの編集 [zip ファイル]
    • 5. リソースの編集 [画像ファイル]
    • 6. リソースの編集 [添付ファイル]
    • 7. リソース内の外部リンクチェック
    • 8. リソースの削除とダウンロード
    • 9. リソースの一括移動
    • 10. リソースの一括削除
    • 11. リソースフォルダ
    • 12. リソースフォルダを Zip にする
  • 8. ページの編集完了
  • 9. ページの公開
  • 10. ページの公開終了
  • 11. ページのエキスポート
  • 12. ページの削除
  • 13. ページのリビジョン管理
  • 14. ページのリビジョン間の比較表示
  • 15. リンク元一覧
  • 16. ページ内の外部リンク一覧
  • 17. ページの公開状況
  • 18. Markdown の使い方
  • 19. コンテンツ中の語句のチェック
  • 20. ページの操作履歴
  • 21. フォルダ
    • 1. フォルダの作成
    • 2. フォルダの設定
    • 3. フォルダにテンプレートを関連付ける
    • 4. フォルダへの承認プロセスの設定
    • 5. フォルダへのアクセス制限
    • 6. フォルダ中のページの順序の指定
    • 7. カレントフォルダの移動
    • 8. フォルダのオープン/クローズ
    • 9. フォルダ以下にあるページの状態
    • 10. フォルダの削除
  • 22. バージョニングフォルダ
  • 23. ページの一括処理
    • 1. 編集完了
    • 2. 公開
    • 3. 公開終了
    • 4. 公開開始指定時刻の設定
    • 5. 公開終了指定時刻の設定
    • 6. 公開開始と終了指定時刻の設定
    • 7. ページのエキスポート
    • 8. 承認依頼
    • 9. 移動
    • 10. 削除
    • 11. 保護設定
    • 12. ページ一括登録
  • 24. ページインポート機能
    • 1. HTML ファイルのインポート
    • 2. スタイルシートのインポート
    • 3. 画像ファイルのインポート
    • 4. テキストファイルのインポート
    • 5. wrp ファイルのインポート
    • 6. 添付ファイルのインポート
    • 7. フォルダのインポート
    • 8. ZIP ファイルのインポート
    • 9. 既存のページへの上書きインポート
    • 10. カスタムテンプレートを使う
    • 11. インポートに伴うエラーに対処する
  • 25. 外部作成コンテンツのインポート
  • 26. スケジュール一覧
  • 27. ページの検索
8章 マルチデバイス配信
  • 1. 多チャネル化
  • 2. チャネル別コンテンツの生成
  • 3. チャネル選択機能
9章 承認プロセスの設定
  • 1. 承認ステップの定義
  • 2. 承認プロセスの定義
  • 3. 承認プロセスをフォルダに関連付ける
  • 4. 承認プロセスによる公開管理
    • 1. ページの公開承認依頼
    • 2. 承認と差戻
    • 3. 承認画面への入り方
    • 4. 承認プロセスとページの公開終了
    • 5. 承認依頼フォルダ
    • 6. 承認依頼の一括移動
    • 7. 一括承認依頼
    • 8. 一括承認
    • 9. ページの緊急公開と緊急公開終了
    • 10. 承認依頼の削除
    • 11. 進行中の承認依頼の管理
10章 その他の機能
  • 1. ダッシュボード
  • 2. 英語インタフェース
11章 システムの運用管理
  • 1. システムの状態確認
  • 2. WebRelease の停止と起動
  • 3. データのバックアップ
  • 4. メモリ設定
  • 5. メールサーバの設定
  • 6. Proxy サーバの設定
  • 7. パスワードセキュリティ設定
  • 8. TOTP 認証の有効化
  • 9. アカウントの自動閉鎖
  • 10. ログイン通知メールの設定
  • 11. システムからの通知メール
  • 12. Cookie に Secure 属性をつける
  • 13. その他のシステム設定
  • 14. 証明書のインポート
  • 15. ストレージの管理
  • 16. 操作履歴
  • 17. ログファイルのダウンロード
  • 18. ログインエラーへの対応
  • 19. WebRelease のバージョンアップ
  • 20. ライセンスのアップグレード
  • 21. 期間ライセンスコードの更新
  • 22. WebRelease の Uninstall
12章 索引
  • 1. 関数索引
    • 1. add
    • 2. allObjects
    • 3. allPages
    • 4. channel
    • 5. channelCookieName
    • 6. channelName
    • 7. codePointAt
    • 8. comma3
    • 9. concatenate
    • 10. contentType
    • 11. count
    • 12. currentTime
    • 13. divide
    • 14. encodeURI と encodeURIComponent
    • 15. encoding
    • 16. fileName
    • 17. fileSize
    • 18. find
    • 19. firstElement
    • 20. folder
    • 21. formatDate
    • 22. formatDateRFC2822
    • 23. formatDateW3CDTF
    • 24. fullURL
    • 25. gengou
    • 26. getXML
    • 27. group
    • 28. halfwidth
    • 29. hasElement
    • 30. hasMethod
    • 31. head
    • 32. indexOfPage
    • 33. isEven と isOdd
    • 34. isFirstElement と isNotFirstElement
    • 35. isFirstPage
    • 36. isLastElement と isNotLastElement
    • 37. isLastPage
    • 38. isNull と isNotNull
    • 39. isNumber
    • 40. isPreview と isNotPreview
    • 41. jstr
    • 42. kmg1000
    • 43. kmg1024
    • 44. lastElement
    • 45. lastModifiedDate
    • 46. length
    • 47. multiply
    • 48. nextElement
    • 49. nextPage
    • 50. number
    • 51. pageCreatedDate と revisionCreatedDate
    • 52. pageID
    • 53. pageRevision
    • 54. pageTitle
    • 55. pageWithPageID
    • 56. parseDate
    • 57. parseDateRFC2822 と parseDateRFC2822Relaxed
    • 58. parseDateW3CDTF
    • 59. parseHtml
    • 60. path
    • 61. prevElement
    • 62. prevPage
    • 63. previewClock
    • 64. previewLanguage
    • 65. quote
    • 66. remainder
    • 67. replaceAll と replaceFirst
    • 68. resourceURL
    • 69. resourceWithName
    • 70. rtlCount
    • 71. rtlRatio
    • 72. scheduledEndDate
    • 73. scheduledStartDate
    • 74. searchText
    • 75. setScale
    • 76. siteTimeZone
    • 77. sort
    • 78. split
    • 79. startsWith と endsWith
    • 80. string
    • 81. stripTags
    • 82. substring
    • 83. subtract
    • 84. suffix
    • 85. tail
    • 86. templateName
    • 87. thisPage
    • 88. toEntityRef
    • 89. toLowerCase と toUpperCase
    • 90. trim
    • 91. unescapeEntities
    • 92. unsplit
    • 93. width と height
  • 2. オブジェクト索引
    • 1. Channel オブジェクト
    • 2. CheckBox オブジェクト
    • 3. Folder オブジェクト
    • 4. HTMLComment オブジェクト
    • 5. HTMLDataNode オブジェクト
    • 6. HTMLDocument オブジェクト
    • 7. HTMLElement オブジェクト
    • 8. HTMLElements オブジェクト
    • 9. HTMLTextNode オブジェクト
    • 10. Page オブジェクト
    • 11. Selector オブジェクト
    • 12. XMLFeed オブジェクト
13章 Appendix
  • 1. Exif Orientation の扱いについて
  • 2. WebP 形式の画像の扱いについて
  • 3. CMYK / YCCK 形式の jpeg 画像について
  • 4. プレビュー時の URL 書き換え機能
  • 5. サポートされているタイムゾーン
  • 6. アカウント閉鎖ページへのアクセス制限
  • 7. 正規表現
  • 8. 要素名・リソース名・変数名・メソッド名

5章 テンプレート - 6. テンプレートの展開

5. メソッド

テンプレートにはメソッドを定義することができます。メソッドは、展開と同じように作成できるものですが、メソッド名を付けることができ、関数のように呼び出すことができます。また、引数をとることができます。

  • メソッドは展開またはメソッドから呼び出すことができます。
  • メソッドは再帰呼び出しを行うことができます。

メソッドを作成するときには、メソッド画面で「追加」ボタンをクリックします。

メソッドを作成するときには「追加」ボタンをクリックします。

メソッドを作成すると下図のような画面が表示されます。この画面を使ってメソッドを定義して行きます。

メソッド定義画面

① 左下のエリアにはメソッド一覧が表示されます。メソッド名をクリックするとそのメソッドの定義を編集できるようになります。

② メソッドを作成した直後は、メソッドの名前は untitled() となっています。 まず、この名前を、好きな名前に付け替えてください。メソッド名は、そのメソッドの内容がよくわかる名前にするとよいでしょう。

③ メソッド名の右側に「Private」というチェックボックスがあります。このチェックを ON にすると、そのメソッドは、そのテンプレートまたはコンポーネント外からは呼び出すことができない、テンプレートまたはコンポーネント内でのみ利用できるプライベートなメソッドとして定義されます。メソッドをプライベートにしておくことで、そのメソッドを将来メンテナンスする際に、そのメンテナンスの影響範囲をそのメソッドが定義されているテンプレートやコンポーネント内に限定して考えることができるようになります。外部から呼び出されることを前提としていないメソッドには Private の指定をしておくと良いでしょう。

④ メソッドには、引数を持たせることができます。引数の個数は任意個ですが、可変個数の引数をとる(いわゆる varargs の)メソッドは定義できません。例えばメソッドに三つの引数を持たせた場合、そのメソッドを呼び出す時には必ず三つのパラメタを与えなければなりません。

メソッドの名前と引数の名前に使用できる名前には制限があります。詳しくは下記を参照してください。

関連項目
  • 要素名・リソース名・変数名・メソッド名

ひとつのテンプレート中にメソッドはいくつでも定義することができます。メソッド名は互いに衝突しないようにしてください。異なるテンプレートが同じ名前のメソッドを持っていてもかまいませんが、ひとつのテンプレート中に同じ名前のメソッドが複数定義されていると、メソッドが呼び出せなくなります。 パラメタの個数が異なっていても、同じ名前のメソッドを同じテンプレート内に複数定義することはできません。

ここでは drawImage(img, alt) というメソッドを定義してみましょう。このメソッドは、イメージと ALT 属性から対応する img タグを生成する簡単なメソッドです。

メソッド drawImage(img, alt) を定義した状態

① メソッド名の欄でメソッドの名前と引数を指定します。

darwImage() のメソッド名部分
drawImage(img, alt)

② テキストエリアにこのメソッドの展開を記述します。メソッドの展開部分の記述方法はテンプレートの展開の記述方法と同じです。

drawImage() の本体
<img src="%img% alt="%alt%" style="width: %width(img)%px; height: %height(img)%px;">

ご覧のとおり、このメソッドの本体は1行しかありません。与えられた引数を使って img タグを生成しています。メソッドの展開の中では、引数を変数として参照可能です。引数の参照方法は、要素参照と同じです。

③ 定義を作成したら画面右上の「保存」ボタンをクリックします。

今度は、このメソッドを展開の中から呼び出してみましょう。展開中から同じテンプレート中にあるメソッドを呼び出す時には、あたかもそれが関数であるかのように呼び出します。

drawImage(img,alt) メソッドを展開の中からよびだしているといころ
展開のコードは下記のとおりです
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=%encoding()%">
<title>%pageTitle()%</title>
</head>
<body>
<wr-for list="pictures" variable="x">
  %drawImage(x.img, x.alt)%
</wr-for>
</body>
</html>

このテンプレートを使ってページを作成し、1枚だけ画像を設定した状態で生成される展開結果は、例えば下記のようになります。

<!doctype html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>無題</title>
</head>
<body>
<img src="..........jpg" alt="栗の写真" style="width: 960px; height: 540px;">
</body></html>

ここでもうひとつメソッドを定義してみます。メソッド名は drawImage2(img) としてみました。今度は、パラメタをひとつにし、そこにグループ項目「pictures」をそのまま渡しています。メソッドへの引数には任意のオブジェクトを渡すことができます。

メソッド drawImage2(img) の定義画面
メソッド drawImage2() のメソッド名定義部分
drawImage2(picture)
メソッド drawImage2() の本体
<img src="%picture.img%" alt="%picture.alt%" style="width: %width(picture.img)%px; height: %height(picture.img)%px;">

この場合、展開中でのメソッド呼び出しは、下記のようになります。

展開の記述:グループ項目の pictures をそのまま drawImage2() に引き渡しています。
<html>
<body>
<wr-for list="pictures" variable="x">
%drawImage2(x)%
</wr-for>
</body>
</html>

他のページのメソッドを呼び出す

今度は、目次を経由して他のページのメソッドを呼び出してみましょう。「記事一覧」というテンプレートで作成された記事一覧を表示するページに「ニュースリリース」というテンプレートで作成されたページ群と「ニュース」というテンプレートで作成されたページ群の一覧を表示してみましょう。

テンプレート「ニュースリリース」のメソッド定義画面

① まず「ニュースリリース」という名前のテンプレートを作成します。
② このテンプレートには「概要」という名前の要素が定義されています。記事の概要がこの要素に入力されます。
③ この「ニュースリリース」テンプレートには summary() というメソッドを定義してあります。このメソッドは、呼び出されると「概要」の内容を展開結果に書き込むようになっています。

メソッド summary() の本体
%概要%

もうひとつテンプレートを使います。

テンプレート「ニュース」のメソッド定義画面

① もうひとつ「ニュース」という名前のテンプレートを作成します。
② このテンプレートには「リード文」という名前の要素が定義されています。記事の概要がこの要素に入力されます。
③ この「ニュース」テンプレートにも summary() というメソッドが定義してあります。このメソッドは、呼び出されると「リード文」の内容を展開結果に書き込むようになっています。

メソッド summary() の本体
%リード文%

最後にもうひとつ「記事一覧」というテンプレートを作成します。このテンプレートは「ニュース」または「ニュースリリース」のいずれかのテンプレートで作成されたページの一覧を表示します。

テンプレート「ニュース一覧」の要素定義画面

このテンプレートには「index」という名前の目次型の要素が定義されています。この目次の掲載対象に、先の「ニュース」と「ニュースリリース」が指定されています。

このテンプレートの展開は下記のように書くことができます。

テンプレート「記事一覧」の展開定義画面
テンプレート「記事一覧」の展開
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=%encoding()%">
<title>%pageTitle()%</title>
</head>
<body>
<wr-for list='index' variable='aPage'>
<a href="%aPage%">%aPage.summary()%</a><br>
</wr-for>
</body>
</html>

aPage が指し示すページは「ニュース」で作成されたページか、または「ニュースリリース」で作成されたページのいずれかです。記事の概要が入力されている要素は「ニュース」の場合には「リード文」であり、また、「ニュースリリース」の場合には「概要」ですが、summary() というメソッドが違いを吸収しているので展開の記述が非常に簡潔になっています。

関連項目
  • 拡張タグ wr-for

目次に限らず、リンク要素でも同様にリンク先ページのメソッドを呼び出すことができます。また、何らかの方法で入手した Page オブジェクトに対しても、同じ方法で相手先のメソッドを呼び出すことができます。

関連項目
  • Page オブジェクト

この例で、テンプレート「ニュースリリース」に定義されているメソッド summary() が、「ニュースリリース」側で Private に指定されている場合は、このような方法で外部から summary() を呼び出すことはできません。

コンポーネントのメソッドを呼び出す

テンプレートやコンポーネントの展開やメソッドからは、コンポーネントに定義されているメソッドを呼び出すことができます。コンポーネントに関しては下記を参照してください。

関連項目
  • コンポーネント
  • コンポーネントの使用例
  • コンポーネントとセレクタ

© 2000 - 2025  FrameWorks Software, Inc.