Jump to content
Sign in to follow this  
Já

Zakázání vypsání vybraných produktů v zahraničí

Recommended Posts

Dobrý den nebo ahoj,

vytvořil jsem si tuto jednoduchou funkci:

public function getGeoCountryCode()
{
   if (file_exists(_PS_GEOIP_DIR_.'GeoLiteCity.dat')) {
       include_once(_PS_GEOIP_DIR_.'geoipcity.inc');
       include_once(_PS_GEOIP_DIR_.'geoipregionvars.php');
       $gi = geoip_open(realpath(_PS_GEOIP_DIR_.'GeoLiteCity.dat'), GEOIP_STANDARD);
       $geo_ip_code = geoip_country_code_by_addr($gi, Tools::getRemoteAddr());
   }
   return $geo_ip_code;
}



Funkce vrací na základě geolokace kód země, odkud přistupuje návštěvník.
Protože některé produkty jsou určeny výhradně pro český, případně slovenský trh, chtěl bych na základě této funkce omezit seznam produktů v případě, že návštěvník na web nepřichází z České nebo Slovenské republiky:

...

(Product::getGeoCountryCode() <> 'CZ' OR Product::getGeoCountryCode() <> 'SK' ? ' AND p.`id_product` <> 11 AND p.`id_product` <> 18 AND p.`id_product` <> 33 AND p.`id_product` <> 45' : '').

...



Průšvih je, že se mi nedaří výpis omezit, ať vložím uvedený řádek v podstatě kamkoliv :-(
Prosím, můžete mi někdo poradit, do jakého SQL dotazu mám řádek vložit, aby se mi v případě přístupu návštěvníka odjinud než z CZ nebo SK do výpisu nedostaly produkty s uvedenými ID produktu? Ideálně tak, aby se mi tyto produkty neprolívaly ani do nejprodávanějších produktů, doporučených produktů apod.
Používám Prestu 1.4.2.5

Za každej tip budu moc vděčnej.
Díky!

Share this post


Link to post
Share on other sites
Sign in to follow this  

×

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More