โค้ดที่ผมเขียนต้องปรับอะไรเพิ่มไหมครับ
โค้ดใน view
โค้ด: เลือกทั้งหมด
JFactory::getDocument()->addScriptDeclaration("
jQuery(function($){
$.ajax({
url: 'index.php?option=com_mypagedesign&task=page.getAjaxData',
type: 'POST',
dataType: 'json',
success: function(data) {
let modules = data.modules;
let contents = data.contents;
console.log(modules);
console.log(contents);
}
});
});
");
โค้ด: เลือกทั้งหมด
class MypagedesignControllerPage extends FormController
{
public function getAjaxData()
{
$model = $this->getModel('page');
$data = $model->getDataArticleModule();
echo $data;
JFactory::getApplication()->close();
}
}
โค้ด: เลือกทั้งหมด
class MypagedesignModelPage extends JModelAdmin {
public function getDataArticleModule()
{
$db = JFactory::getDBO();
$query = $db->getQuery(true);
$query->select($db->qn(array('id','title')))
->from($db->qn('#__content'))
->where($db->qn('state'). ' = ' . $db->q('1'))
->order($db->qn('id'). ' DESC');
$db->setQuery($query);
$contents = $db->loadAssocList();
$query = $db->getQuery(true);
$query->select($db->qn(array('id', 'title')))
->from('#__modules')
->where($db->qn('published'). ' = ' . $db->q('1'))
->order($db->qn('id'). ' DESC');
$db->setQuery($query);
$modules = $db->loadAssocList();
$data = array(
'modules' => $modules,
'contents' => $contents
);
return json_encode($data);
}
}