2010-12-09 2 views
0

나는 쿠폰 웹 사이트에 최근에 wordpress를 다운로드했으며 은 온라인 사용자에게 zipcode로 쿠폰/쿠폰을 검색 할 수있는 옵션을 제공하고자합니다. 어떻게하면됩니까 ?? 나는 내가 사용할 수있는 우편 번호의 목록을 가지고있을 필요가 있음을 알고 있지만, 나는 그것을 어떻게 할 것인지 확실히 모른다. 어쩌면 내가 모르는 플러그인이나 모드가있을 수 있습니다.어떻게 Wordpress에서 위치 기반 검색을 사용합니까?

정말 감사 드리며 도움이 될 것입니다. 이 사이트는 고객이 사이트 및 쿠폰 거래 및 기타 오퍼에 게시하는 항목에 의해 실행됩니다. 소비자는 카테고리 별, 서비스 유형별, 제공 업체 별, 금액 별, 위치 별 순으로 거래를 검색 할 수 있습니다.

이 정보가 도움이되기를 바랍니다.

고마워요.

+1

시도해 보셨습니까? http://wordpress.org/extend/plugins/outsidein-storymap/ –

답변

1

가장 좋은 방법은 쿠폰을 db에 저장하고 각 레코드에 상대 우편 번호를 저장하는 것입니다. 우편 번호도 색인 생성하는 것이 가장 좋습니다.

그러면 사용자가 입력 한 우편 번호와 동일한 우편 번호를 사용하거나 사용자 우편 번호로 사용 가능한 모든 쿠폰을 데이터베이스에서 검색합니다.

첫째, 쿠폰을 포함하는 당신의 워드 프레스 데이터베이스의 테이블 이키까지, 그것은 당신이 저장하고 싶은 정보에 달려 있지만 :

CODE/DB

이것은 내가 접근 할 방법입니다 이것의 라인을 따라 뭔가 : 고객이 우편 번호를 입력 할 때

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

+0

광산과 CrowderSoup의 답변을 모두 사용하면 사용자가 가장 가까운 쿠폰을 자동으로 보여주는 멋진 결과를 얻을 수 있습니다. –

1

당신은 사용자의 위치를 ​​얻을 수있는 서비스 (예 : MaxiMind 또는 Geo-IO)를 사용할 수 있습니다. 그런 다음 사용자 근처의 장소에있는 쿠폰을 데이터베이스에서 가져올 수 있습니다.

이 당신의 부분에 일부 사용자 지정 코딩을 필요로하지만,이 쿠폰 웹 사이트를 구축하기 위해 밖으로 설정하는 경우 다음 당신이 조금 코딩 :

편집을 두려워하지 않은 것으로 가정합니다 : 먼저 사용자의 IP 주소를 얻을 것이다 지리적 IO를 사용

:

: 당신은 요청을 생성하고 지리적 IO 결과를받을거야 그런

$IP = $_SERVER['REMOTE_ADDR']; 

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

지금 당신이 근처에 쿠폰에 대한 데이터베이스를 검색 할 수 $ 위치의 데이터를 사용할 준비 :

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

그런 다음, 당신이 할 것입니다 것은 배열로 결과를 휴식입니다 사용자. 만약 내가 어디에 당신의 쿠폰을 DB에 저장하고 위치 데이터에 대해 경도와 위도를 사용합니다. 그런 다음 사용자로부터 몇 마일 떨어진 특정 쿠폰을 찾기 위해 아주 쉽게 계산할 수 있습니다. 좋은 '구글 검색이 도움이 될 것입니다.

희망이 도움이됩니다.

+0

:) 확실히 코딩을 두려워하지 않습니다. 정보 주셔서 감사합니다! 다른 조언을 주시면 감사하겠습니다. 다시 한 번 감사드립니다. – gdinari

+0

나는 당신이하고 싶은 것을 성취하는 방법에 대해 좀 더 많은 정보를 주도록 편집했다. :) – CrowderSoup