Not got the time to do a full hack for this, but hopefully this quick example will get you started...
This example is only changing showthread.php, if you wanted to make the same changes to showpost.php, announcement.php and others that use the postbit, it's easy enough. I'm trying to keep this as simple as possible, so this is just a replace in showthread.php rather than a $post[...] value. It will add one additional query, which could probably be avoided, but again, I'm in a hurry and trying to keep it simple.
In showthread.php:
PHP Code:
Find both occurences of:
$postbits .= construct_postbit($post, $template);
PHP Code:
Add below each:
$acs[$post[userid]] = intval($post[userid]);
PHP Code:
Then find:
$postbit = construct_postbit($post, $template);
PHP Code:
Add below:
$acs[$post[userid]] = intval($post[userid]);
PHP Code:
Then find:
eval('print_output("' . fetch_template('SHOWTHREAD') . '");');
}
// === /GAS step 615 ===
PHP Code:
Add above:
$acs2 = implode(",", array_values($acs));
$act = $DB_site->query("SELECT COUNT(threadid) AS threads, postuserid AS userid FROM " . TABLE_PREFIX . "thread WHERE postuserid IN ($acs2) AND forumid IN (" . $GAS_setting['forums'] . ") GROUP BY postuserid");
while ($act2 = $DB_site->fetch_array($act))
{
$search[] = "ac[$act2[userid]]";
$replace[] = vb_number_format($act2[threads]);
unset($acs[$act2[userid]]);
}
foreach ($acs as $acid)
{
$search[] = "ac[$acid]";
$replace[] = 0;
}
$postbits = str_replace($search, $replace, $postbits);
In your postbit template you would then need:
PHP Code:
<if condition="THIS_SCRIPT == 'showthread'"><div><a href="search.php?$session[sessionurl]do=process&showposts=0&starteronly=1&exactname=1&searchuser=$post[username]&forumchoice=*****">Articles Written: ac[$post[userid]]</a></div></if>
Replace ***** with the article forumid. If you need more than one forumid, use forumchoice[]=*****&forumchoice[]=***** etc for each forumid. This could be generated from $GAS_setting['forums'] fairly easily if you wanted to.
Having reread it, it doesn't make a huge deal of sense, but hopefully you can find your way though it if it's of use to you.