ルール一覧 - 入力フィールドに関するもの

$field - フィールド名をひとつだけ指定できる
$fields - カンマで区切ってフィールド名を複数指定可
$roles - このルールを有効とするロールをIDで指定(複数指定可)
$templates または $tplIds - このルールを有効とするテンプレートをIDで指定(複数指定可)

Function reference: Fields

mm_renameField - 任意の入力フィールドのラベル名を変更する

mm_renameField(フィールド名,新しい名前,ロールID,テンプレートID,ヘルプ文)

任意の入力フィールドのフィールド名を変更できます。たとえば「リソース名」を「商品名」などに変更します。リソース変数・テンプレート変数のどちらにも有効。

フィールド名: フィールド名 を指定します。複数まとめて指定することはできません。 ※必須
新しい名前: 新しい名前を指定します。 ※必須
ロールID: このルールを関連付けるロールのIDを指定します。カンマで区切って複数指定できます。
テンプレートID: このルールを関連付けるテンプレートのIDを指定します。カンマで区切って複数指定できます。
ヘルプ文: 入力フィールド横のヘルプアイコンにマウスを重ねた時に表示されるガイド文をカスタマイズできます。ガイド文のカスタマイズだけならmm_changeFieldHelpルールを用いることもできます。

mm_renameField('longtitle', '長い長い長い長い長いタイトル');

タイトルフィールド([*longtitle*])の名前を変更します。

mm_renameField('pagetitle', '商品名', '', '3');

このリソースのテンプレートのIDが「3」の場合、リソース名フィールド([*pagetitle*])の名前を「商品名」に変更します

mm_hideFields - 任意の入力フィールドを隠す

mm_hideFields($fields, $roles, $templates)

ひとつまたは複数の入力フィールドを投稿画面から隠します。隠すだけなので、すでに入力された値が失われるわけではありません。

$fields: フィールド名 を指定してください。カンマで区切って複数指定できます。(必須)
$roles: このルールを有効とするロールを指定できます。カンマで区切って複数指定できます。指定しない場合は全ロールに対して有効です。
$templates: このルールを有効とするテンプレートをカンマで区切って複数指定できます。

mm_hideFields('link_attributes'); // [*link_attributes*]フィールドを隠す
mm_hideFields('alias', '1', '3'); // [*alias*]フィールドをロールID=1とテンプレートID=3のメンバーに対して隠す
mm_hideFields('tvmyVar', '2'); // Hide the template variable "myVar" for users with role "2"

mm_changeFieldHelp - 任意の入力フィールドのチップヘルプを変更する

mm_changeFieldHelp($field, $helptext, $roles, $templates)

Changes the help text that appears next to each field when the [?] icon is clicked.

Note that not all fields have help icons, notably "content" and "editor to use". In the future we might insert help icons for these missing ones.

$field: The name of the fields this should apply to. Can only accept single field [Required]
$helptext: The new help text that should appear when the help icon is clicked [Required]
$roles: comma separated list of role IDs this should be applied to. Leave empty (or omit) for all roles [Optional - default is all]
$templates: comma separated list of template IDs this should be applied to. Leave empty (or omit) for all templates [Optional - default is all]

mm_changeFieldHelp('alias', 'URLになります。半角英数で入力してください。');
mm_changeFieldHelp('alias', 'How the URL will appear', '1'); // Change the help text for alias only for users with role "1"

mm_hideTemplates - テンプレート一覧から任意のテンプレートを隠す

mm_hideTemplates($tplIds, $roles, $templates)

Hides specified templates from the Templates drop down list

$tplIds: The IDs of the templates which should be hidden from the templates dropdown. Can accept multiple values separated by commas [Required]
$roles: comma separated list of role IDs this should be applied to. Leave empty (or omit) for all roles [Optional - default is all]
$templates: comma separated list of template IDs this should be applied to. Leave empty (or omit) for all templates [Optional - default is all]

mm_hideTemplates('0'); // Hide template 0 (blank) from all usersmm_hideTemplates('0,4', '1'); // Hide templates 0 and 4 from users with role "1"

mm_inherit - 親リソースの入力フィールドの値をデフォルト値として引き継ぐ

mm_inherit($fields, $roles, $templates)

Tells one or more fields to inherit their parent document's value (if it exists).

$fields: The name(s) of the fields this should apply to. Can accept multiple fields. [Required]
$roles: comma separated list of role IDs this should be applied to. Leave empty (or omit) for all roles [Optional - default is all]
$templates: comma separated list of template IDs this should be applied to. Leave empty (or omit) for all templates [Optional - default is all]

mm_inherit('pagetitle', '0,1'); // Inherit parent's pagetitle when users with role 0 or 1 are editing 
mm_inherit('pagetitle,longtitle'); // Inherit parent's pagetitle and longtitle for all users

Note: 現在のところtextタイプの入力フィールドのみ有効です。

mm_default - 任意の入力フィールドのデフォルト値をセットする

mm_default($field, $value, $roles, $templates, $eval)

Provides a default value for specific fields in new documents / folders. Supports:

mm_default('alias','return date("Ymd");','','',true);

$field: The name(s) of the fields this should apply to. Currently accepts 'pub_date' or 'unpub_date' [Required]
$value: The default value for the field specified. If none is supplied the current date/time will be used. A static value can be supplied as a string, or PHP code (to calculate alternative dates) can be supplied if the eval parameter is set to true [Optional]
$roles: comma separated list of role IDs this should be applied to. Leave empty (or omit) for all roles [Optional - default is all]
$templates: comma separated list of template IDs this should be applied to. Leave empty (or omit) for all templates [Optional - default is all]
$eval: Should the value be evaluated as PHP code? Boolean [Optional - default is false]

mm_default('pub_date'); // Always set the publish date on new documents to the current date and time
mm_default('unpub_date', 'return date("d-m-Y H:i:s", now()+(60*60*24*28);', '', '4', true); // Automatically set the unpublish date to be four weeks in the future for documents with a template ID of "4"

mm_synch_fields - 複数の入力フィールドの値を同期させる

mm_synch_fields($fields, $roles, $templates)

複数の入力フィールドの値を同期することができます。jQueryのメソッドを用いて、キー入力を検知してリアルタイムに値を同期します。text属性のinputフィールドのみに対して有効です。

$fields: The name(s) of the fields that should be synched. Requires a minimum of 2 field names, comma separated [Required]
$roles: comma separated list of role IDs this should be applied to. Leave empty (or omit) for all roles [Optional - default is all]
$templates: comma separated list of template IDs this should be applied to. Leave empty (or omit) for all templates [Optional - default is all]

mm_synch_fields('pagetitle,menutitle,longtitle'); // Make the contents of these three fields always equal for all users and all documents 

mm_requireFields - 任意の入力フィールドを入力必須にする

mm_requireFields($fields, $roles, $templates)

Makes fields required. Will append a red asterisk to a field to indicate it is required, and alert the user if they save the document without completing all the required fields.

This works on all fields EXCEPT

$fields: The name(s) of the fields that are required, comma separated [Required]
$roles: comma separated list of role IDs this should be applied to. Leave empty (or omit) for all roles [Optional - default is all]
$templates: comma separated list of template IDs this should be applied to. Leave empty (or omit) for all templates [Optional - default is all]

mm_requireFields('pagetitle,pub_date'); // Make the page title and publication date fields required

mm_ddSetFieldValue - 任意のフィールドに値をセット

mm_ddSetFieldValue($field, $value, $roles, $templates)

任意のフィールドに値をセットします。

mm_ddMaxLength - 任意のフィールドの最大入力文字数をセット

mm_ddMaxLength($tvs, $roles, $templates, $length)

任意のフィールドに入力できる文字数を設定します。

mm_set_clear_cache - 「更新時にキャッシュを削除」の値をセット

mm_set_clear_cache($value, $roles, $templates)

例:mm_set_clear_cache();
値を「いいえ」に設定

例:mm_set_clear_cache('0', '', '3');
テンプレートIDが3のテンプレートを適用しているリソースで初期値を「いいえ」

※1.0.5J-r11からはmm_ddSetFieldValueを代わりに使います

mm_ddMultipleFields - 単一のテキストフィールドをマルチ入力化

例)mm_ddMultipleFields('フィールド名');

http://code.divandesign.biz/modx/mm_ddmultiplefields
詳細ドキュメント

PR

  • KAGOYA
  • ASP at AKIHABARA Japan
  • CMS AWARDS 2007 Winner
ページトップへ