Jump to content

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


Já

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!

Link to comment
Share on other sites

×
×
  • Create New...