以下のようにカスタムフィールドを作成しました
class JFormFieldPaddyStatus extends JFormFieldList {
protected $type = 'paddystatus';
public function getOptions($id='') {
$options = array();
$options[0] = 'Raw';
$options[1] = 'Dried';
$options[2] = 'Grind';
$options[3] = 'Ready';
return $options;
}
}
データベースには、0、1などの値が格納されます。ステータスを表示するときに、値の代わりに対応する名前を表示します。
現時点では以下のようにステータスを表示しています
<td><?php echo $row->status; ?></td>
フィールドクラスの新しいインスタンスを作成し、オプションを取得する必要があります。次に、echo
ステータスkey
/$options
array
。
最初の10行は、クラスをまだロードしていない場合にのみ必要です。
<?php
// Import JFormHelper if not exist
jimport('joomla.form.helper');
// Add your field path
JFormHelper::addFieldPath(JPATH_COMPONENT . '/models/fields');
// Load JFormFieldPaddyStatus class
JFormHelper::loadFieldClass('PaddyStatus');
// Classes loaded
// New instance
$PaddyStatus = new JFormFieldPaddyStatus();
// Get options
$options = $PaddyStatus->getOptions();
// Show status
<td><?php echo $options[$row->status]; ?></td>