2010-12-09 136 views
0

我最近下载了一个优惠券网站的wordpress和想给在线用户选择通过邮编搜索优惠券/优惠。我该怎么做?我知道我需要有一个可用的邮政编码列表,但林不知道我会怎么做。也许在那里有一个我不知道的插件/ mod。如何在Wordpress中使用基于位置的搜索?

我真的很感谢和帮助。我们的客户在网站上发布的条目以及优惠券优惠和其他优惠将推动这个网站的发展。 消费者可以按类别,按服务类型,按提供者,按金额和按地点以数字方式搜索交易。

我希望这是足够的信息来帮助。

非常感谢。

+1

你有没有试过? http://wordpress.org/extend/plugins/outsidein-storymap/ – 2010-12-09 07:01:48

回答

1

做到这一点的最佳方式是将您的优惠券存储在数据库中,并在每条记录上使用相对的邮政编码。最好也为邮编编制索引。

然后,您可以在数据库中搜索与用户输入的邮政编码相同的所有优惠券,或者可能作为用户邮政编码。

CODE/DB

这是我会怎么处理它:

首先,STET在你的WordPress数据库包含优惠券一张桌子,这将取决于你要存储什么信息,但沿此线的东西:

Table: CouponStore 
Rows: 
ID | Name | Type | Description | Store | ZipCode 

然后当客户输入自己的邮政编码,利用它的保持(可能使用XMLHttpRequest对象的)。

$ZipCode = acleaningfunction($_GET['ZipCode']); 
if (isset($ZipCode) && !empty($$ZipCode)) { 
    $result = mysql_query("SELECT * FROM CouponStore WHERE `ZipCode` = '".$ZipCode."'"); 
    if ($result) { 
     while ($row = mysql_fetch_assoc($result)) { 
      if (!$row) { 
       die('No rows returned.'); 
      } else { 
       return $row['Name'].', '.$row['Store'].', '.$row['Description'].', '.$row['Type'].', '.$row['ZipCode'].', '.$row['ID']; 
      } 
     } 
    } else { 
     die('Invalid query: '.mysql_error()); 
    } 
} 

没有保证该代码是完美的,但它给你一个想法。如果你想更深入的代码是完全相关的wordpress,并工作,张贴在这里,我会很快得到它。

干杯 查理

+0

是的,谢谢,一些代码示例会很好。所以我可以有一个如何实现它的想法。谢谢 – gdinari 2010-12-09 13:27:22

+0

使用我和CrowderSoup的答案可以产生一个很好的结果,它会自动显示用户最接近的优惠券。 – 2010-12-10 04:31:07

1

你可以使用一个服务(如MaxiMindGeo-IO),以获得用户位置。然后,您可以从数据库中提取优惠券,如果它们位于用户附近的地方。

这就需要你做一些定制的编码,但如果你设置了建立一个优惠券网站,那么我会认为你不害怕做一些编码:)

编辑:

使用地理IO首先你会得到用户的IP地址:

$IP = $_SERVER['REMOTE_ADDR']; 

然后你要创建的请求,并从地理IO结果:

$data = file_get_contents("http://api.geoio.com/q.php?key=[Your_Key_Here]&qt=geoip&d=pipe&q=".$IP); 

那么,你要做的是结果打入一个数组:

$location = explode('|', $data); 

现在你可以使用在$位置中的数据来搜索你的数据库是附近的优惠券用户。如果我将您的优惠券存储在数据库中,并使用经度和纬度作为位置数据。然后,您可以做一些相当简单的数学运算,以确定距离用户一英里以内指定数量内的优惠券。一个好的谷歌搜索应该帮助你。

希望这会有所帮助!