Home arrow Blog arrow Joomla! CMS

9月
04
2008

エクステンションのパラメータでサポートされているタイプ : Joomla!1.5

diggに追加!

joomla15_custom_parameters Joomla!でエクステンションを作成するとき、必ず必要なのが、エクステンション名.xmlです。

この中でエクステンションの設定値などをタイプやデフォルト値で指定する「params」というものがあります。

さて、今回質問があったのであらためて見てみました。

<param name="名前" type="タイプ" default="初期値" label="ラベル(表示名)" description="説明" />

上記のようにパラメータを指定しますが、どのように使うのか。

  • 名前(name)について
    これは、$params->get('ここ');で取得する名前を指定します。
  • タイプ属性 ( type )について
    これにはいくつかデフォルトで指定できるものが用意されています。
    • calendar
      これは、カレンダーを表示させ、日付を指定させることができます。この時の日付フォーマットは、属性で format="%Y-%m-%d" などとparam内に書けばフォーマットを指定でいます。
      例:
      <param name="mydate" type="calendar" label="Select Date" format="%Y-%m-%d" default="" description="" />
    • category
      これは、カテゴリーのリストを表示してくれます。また、scope属性でsectionの範囲を指定することもできます。
      例:
      <param name="catid" type="category" label="Select Cat" scope="content" default="" description="" />
    • editors
      これは、エディタを選択するリストを表示します。
      例:
      <param name="editor" type="editors" label="Select Editor" default="" description="" />
    • filelist
      これはファイルリストを表示します。4つの属性値を指定できます。
      • directory
      • fitler
      • exclude
      • stripext
    • folderlist
      これはフォルダのリストを表示します。3つの属性値を指定できます。
      • directory
      • filter
      • exclude
    • helpsites
      これは、ヘルプサイトのリストを表示します。デフォルトでは、http://help.joomla.orgのみとなっています。
    • hidden
      これは、hiddenフォームを作成してくれます。ユーザーの入力はできません。
      ちなみにJBackupで使っています。
    • imagelist
      イメージリストを表示します。指定できる属性は、filterのみで以下のように指定します。
      filter='\.jpg$|\.gif$'
      と指定すれば、jpgとgifのみのリストとなります。
    • languages
      言語のリストを表示します。属性はclientです。指定できる値は、JPATH_以下の文字です。
    • list
      これは、一般的によく使われているので説明しません。
    • menu
      メニューのリストを表示してくれます。
    • menuitem
      メニューアイテムを表示してくれます。
    • password
      type属性がpasswordのフォームを表示してくます。
    • radio
      これは、一般的によく使われているので説明しません。
    • section
      セクションのリストを表示してくれます。属性はありません。また、マルチセレクトにはなりません。
      例:
      <param name="sectionid" type="section" label="Select Section" default="" description="" />
    • spacer
      これは、一般的によく使われているので説明しません。
      Tips:default属性に値を入れるとそれがボーダーの代わりに表示されます。
    • sql
      これは、自由にカスタマイズできるリストを作成してくれます。query属性にSQLクエリを入力すれば、その結果をリスト化してくれます。
    • text
      これは、一般的によく使われているので説明しません。
    • textarea
      これは、一般的によく使われているので説明しません。
    • timezones
      タイムゾーンのリストを表示してくれます。
    • usergroup
      ユーザーグループのリストを表示してくれます。
    • もっとカスタマイズしたフォームを作成したい場合
      Joomla!1.5では<paramsタグ内に次のように属性を追加することでオリジナルのelementファイルを呼び出させてオリジナルのフォームを表示させることができます。
      <params addpath="/components/com_jcontentplus/elements">
      このように指定することで指定されたパス内のtype属性で指定した名前のファイルをロードしてくれます。そして以下のようなクラス名を呼び出してくれます。
      例:type="myform"なら
      class JElementMyform extends JElement{ここに対応するメソッドを書く}
      このようにすることによってほとんど制限なくカスタマイズされたフォームを自由に作成することが可能です。
      ※JContentPlusでは多用していますので参照してみて下さい。
  • default値について
    これは、そのフォームの初期値です。はじめて表示した場合や、何も入力していない場合などにこの値が選択または、入力された状態で表示されます。
  • description値について
    マウスをフォームのタイトル部分にあてた時、表示されるTipに出力される説明です。

以上簡単に書いてみました。このように属性に指定することによって自動でフォームを作成してくれる機能がJoomla!1.0.xにももちろんありましたが、Joomla!1.5ではさらに拡張されているようです。私もすべてを使ってみたわけではありませんのであらためて便利さを感じました。

これだけ用意されているのでかなりコーディングも楽になりますね。

 

Related Articles

JContentPlusをアップデートしました:JContent+
パッチファイルを同梱していますのでインストール済みの方はパッチファイルで上書きしてください。ランゲージファイルは、モジュールのランゲージファイルは、フロントエンドに、プラグインのランゲージはバックエ...
SQLインジェクション攻撃 8月:Joomla!
先月よりは、増えているようです。別に来てくれなどとは申し上げておりません。 そして内容は右のような感じです。 でたらめなリクエストでアクセスしてきています。 気をつけよう。
Joomla!の正しいURIってわかりますか? : Extensions
Joomla!のエクステンションで$_SERVER['REQUEST_URI']をそのまま使っているエクステンションを見かけたので問い合わせから連絡しておいた。私も恥ずかしいこといっぱいしているのでお...
ログアウトしたらログイン画面にもどる : Joomla!1.0.x Hack
Joomla!1.5では、管理画面からログアウトすると管理画面のログイン画面にリダイレクトします。ですが、Joomla!1.0.xではサイトトップに戻ってしまい、もう一度ログインしたい時などに不便を...
開設1周年を忘れていました
  本サイトは確か去年の8月(実は忘れている。間違っているかもしれない。)に開設してすでに1年を過ぎていると今気がつきました。 簡単なモジュールなどからはじまり、思いついたエクステンション...
MovableType XML-RPCを一部アップデートしました
今回は、Joomla!1.0.13用のEnglish版のみです。 環境は人によって異なるので面倒ですね。決まった環境で作成するのなら楽ですが・・・。今回は、ロシア語のサイトだと動かないと問い合わせが...
Joomla! Pagebreak(改ページ) plugin for Windows Live Writer
Joomla! Pagebreak pluginを公開しました。 現在、Joomla!1.5用のみとなっています。(1.0は、単純なので必要ないかもしれない。) 下記のように改ページ(Pagebr...
Meta Tag Generatorを消す : Joomla! 1.5
<meta name="generator" content="Joomla! 1.5 - Open Source Content Management" /> Joomla!1.5...
タイプミスを修正しました : Frontpage Auto Update
このアップデートは、Joomla!1.5.1以下の方のみが対象です。 時すでに遅いかもしれませんが(すでに1.5.3になっているので)、タイプミスを発見しましたのでファイルを更新しました。versi...
MovableType XML-RPCをアップデートしました
Updated to MovableType XML-RPC 1.0.4 for only Joomla!1.5 changed: fix : for Windows Live Writer How...
な、名前がかぶっているではないか・・:Joomla!
Joomla! 1.0.14 RC1へ
あると便利!管理者用TODOモジュール
携帯 Google Mapモジュールのデモ : 携帯 Joomla!
はじめてJoomla!1.5のFCKエディタとJCEエディタを使ってみた : Joomla!1.5
担当者にはめられる
久しぶりにGoogle Video Barの問い合わせがあったので : Joomla!
Frontpage Auto Updateをアップデートしました : Joomla!1.5
早速テストサーバーのJoomla!1.5をRC4にアップグレードしてみた
WebLinkInfoモジュールのベータ版を公開しました:Joomla!1.5

joomler_kun_48.gif Blog
Joomler! Blog

for Mobile