HeartCore extension 機能概要マニュアル October 2013 Ver2.0-1 -
改訂履歴 改訂日 改訂内容 初版 2011 年 4 月 新規作成 Ver2.0 2013 年 10 月 RSS 設定マニュアル及びパンくず機能設定マニュアルを統合 フォーマット改訂 - 2 -
目次 1. 本文書の目的と対象ライセンス... - 4-1.1. 目的... - 4-2. 機能概要... - 4-2.1. extension 機能一覧... - 4-3. hello.jsp( 標準 )... - 5-4. breadcrumbs.jsp ( 標準 )... - 5-4.1. 関連コンテンツの設定... - 6-5. calculate.jsp( 標準 )... - 10-6. calender.jsp ( 標準 )... - 11-7. dayscalender ( 標準 )... - 12-8. date.jsp( 標準 )... - 13-9. menu.jsp( 標準 )... - 14-10. rsschannel.jsp( 標準 )... - 15-10.1. RSS Channelのインポート方法について... - 16-10.2. RSSの設定について... - 17-10.3. RSS 確認方法... - 18-10.4. RSS 仕様について... - 19-11. user.jsp( 標準 )... - 19-12. redirect.jsp( 標準 )... - 24-13. scheduled.jsp( 標準 )... - 24-14. sitemap.jsp( 標準 )... - 26-15. referral.jsp( オプション機能 )... - 27-16. database.jsp (Enterprise 以上 )... - 27-17. 制限事項について... - 28 - - 3 -
1. 本文書の目的と対象ライセンス 1.1. 目的本文書は HeartCore の extension 機能操作方法を説明しております 本資料は Small Business エディションは対象外となります 2. 機能概要 2.1. extension 機能一覧 webadmin/extension 直下に配置されているファイルをご紹介いたします 1. hello.jsp( 標準 ):extension 内に記述された文字列を出力する為のサンプルです 2. breadcrumbs.jsp ( 標準 ): パンくずを動的に生成するための機能です 3. calculate.jsp( 標準 ): 計算を行うための機能です 4. calender.jsp ( 標準 ): カレンダー表示を行うための機能です 5. dayscalender.jsp ( 標準 ): 週表示の無い日付のみのカレンダー機能です 6. date.jsp( 標準 ): 時間表示を行うための機能です 7. menu.jsp( 標準 ): メニューを動的に生成するための機能です 8. rsschannel.jsp( 標準 ):RSS 配信等で使用する機能です 9. user.jsp( 標準 ): ユーザ情報の出力などを行う機能です 10. redirect.jsp( 標準 ): リダイレクトの制御を行うための機能です 11. scheduled.jsp( 標準 ): コンテンツの公開予約などの拡張を行うための機能です 12. sitemap.jsp( 標準 ): サイトマップ自動生成を行う機能です 13. referral.jsp( オプション機能 ): リファラー機能を用いるための機能です (LPO 機能 ) 14. database.jsp(enterprise 以上 ): データベース内容の出力を行う機能です ( 外部連携機能 ) - 4 -
各エディションの大小につきましては次の通りとなります 小 大 [ Professional ] < [ Enterprise ] 3. hello.jsp( 標準 ) 例 : @@@extension:hello(world)@@@ 参考例 1 記述図 参考例 2 閲覧 4. breadcrumbs.jsp ( 標準 ) 例 : @@@extension:breadcrumbs( > )@@@ パンくずリストを表示させる箇所に記述します 表示には 関連コンテンツ の設定が必要となります 参考例 3 記述図 - 5 -
4.1. 関連コンテンツの設定 Breadcrumbs を利用するには 関連コンテンツの設定が必要となります 関連コンテンツの設定方法は 下記の2パターンで設定を行います 設定パターン 1: 各コンテンツの 関連コンテンツ 欄の項目にコンテンツから見た ページトップ ページアップ 前のページ 次のページ などを設定します 参考例 4 上記は ページ 1 2 3 4 を用意した場合の ページ 3 の設定となります ページトップこのコンテンツのために最高水準のスタートページを定義します ページアップこのコンテンツと関連する最高水準のコンテンツを定義します 前のページこのコンテンツと関連する前に続くコンテンツを定義します 次のページこのコンテンツと関連する次に続くコンテンツを定義します 最初のページこのコンテンツの水準内で連続する最初のコンテンツを定義します 最後のページこのコンテンツの水準内で連続する最後のコンテンツを定義します - 6 -
設定後 ページ 3 を表示して確認するとパンくずが出力表示されている事が確認できます 下図の赤枠部分が @@@extension:breadcrumbs( > )@@@ の記述部分となります 参考例 5 閲覧 設定パターン 2: ヘッダーメニューの ウェブサイト構造 を選択して設定を行います ウェブサイト構造 を選択すると サイト構造がツリー上で表示されます サイト構造のツリーは コンテンツのタイトルとコンテンツIDでツリー表示されます 参考例 6 ウェブサイト構造のツリー表示されているコンテンツのタイトルをマウスで選択した状態で ドラッグ & ドロップする事でウェブサイト構造を設定します コンテンツのドラッグ中にて マウスに が表示されている場合は ウェブサイト構造に更新や変更は発生していません 参考例 7-7 -
コンテンツのドラッグ中にて マウスに が表示されている場合は ウェブサイト構造に更新や変更が発生します 参考例 8 マウスに が表示された状態でマウスをドロップするとコンテンツのツリーが更新表示されます 参考例 9 ウェブサイト構造を変更後に 保存 ボタンをクリックする事で サイト構造の設定を保存します 参考例 10-8 -
保存 ボタンをクリックすると ウェブサイト構造の変更されたコンテンツがリスト表示されます 下図は ページ 1 2 3 4 のウェブサイト構造を変更した再の画像となります 参考例 11 ウェブサイト構造変更後に 再度ウェブサイト構造を確認すると コンテンツがツリー表示される事が確認できます 参考例 12-9 -
5. calculate.jsp( 標準 ) @@@extension:calculate()@@@ を利用する事で 数式等が計算されさまざまな形式で値が 出力されます 例 : @@@extension:calculate((1+2)*3+4+(5/10)+(0.5))@@@ 参考例 13 記述図 参考例 14 閲覧 - 10 -
6. calender.jsp ( 標準 ) @@@extension:calendar() 関数を利用する事で カレンダー表示が可能となります 尚 デフォルトのカレンダーは日本版ではございませんが 日本版への変更は直接 calender.jsp ファイルを修正する事で可能となります 例 : @@@extension:calendar(date=###date###:id=@@@id@@@:published:pages)@@@ 参考例 15 記述図 参考例 16 閲覧 - 11 -
7. dayscalender ( 標準 ) dayscalender.jsp は v8.1.2 以降のバージョンから追加されたファイルとなります @@@extension:dayscalendar() 関数を利用する事で 週表示の無いカレンダー表示されますが その他の動作や表示につきましては calender.jsp と同じ内容となります 尚 デフォルトのカレンダーは日本版ではございませんが 日本版への変更は直接 dayscalender.jsp ファイルを修正する事で可能となります 例 : @@@extension:dayscalendar(date=###date###:id=@@@id@@@:published:pages)@@@ 参考例 17 記述図 参考例 18 閲覧 - 12 -
8. date.jsp( 標準 ) @@@extension:date()@@@ 関数を利用する事で コンピュータ形式 の日時 (YYYY-MM-DD hh:mm:ss) でも 様々な日時フォーマットで出力することが可能となります 例 : @@@extension:date(2011-01-01 23:59:59,%Y 年 %m 月 %d 日 )@@@ 参考例 19 記述図 参考例 20 閲覧 - 13 -
9. menu.jsp( 標準 ) @@@extension:menu()@@@ 関数を利用する事で メニューを自動生成する事が可能となります 表示には 関連コンテンツ の設定が必要です 例 : @@@extension:menu(id=48:levels=2:list=ul:item=li:class=menuitem:selected=menuselec t)@@@ 参考例 21 記述図 参考例 22 閲覧 - 14 -
10. rsschannel.jsp( 標準 ) @@@extension:rsschannel()@@@ 関数を利用する事で RSS 配信が可能となります 例 : @@extension:rsschannel(contentgroup=news)@@@ 参考例 23 記述図 参考例 24 閲覧 - 15 -
10.1. RSS Channel のインポート方法について設定 >システム>データベース> 追加モジュールにて Add-On - RSS Channel 追加モジュールの選択 ボタンを押下します 参考例 25 参考例 26 押下すると 次のページが表示されますので タイトル名を変更 または変更せずにそのまま 追加モジュールのインポート ボタンを押下するとインポートが開始されます 参考例 27-16 -
インポート完了しますと コンテンツグループ なし に RSSchannel というコンテンツの名前でインポートされます 参考例 28 10.2. RSS の設定について 2. 追加モジュールのインポート でインポートしたコンテンツグループ RSSchannel に対して編集します RSS で配信する対象のコンテンツページを次の通りとします 参考例 29 次にコンテンツグループ なし の RSS Channel コンテンツを更新します 参考例 30-17 -
@@@extension:rsschannel(contentgroup=rss Channel)@@@ contentgroup=(rss 配信するグループ名を指定します ) RSS 配信をする際には配信するコンテンツを指定することが可能です ページグループを指定する方法 と データベース名を指定する方法 バージョンを指定する方法 の 3 種類あります その他の設定記述に関しましては ユーザガイドをご確認下さい 10.3. RSS 確認方法 確認する際は @@@extension:rsschannel(contentgroup=rss Channel)@@@ 指定されているコンテンツに対して http://domain/xml.jsp?id=xxx でアクセスして下さい アクセスすると下記のように表示されます 下記図は FireFox でアクセスした結果となります 参考例 31-18 -
10.4. RSS 仕様について HeartCore RSS 機能は RSS2.0 対応となります RSS1.0 atom 対応ではございません また 下記のアクセス方法がございます http://127.0.0.1/xml.xxx?id=id http://127.0.0.1/atom.xxx?id=id http://127.0.0.1/rss.xxx?id=id xml.xxx atom.xxx rss.xxx でアクセスするのは HTTP ヘッダの些細な違いを除いては同一のものとなります xml.xxx スクリプトは コンテンツを application/xml として識別し atom.xxx スクリプトは application/atom+xml として rss.xxx スクリプトは application/rss+xml として識別します http://127.0.0.1/atom.xxx?id=id でアクセスしても atom 対応のソースで配信されるわけではございません 例えば atom 対応で配信させる場合は 別途ファイル作成が必要となります 11. user.jsp( 標準 ) @@@extension:user()@@@ 関数を利用する事でログインユーザ情報を抽出する事が可能となります UserGuide より抜粋 @@@extension:user(username)@@@ 現在ログインしているユーザのユーザ名が挿入される場所を定義します @@@extension:user(name)@@@ 現在ログインしているユーザの名前が挿入される場所を定義します @@@extension:user(email)@@@ 現在ログインしているユーザの E メールアドレスが挿入される場所を定義します @@@extension:user(group)@@@ 現在ログインしているユーザのプライマリのユーザグループが挿入される場所を定義します @@@extension:user(type)@@@ 現在ログインしているユーザのプライマリのユーザタイプ挿入される場所を定義します @@@extension:user(groups)@@@ 現在ログインしているユーザのその他のユーザグループが挿入される場所を定義します - 19 -
@@@extension:user(types)@@@ @@@extension:user(organizations)@@@ @@@extension:user(created)@@@ @@@extension:user(updated)@@@ @@@extension:user(activation)@@@ @@@extension:user(notification)@@@ @@@extension:user(expiration)@@@ @@@extension:user(card_type)@@@ @@@extension:user(card_number)@@@ @@@extension:user(card_issuemonth)@@@ @@@extension:user(card_issueyear)@@@ @@@extension:user(card_expirymonth)@@@ @@@extension:user(card_expiryyear)@@@ @@@extension:user(card_name)@@@ 現在ログインしているユーザのその他のユーザタイプ挿入される場所が定義します 現在ログインしているユーザの組織が挿入される場所を定義します 現在ログインしているユーザの作成日時を挿入される場所を定義します 現在ログインしているユーザの更新日時が挿入される場所を定義します 現在ログインしているユーザのアクティベーション日時が挿入される場所を定義します 現在ログインしているユーザのスケジュールされた通知日時が挿入される場所を定義します 現在ログインしているユーザのスケジュールされた失効日時が挿入される場所を定義します 現在ログインしているユーザのカードタイプが挿入される場所を定義します 現在ログインしているユーザのカード番号が挿入される場所を定義します 現在ログインしているユーザのカード発行月が挿入される場所を定義します 現在ログインしているユーザのカード発行年が挿入される場所を定義します 現在ログインしているユーザのカード失効月が挿入される場所を定義します 現在ログインしているユーザのカード失効年が挿入される場所を定義します 現在ログインしているユーザのカードの名前が挿入される場所を定義します - 20 -
@@@extension:user(card_cvc)@@@ @@@extension:user(card_issue)@@@ @@@extension:user(card_postalcode)@@@ @@@extension:user(delivery_name)@@@ @@@extension:user(delivery_organisation)@@@ @@@extension:user(delivery_address)@@@ @@@extension:user(delivery_postalcode)@@@ @@@extension:user(delivery_city)@@@ @@@extension:user(delivery_state)@@@ @@@extension:user(delivery_country)@@@ @@@extension:user(delivery_phone)@@@ @@@extension:user(delivery_fax)@@@ @@@extension:user(delivery_email)@@@ @@@extension:user(delivery_website)@@@ @@@extension:user(invoice_name)@@@ 現在ログインしているユーザのカード CVC 番号が挿入される場所を定義します 現在ログインしているユーザのカード発行番号が挿入される場所を定義します 現在ログインしているユーザのカード郵便番号が挿入される場所を定義します 現在ログインしているユーザの配送名が挿入される場所を定義します 現在ログインしているユーザの配送組織が挿入される場所を定義します 現在ログインしているユーザの配送住所が挿入される場所を定義します 現在ログインしているユーザの配送郵便番号が挿入される場所を定義します 現在ログインしているユーザの配送市が挿入される場所を定義します 現在ログインしているユーザの配送都道府県が挿入される場所を定義します 現在ログインしているユーザの配送国が挿入される場所を定義します 現在ログインしているユーザの配送電話番号される場所を定義します 現在ログインしているユーザの配送ファックス番号が挿入される場所を定義します 現在ログインしているユーザの配送 E メールアドレスが挿入される場所を定義します 現在ログインしているユーザの配送 Web サイトが挿入される場所を定義します 現在ログインしているユーザのインボイス名が挿入される場所を定義します - 21 -
@@@extension:user(invoice_organisation)@@@ @@@extension:user(invoice_address)@@@ @@@extension:user(invoice_postalcode)@@@ @@@extension:user(invoice_city)@@@ @@@extension:user(invoice_state)@@@ @@@extension:user(invoice_country)@@@ @@@extension:user(invoice_phone)@@@ @@@extension:user(invoice_fax)@@@ @@@extension:user(invoice_email@@@ @@@extension:user(invoice_website)@@@ 現在ログインしているユーザのインボイス組織が挿入される場所を定義します 現在ログインしているユーザのインボイス住所が挿入される場所を定義します 現在ログインしているユーザのインボイス郵便番号が挿入される場所を定義します 現在ログインしているユーザのインボイス市が挿入される場所を定義します 現在ログインしているユーザのインボイス都道府県が挿入される場所を定義します 現在ログインしているユーザのインボイス国が挿入される場所を定義します 現在ログインしているユーザのインボイス電話番号が挿入される場所を定義します 現在ログインしているユーザのインボイスファックス番号が挿入される場所を定義します 現在ログインしているユーザのインボイス E メールアドレスが挿入される場所を定義します 現在ログインしているユーザのインボイス Web サイトが挿入される場所を定義します - 22 -
参考例 29 記述図 参考例 32 閲覧 - 23 -
12. redirect.jsp( 標準 ) @@@extension:redirect( )@@@ の ( ) の中にリダイレクトしたいアドレスを記述します 例 : @@@extension:redirect(http://www.xyxon.co.jp)@@@ 参考例 33 上記コンテンツに対してアクセスすると指定 URL にリダイレクトされます リダイレクトの動作を確認する場合は 管理画面からログアウトした状態で確認します 13. scheduled.jsp( 標準 ) @@@extension:scheduled()@@@ 関数を利用する事で 1ページに対し連続での公開スケジュールを設定することが可能となります 例 : 1 日ごとにコンテンツの内容を切り替えるページを例では3ページ利用します それぞれの ID を 101 102 103 とします @@@extension:scheduled(101=2008-11-20,102=2008-11-20,103=2008-11-22)@@@ 上記のように日付を YYYY-MM-DD 日付と ID を = で結びます 上記のコンテンツを参照した際に 11 月 20 日であれば ID101 のページを 11 月 21 日であれば ID102 のページを 11 月 22 日以降は ID103 のページを表示し続けます また下記のように時間を追加指定することも可能です 例 2 : 時間指定を追加する @@@extension:scheduled(101=2008-11-20 12:00,102=2008-11-21 12:00,103=2008-11-22 12:00)@@@ 上記のスケジュールの設定方法と同じですが日付を追加する場合には半角でワンスペースあけた後に時間の指定を HH:MM で行ってください - 24 -
上記が基本となる使用方法ですが応用として下記のような設定も行えます 応用編 @@@extension:scheduled(101<2008-11-20,102=2008-11-21,103>2008-11-22)@@@ 11 月 20 以前は 101 21 日は 102 22 日以降は 103 を表示します 下記の使い方も可能です @@@extension:scheduled(101=2008-11-20,102=2008-11-21,103=2008-11-22)@@@ @@@extension:scheduled(101<=2008-11-20,102=2008-11-21,103>=2008-11-22)@@@ 当然時間指定もできます @@@extension:scheduled(101<2008-11-20 12:00,102>=2008-11-20 12:00)@@@ 特定時間指定も可能です @@@extension:scheduled(101<=2008-11-20,102=2008-11-21-2008-11-25,103>=2008-11-26)@@@ 11 月 20 日以前は 101 21 日から 25 日は 102 26 日以降は 103 を表示 複数設定も可能です @@@extension:scheduled(101>=2008-12-01,102=>2008-12-02,103>=2008-12-03,104>=2008-12- 04,105>=2008-12-05)@@@ 12 月 1 日以降 101 2 日には 101 と 102 3 日には 101 と 102 と 103 4 日には 101 と 102 と 103 と 104 5 日には全部が表示されます - 25 -
14. sitemap.jsp( 標準 ) @@@extension:sitemap()@@@ を利用する事で サイトマップ xml データを自動生成する事が可能 となります 例 : @@@extension:sitemap(top=93:level=2:changefreq=daily)@@@ 参考例 34 記述図 参考例 35 閲覧 xml.jsp?id=id でアクセスします - 26 -
15. referral.jsp( オプション機能 ) @@@extension:referral()@@@ を利用する事でリファラー機能 (LPO 機能 ) が使用できます 関数は次の通りとなります 検索エンジンによる指定方法 @@@extension:referral(website=id)@@@ 例 : @@@extension:referral(yahoo=125)@@@ 複数検索エンジンによる指定方法 @@@extension:referral(website=id:website=id)@@@ 例 : @@@extension:referral(yahoo=125:google=126)@@@ キーワードによる指定方法 @@@extension:referral(keywords=id)@@@ 例 : @@@extension:referral(heartcore=125)@@@ 複数キーワードによる指定方法 @@@extension:referral(keywords=id:keywords=id)@@@ 例 : @@@extension:referral(heartcore=125:mysql=126)@@@ 複数検索エンジン及びキーワードによる指定方法 @@@extension:referral(website=keywords=id:website=keywords=id)@@@ 例 : @@@extension:referral(yahoo=heartcore=125:google=mysql=126)@@ 16. database.jsp (Enterprise 以上 ) @@@extension:database()@@@ を利用する事で 外部 DB の情報を抽出する事が可能となります 例 : @@@extension:database(database:table:column:id:value)@@@ - 27 -
17. 制限事項について (1) breadcrumbs.jsp は外部リンクや関連付けされていないコンテンツを表示させる事はできませんので予めご了承下さい (2) date.jsp は日付フォーマット ( 例 :%Y-%m-d%) 形式のみの出力となります (3) redirect.jsp を利用した際に返される HTTP のステータスコードは 302 となりますのでこちらを 301 のステータスコードに変更する事は出来ませんので予めご了承下さい (4) sitemap.jsp で出力される xml データの内容を変更する事は出来ませんので予めご了承下さい (5) referral.jsp はキーワードを完全一致で検索して 検索条件が一致するページ ID の内容が表示されます キーワードを先頭から優先的に処理致しますので予めご了承下さい (6) database.jsp で取得できる外部データベースの値は一つのみとなりますので 複数のデータがヒットする場合でも一つしか取得できない仕様ですので 予めご了承下さい (7) RSSchannel.jsp はコンテンツグループやタイプが 2 バイト文字で作成されている場合 そのグループの RSS 配信を行う事ができませんので 半角英数字を使用して下さい 以上 - 28 -