If you want hide the product price go the template product.tpl located in themes/classic/templates/catalog/product.tpl
And find the block name product_prices :
{block name=’product_prices’}
{include file=’catalog/_partials/product-prices.tpl’}
{/block}
And add an if condition that block this way :
{block name=’product_prices’}
{if $product.price==0}
{l s=’Get it for Free ‘ d=’Shop.Theme.Catalog’}
{else}
{include file=’catalog/_partials/product-prices.tpl’}{/if}
{/block}
If you want to apply the condition only to the virtual products add the is_virtual condition.
{block name=’product_prices’}
{if $product.is_virtual && $product.price==0}
{l s=’Free Download ‘ d=’Shop.Theme.Catalog’}
{else}
{include file=’catalog/_partials/product-prices.tpl’}{/if}
{/block}