我为表单发布创建了简单的 mod。每次提交表格时需要给出唯一的顺序序号。
我来自 WordPress,我将使用“设置 API”。但是在 Joomla 中,我不知道如何存储我的价值。
我为表单发布创建了简单的 mod。每次提交表格时需要给出唯一的顺序序号。
我来自 WordPress,我将使用“设置 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>
这会将“serial”参数添加到模块定义中。可以通过 Joomla 扩展管理器为每个模块类型的实例手动设置此参数的值。
以下是一种通过代码读取、递增和更新串行参数的技术(来自“mod_yourmodulename.php”)。
$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.
那应该这样做。