======================= 20日目 設定項目を増やす ======================= :Author: Shogo Kawahara :Date: 2010-12-20 OpenPNE3にはSNSメンバーの設定項目を増やす機能が存在します。 設定項目の定義 ============== ``$your_plugin_dir/config/member_config.yml`` でメンバーの設定項目を定義します。 今回は、ミニ日記のデフォルトの公開範囲についての変更を行えるようにしましょう。 ``$your_plugin_dir/config/member_config.yml`` :: miniDiary: # 大分類名 _attributes: caption: "ミニ日記設定" # 大分類キャプション enable_pc: true # PCで設定できるか enable_mobile: true # モバイルで設定できるか default_mini_diary_public_flag: Name: "default_mini_diary_public_flag" # 設定名 Caption: "デフォルトの公開範囲" # デフォルトの公開範囲 FormType: "select" # FormType (select, input, password) ValueType: "integer" # ValueType (string, integer, password) IsRegist: false # 登録時にこの設定を求めるか IsConfig: true # 設定でこの設定ができるか IsRequired: true # 必須か IsUnique: false # 重複を許可するか Default: 0 # デフォルト値 Choices: # 選択肢 0: "全員に公開" 1: "フレンドまで公開" 次に、この大分類用のFormクラスを作成します。 ``MemberConfigForm`` を継承し、 ``MemberConfig大分類名Form`` という名前にします。 今回は、 ``MemberConfigMiniDiaryForm`` という名前になります。 protectedである ``$category`` という変数を、大分類名にしてください。 この設定フォームについて独自に行うアクションは特にないので、以下のようになります。 ``lib/form/MemberConfigMiniDiaryForm.class.php`` .. code-block:: php setPublicFlag($this->getUser()->getMember()->getConfig('default_mini_diary_public_flag')); $this->form = new MiniDiaryForm($miniDiary); } また明日 ======== 明日は、アクティビティについて取り扱います。