Grid consist of three controllers.
1. Page controller in your case pages/catalog/product.php
2. common/listing_grid.php - common controller that builds grid wrapper html.
3. Response controller that returns row cells for grid by ajax.
To add column you should to add column into grid definition and add column into response.
1. you can change grid definitions with hook
public function onControllerCommonListingGrid_InitData(){
$that =& $this->baseObject;
$that->loadLanguage('reward_points/reward_points');
$data = &$that->data;
if($data['table_id'] == 'product_grid'){
//your code here
$data['colNames'][] = 'your column name';
$data['colModel'] = array(
array(
'name' => '****',
'index' => '****',
'align' => 'center',
'width' => 65,
'sortable' => false,
'search' => false,
);
}
}
2. then change response
public function onControllerResponsesListingGridProduct_UpdateData()
{
$that =& $this->baseObject;
$response =& $that->data['response'];
foreach($response->rows as &$row){
$row['cell'][] = 'ffffff';
}
}