フォーム投稿用のシンプルな mod を作成しました。フォームを送信するたびに、固有の連続した注文番号を与える必要があります。
私は WordPress から来ました。「Settings API」を使用します。しかし、Joomla では、値を保存する方法がわかりません。
フォーム投稿用のシンプルな mod を作成しました。フォームを送信するたびに、固有の連続した注文番号を与える必要があります。
私は WordPress から来ました。「Settings API」を使用します。しかし、Joomla では、値を保存する方法がわかりません。
最も簡単な方法は、おそらくモジュールパラメータを使用することです。
まず、モジュールの.xmlファイルでカウンターパラメーターを定義する必要があります。「extension」タグの終わりの前に次のコードを挿入して、カウンターを保持する新しいパラメーターを作成します。
<config>
<fields name="params">
<fieldset name="basic">
<field name="serial" type="text" default="0" label="Form Serial #" description="Serial # of current form." filter="integer"/>
</fieldset>
</fields>
</config>
これにより、「シリアル」パラメータがモジュール定義に追加されます。このパラメーターの値は、Joomla拡張マネージャーを使用してモジュールタイプのインスタンスごとに手動で設定できます。
以下は、コードを介して( "mod_yourmodulename.php"内から)シリアルパラメーターを読み取り、インクリメントし、更新するための1つの手法です。
$serial = $params->get('serial',0); // get current serial
$new_serial = $serial + 1; // Increment serial counter
$params->set('serial', $new_serial); // Update the module object parameter value
$p = json_encode($params->toArray()); // Encode params to write into database
$updt = new stdClass; // Object to hold update fields
$updt->id = $module->id; // Index field
$updt->params = $p; // new parameters
$db=JFactory::getDbo(); // Get the database object
$diditwork = $db->updateObject('#__modules', $updt, 'id', false); // Write the updated parameters to the modules table.
それはそれをする必要があります。