简体   繁体   中英

getting RS Eevents category name from Joomla database

I'm trying to get the category details from the joomla database for RSEvents. Can anyone shed any light on why this isn't working:

function _getCategorySlug($value) {
    // Get a db connection.
    $db = JFactory::getDbo();    
    // Create a new query object.
    $query = $db->getQuery(true);    
    // Select all articles for users who have a username which starts with 'a'.
    // Order it by the created date.
    // Note by putting 'a' as a second parameter will generate `#__content` AS `a`
    $query
        ->select($db->quoteName(array('a.*', 'b.id', 'b.ide')))
        ->from($db->quoteName('#__categories', 'a'))
        ->join('INNER', $db->quoteName('#__rseventspro_taxonomy', 'b') 
        . ' ON (' . $db->quoteName('a.id') . ' = ' . $db->quoteName('b.id') . ')')
        ->where($db->quoteName('b.ide') . ' = '.$db->quote($value));     
    // Reset the query using our newly populated query object.
    $db->setQuery($query);   
    // Load the results as a list of stdClass objects (see later for more options on retrieving data).
    $results = $db->loadObjectList();
}

I think this may help you. Using the below function you can get the categories of a particular event.

public function getCategories($id) {
    $db = JFactory::getDbo();
    $query = $db->getQuery(true);

    $query->clear()
        ->select($db->qn('id'))
        ->from($db->qn('#__rseventspro_taxonomy'))
        ->where($db->qn('type').' = '.$db->q('category'))
        ->where($db->qn('ide').' = '.$id);

    $db->setQuery($query);
    return $db->loadColumn();
}

Thanks! That was a great help and got me to where I need (with a little tweaking):

function getCategories($id) {
    $db = JFactory::getDbo();
    $query = $db->getQuery(true);

    $query->clear()
        ->select($db->qn('id'))
        ->from($db->qn('#__rseventspro_taxonomy'))
        ->where($db->qn('type').' = '.$db->q('category'))
        ->where($db->qn('ide').' = '.$id);
    $db->setQuery($query);
    $categories = $db->loadColumn();
    return implode("_", $categories);
}

Also, would be great to find out what was wrong with my original query to get category's alias from the #__categories table

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM