ヘルプ内検索
TOP > マニュアル > アプリのリファレンス

アプリのリファレンス

アプリを作成するためのXMLのリファレンスです。

目次

XMLの構造

XMLは以下の三つの定義から構成されます。

<? xml version="1.0" encoding="UTF-8"?>
<tool>
    <define>
        <info>
            <caption>サンプルアプリ</caption>
        </info>
    </define>
    <config>
        <item>
            <name>option</name>
            <type>string</type>
        </item>
    </config>
    <contents>
        <data>##option##さん、Hello World!</data>
    </contents>
</tool>
              

defineセクション

XMLの<define>セクションにはアプリのタイトル、大きさ等、アプリの基本的な設定に関する定義を行います。
<tool>
    <define>
        <info>
            <caption>サンプルアプリ</caption>
            <link>http://aplug.nifty.com/<link>
        </info>
        <cache_time>1000</cache_time>
        <min_width>120</cache_time>
    </define>
        ・・・・
</tool>
              

設定できる項目は以下の通りです。
属性 内容 初期値 必須 繰返 解説
infoアプリの概要 アプリの概要を記入するための属性で、 この属性の子となるようにcaption,link,custom,url,description,imageを 設定する。
info/captionアプリのタイトル info属性の子属性。
アプリのタイトルを設定する。
設定画面でパネルの追加時のアプリのタイトルバーや、 左メニューのアイコンをマウスオーバーしたときの吹き出し内に表示される。
info/linkタイトルリンク info属性の子属性。
アプリタイトルからリンクされるURL。
クリックされると新しいウィンドウが開き、そのページが表示される。
info/custumカスタマイズされたアプリのタイトル info属性の子属性。
ユーザーがアプリを追加した際に表示されるタイトル。
アプリの編集時やパネル表示時にタイトルバーに表示される。
この属性がない場合はcaptionの設定値がタイトルに表示される。
変数を使用して、ユーザーの設定値を表示させることができる。
info/descriptionアプリの説明文 info属性の子属性。
左メニューのアイコンをマウスオーバーしたときの吹き出し内に表示される。
cache_timeキャッシュ有効期限3600 XMLファイルのキャッシュをアプラグのサーバー上に置く時間(秒)。
アプラグのシステムはXMLファイルの読み込みにキャッシュを利用しており、 この時間内はキャッシュに保存されているXMLを利用する。 この時間を過ぎるとキャッシュは削除され、次に要求が来た時に再度XMLファイルを取りに行く。
有効値は正の整数。
キャッシュを使用しない場合は0を設定する。
また、キャッシュを使用しない場合に限り、アクセス情報が取得できる。
詳細は参考:アクセス情報取得に関する仕様を参考
min_widthアプリの最小幅50 アプリの領域の最小幅(px)。
パネルの最小幅は、その中にあるアプリの中の最大の最小幅をもつアプリの幅となる。
有効値は正の整数で50〜999。
heightアプリの高さ200 アプリの領域の高さ(px)。
有効値は正の整数で200以上。
scrollingスクロールバー使用フラグauto アプリの内容がiframeのサイズを超える場合に垂直・水平スクロールバーを使用するかを指定する。
設定は以下の3つ。
  • yes : 常に使用する
  • no : 常に使用しない
  • auto : 自動
charsetURLを取得する際のパラメーターの文字コード指定sjis アプリのコンテンツで「URLを指定する」を選択した場合、かつ、 URLにパラメーターを付与する場合、 この項目で指定された文字コードでパラメーターをURLエンコードします。
パラメータを付与しない場合はこの項目は無視されます。
設定は以下の3つ。
  • sjis
  • euc-jp
  • utf-8

初期値 ‥ 属性により初期値が決まっている場合がある。特に記載がない場合はこの初期値が使用される。
必須 ‥ この項目が必須な項目であるかどうか。○がついている場合、必ず定義する必要がある。
繰返 ‥ 繰り返しが可能な属性かどうか。数字が書かれている場合はその回数まで繰り返しが可能である。

configセクション

アプリにパラメーターを設定することができます。
アプリを使用するユーザーの独自の情報など、ユーザーごとに違うアプリを見せることが可能です。
<tool>
    <define>
      ・・・・
    </define>
    <config>
        <item>
            <name>name</name>
            <caption>名前</caption>
            <type>string</type>
            <require>false</require>
            <default>0</default>
        </item>
    </config>
        ・・・・
</tool>
                
configで設定した値は変数を使用することでタイトルやコンテンツの表示に使うことができます。
管理画面で設定した値は管理画面の保存ボタンが押されたときにアプラグのシステム側に保存され、 タイトル、コンテンツの表示に使用されます。

configで使用する属性は以下の通り。
属性 内容 初期値 必須 繰返 解説
itemアプリの設定項目に関する定義 設定項目毎にitemタグで囲む。
item/name項目名称
設定項目の名称でユニークである必要がある。
半角英数字、アンダースコアのみ使用可能。最大文字数32文字。
この値は変数の値を呼び出す際に使われる。
item/caption項目名称(表示用) 設定画面上に表示される設定項目の名称。
item/typeデータタイプ
設定項目の種類で、値は以下の通り。
  • string
    HTMLのformの<input type="text">と同等。
    設定画面には一行のテキスト入力欄が表示される。
    単純な文字列や、数値を入力させる際にはこのtypeを使用する。
  • enum
    HTMLのformの<select>と同等。
    設定画面にはセレクトボックスが表示される。
    既定の一覧から選択させる際にこのtypeを使用する。
    enumを使用する際には必ずその中でcaptionとvalueをペアで定義する必要がある
  • bool
    HTMLのformの<input type="checkbox">と同等。
    設定画面にはチェックボックスが表示される。
    ONかOFFを指定する際や、複数選択肢を選ばせたい場合にこのtypeを使用する。
  • hidden
    HTMLのformの<input type="hidden">と同等。
    設定画面には何も表示されない。
    hidden属性で指定され、アプリを使用するユーザーには変更できない値となる。
item/require必須フラグfalse 設定が必要がどうかのフラグ。
  • true : 必須
  • false : オプション
必須の場合にこの項目に何らかの値が入っていない場合はエラーとなる。
データタイプがstringの時のみ有効
item/default初期値 設定項目の初期値。初期の設定画面ではこの値が表示/選択された状態で表示される。最大文字数128文字。
item/enum選択肢情報 データタイプがenumの場合、この属性を指定する必要がある。 このタグの中でセレクトボックス内のメニューの項目名とその値を定義する。
item/enum/optionセレクトボックスの選択肢 このタグの中にcaptionとvalueをペアで設定する。
captionが設定されない場合はvalueの値が使用される。
item/enum/captionセレクトボックスのメニュー セレクトボックスのメニューとして表示される。 指定しない場合はvalueの値が使用される。
item/enum/valueセレクトボックスの値 セレクトボックスのそれぞれのメニューに設定される値で、 ユニークである必要がある。最大文字数128文字。

<config>が指定されたときのみ必須タグとなる

contentsセクション

アプリのコンテンツとして表示する内容をここで定義します。
定義方法は以下の2通りです。dataもしくはurlのどちらかを必ず指定する必要があります。

属性 内容 初期値 必須 繰返 解説
dataアプリのコンテンツの記述 書かれたHTMLタグをそのまま表示させる。 一旦この内容をファイルに落とし、それを管理画面及びパネルから参照する形をとる。
例えばブログパーツのスクリプトコードを貼る場合に使用する。
変数を使用して、ユーザーの設定値を表示させることができる。
urlアプリのコンテンツ取得のためのURL コンテンツを表示するとき、入力されたURLのデータを取得し、iframe で表示を行う。
URLの結果に置き換わるのでCGIの実行などに使用する。
変数を使用して、ユーザーの設定値を表示させることができる。 また、パラメーターは tool/define/charset に指定した文字コードでURLエンコードされる。

参考:変数に関する仕様

  • configセクションにあるnameの値を、変数名として使用することができる。
  • ただし、変数名には英数字またはアンダースコアのみ使用可能である。
  • ##nameの値##のフォーマットで記述すると、アプリの実行時にその部分がvalueの値に置き換わる。
  • 例えば、アプリの設定項目を下記のように指定した場合、

    <config>
     <item>
      <name>month</name>
      <caption>月</caption>
      <type>enum</type>
      <default>1</default>
      <enum>
        <option>
          <caption>1月</caption>
          <value>1</value>
        </option>
        <option>
          <caption>2月</caption>
          <value>2</value>
        </option>
        <option>
          ・・・・・・
        </option>
      </enum>
    </item>
                      
    コンテンツ取得用URL(url)を、
    http://www.example.com/example/contents?month=##month## とすると、##month## は、アプリ実行時にパネル所有者が設定したvalueの値(例えば「1」など)に置き換わる。
  • 変数名が使用できるタグは以下3つのいずれかである。
    • defineセクションのcustom:アプリのタイトル用
    • contentsセクションのdata:ブログパーツのコンテンツ用(タグを直接表示)
    • contentsセクションのurl:ブログパーツのコンテンツ用(CGIなどを実行)

参考:アクセス情報取得に関する仕様

  • defineセクションのcache_timeを0に設定した場合、アクセス情報が取得できる。
    取得できる項目と呼び出すための変数は以下の通り。
    • パネルが貼りつけられたページのURL:%url%
    • アクセス元のホスト名:%rhost%
    • アクセス元のIPアドレス:%raddr%
    • リファラー:%ref%
    • ユーザーエージェント:%ua%
    これらの変数はコンテンツデータ、または、コンテンツ取得URLの中で利用できる。