Joomla Articles Form Field
<?php
defined('JPATH_PLATFORM') or die;
use Joomla\CMS\Factory;
class JFormFieldArticles extends JFormField
{
protected $type = 'articles';
protected function getInput()
{
$value = $this->value;
if(!is_array($value))
$value = array();
$db = Factory::getDbo();
$query = $db->getQuery(true);
$query->select('*');
$query->from($db->quoteName('#__content'));
$query->where($db->quoteName('state') . ' = 1');
$query->order('ordering ASC');
$db->setQuery($query);
$rows = $db->loadObjectList();
$options = '';
$options .= '<select id="'.$this->id.'" name="'.$this->name.'" multiple="multiple" >';
foreach($rows as $row){
$selected = (in_array($row->id,$value)) ? 'selected="selected"' : '';
$options .= '<option '.$selected.' value="'.$row->id.'" >'.$row->title.'</option>';
}
$options .= '</select>';
return $options;
}
}