esedic
11/15/2019 - 2:15 PM

Joomla Articles Form Field

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; 

	} 
}