Query content

$db =& JFactory::getDBO();
$user     =& JFactory::getUser();
$userId   = (int) $user->get('id');

$nullDate    = $db->getNullDate();
jimport('joomla.utilities.date');
$date = new JDate();
$now = $date->toMySQL();

$where    = 'a.state = 1'
. ' AND ( a.publish_up = '.$db->Quote($nullDate).' OR a.publish_up <= '.$db->Quote($now).' )'
. ' AND ( a.publish_down = '.$db->Quote($nullDate).' OR a.publish_down >= '.$db->Quote($now).' )'
;

$contentConfig = &JComponentHelper::getParams( 'com_content' );
$access        = !$contentConfig->get('shownoauth');
$aid        = $user->get('aid', 0);

if ($catid)
{
    $ids = explode( ',', $catid );
    JArrayHelper::toInteger( $ids );
    $catCondition = ' AND (cc.id=' . implode( ' OR cc.id=', $ids ) . ')';
}
if ($secid)
{
    $ids = explode( ',', $secid );
    JArrayHelper::toInteger( $ids );
    $secCondition = ' AND (s.id=' . implode( ' OR s.id=', $ids ) . ')';
}

$query = 'SELECT a.*, ' .
' CASE WHEN CHAR_LENGTH(a.alias) THEN CONCAT_WS(":", a.id, a.alias) ELSE a.id END as slug,'.
' CASE WHEN CHAR_LENGTH(cc.alias) THEN CONCAT_WS(":", cc.id, cc.alias) ELSE cc.id END as catslug'.
' FROM #__content AS a' .
($show_front == '0' ? ' LEFT JOIN #__content_frontpage AS f ON f.content_id = a.id' : '') .
' INNER JOIN #__categories AS cc ON cc.id = a.catid' .
' INNER JOIN #__sections AS s ON s.id = a.sectionid' .
' WHERE '. $where .' AND s.id > 0' .
($access ? ' AND a.access <= ' .(int) $aid. ' AND cc.access <= ' .(int) $aid. ' AND s.access <= ' .(int) $aid : '').
($catid ? $catCondition : '').
($secid ? $secCondition : '').
($show_front == '0' ? ' AND f.content_id IS NULL ' : '').
' AND s.published = 1' .
' AND cc.published = 1' .
' LIMIT 0,'.$limit;

$db->setQuery( $query );
$rows = $db->loadObjectList();

foreach($rows as $row){
    $link = JRoute::_(ContentHelperRoute::getArticleRoute($row->slug, $row->catslug, $row->sectionid));
    echo $link."<br>";
}
 
joomla/developer/query_content.txt · Darrera modificació: 2010/06/11 15:30 per resteve
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki