Blog block módosítás

alippai képe

A Viewsel könnyen el lehet érni ezt a listát:
Username1: BlogTitle1
Username1: BlogTitle2
Username2: BlogTitle3
(létrehozás dátuma szerint csökkenően rendezve)
De én ebből ilyen listát akarok:
Username1: BlogTitle1
Username2: BlogTitle3
Tehát minden usertől a legfrissebb blogot a legfrissebb blog létrehozás dátuma szerint...
Nekem tűnik csak úgy hogy ezt Viewsban nem lehet megoldani...
De ahogy ezen gondolkoztam írtam rá 1 modult:

function blogblock_block($op = 'list', $delta = 0) {
  global $user;
  if ($op == 'list') {
    $block[0]['info'] = t('Recent blog posts - 1f1');
    return $block;
  }
  else if ($op == 'view') {
    if (user_access('access content')) {
      $result = db_query_range(db_rewrite_sql("SELECT uid, nid, title FROM csallokoz_node WHERE created in (SELECT max(created) FROM `csallokoz_node` group by uid) and type='blog' ORDER BY created DESC"), 0, 8);
      if (db_num_rows($result)) {
	    while ($node = db_fetch_object($result)) { 
		  $author = user_load(array('uid'=>$node->uid));
          $items[] = l($author->name.': '.$node->title, 'node/'. $node->nid); 
        }
        $block['content']=theme('blogblock_content', $items, $title);
		$block['subject'] = t('Recent blog posts');
        return $block;
      }
    }
  }
}

De sztem valami baj van a Queryvel (azonkívül, hogyha egy időpontban 2 en küldenek akkor 2 blogjuk szerepel a listán :$) - valaki tud szebb SQLt? Ez így túl durva szerintem....
alippai képe

Már ezzel is szebb (javítsatok ki ha rosszul írtam át), de én az SQL "logikájára gondoltam" :P
Mármint ennek:

$result = db_query_range(db_rewrite_sql("SELECT uid, nid, title FROM {node} WHERE created in (SELECT max(created) FROM `csallokoz_node` group by uid) and type='blog' ORDER BY created DESC"), 0, 8);

erre változtatásával:
$result = db_query_range("SELECT uid, nid, title FROM {node} WHERE created in (SELECT max(created) FROM {node} GROUP BY uid) AND type='%s' ORDER BY created DESC", 'blog', 0, 8);
0
0

Lippai Ádám
young element

alippai képe

db_rewrite_sql():
Lehet, hogy a hiányos angol tudásom az oka (vagy az SQL tudásom), de nem jöttem rá az APIból, hogy mire van v. miért használják a blog_block()-ban :$

0
0

Lippai Ádám
young element