 <p>You should be able to use any of the fields in product data in the admin panel such as Location that you already referenced.</p> <p>Everything from the <code>product</code> table for your requested row should be present in the <code>$product_info</code> array.</p> <p>Try something like this:</p> <pre><code>$template = ($product_info['location'] == 'accessory') ? 'accessory.tpl' : 'product.tpl'; if (file_exists(DIR_TEMPLATE . $this-&gt;config-&gt;get('config_template') . '/template/product/' . $template)) { $this-&gt;template = $this-&gt;config-&gt;get('config_template') . '/template/product/' . $template; } else { $this-&gt;template = 'default/template/product/' . $template; } </code></pre> <p>If you anticipate there will be many different templates for different locations it would be more efficient to use a switch control.</p> <pre><code>switch ($product_info['location']): case 'accessory': $template = 'accessory.tpl'; break; case 'tool': $template = 'tool.tpl'; break; default: $template = 'product.tpl'; break; endswitch; if (file_exists(DIR_TEMPLATE . $this-&gt;config-&gt;get('config_template') . '/template/product/' . $template)) { $this-&gt;template = $this-&gt;config-&gt;get('config_template') . '/template/product/' . $template; } else { $this-&gt;template = 'default/template/product/' . $template; } </code></pre> <p>Hope that helps.</p>