Wordpress 플러그인을 개발하는 동안 문제가 발생했습니다. 기본적으로 플러그인은 플러그인을 빌드 할 때 분당 6 개로 제한해야하지만 플러그인을 활성화하면 플러그인 요청시 필요한 API 데이터를 6 개 이상 요청해야합니다. 에서.API 요청 제한에 대한 해결 방법
API는 LimelightCRM API (http://help.limelightcrm.com/entries/317874-Membership-API-Documentation)입니다. API의 campaign_view
메소드를 사용하고 있는데, 내가 할 일은 잠재적으로 일괄 적으로 요청을하는 것이지만 문제에 접근하는 방법을 잘 모르겠습니다.
아이디어 1 : 그냥 내 머리 위로 떨어져, 나는 campaign_find_active
를 사용하여 플러그인 활성화에 PHP를 확인해야합니다 내가 요청의 수를 계산해야합니다 생각하고있어 그 횟수를 요청 제한 (6)으로 나누고 필요한 모든 데이터를 가지고 Wordpress transients에 저장할 때까지 분당요청을하십시오. 그러나 30 개의 요청을해야한다고 말하면 사용자는 5 분 정도 기다려서 데이터를 다운로드 할 수 없습니다. 필자가 솔루션을 생각해 낼지라도, 플러그인이 6 개 이상의 요청을 할 필요가없는 방식으로 Wordpress transients의 시간 제한을 설정해야 할 수도 있습니다. 그래서 내 생각에, Wordpress 후크를 사용하여 마지막 요청 일괄 처리를 확인하는 동안 요청을 수시로 처리 할 수 있습니까? 그래서 이미 매우 까다로워지고 있습니다. 너희들이 나를 올바른 방향으로 인도 할 수 있을지 궁금해. 이 속도 제한을 이길 수있는 방법에 대한 아이디어가 있습니까?
아이디어 2 : 데이터베이스에 값을 저장하는 크론 작업은 무엇입니까?
//Fetch Campaign ID's
$t_campaign_find_active = get_transient('campaign_find_active');
if(!$t_campaign_find_active){
limelight_cart_campaign_find_active();
$t_campaign_find_active = get_transient('campaign_find_active');
return $t_campaign_find_active;
}
//Fetch Campaign Information for each Campaign ID
$llc_cnames = array();
foreach($llc_cids as $count => $id) {
if(!get_transient('campaign_view_'.$id)) {
limelight_cart_campaign_view($id);
$llc_cnames[$id] = get_transient('campaign_view_'.$id);
}
}
//Merge Campaign ID's and Campaign Info into Key => Value array
$limelight_campaigns = array_combine($llc_cids, $llc_cnames);
참고 : 그들은 단순히 하나의 API 요청을 응답을 반환하고, 워드 프레스 과도에 저장하기 때문에 기능 limelight_cart_campaign_find_active()
및 limelight_cart_campaign_view()
은 포함되지 않습니다. 필요한 경우 코드를 포함 할 수 있지만이 예제의 목적 상 플러그인의 일부가 작동하므로 포함하지 않았습니다.
아이디어 - 3 [라임 라이트 CRM 지원]에 문의하십시오 (https : //로 limelightcrm .com/contact.php) 무엇을 할 수 있는지 알아보십시오. 때로는 해킹에 너무 익숙한 경우가 있습니다. 상대방에 승인되고 기성품 인 사용자가있을 수도 있습니다. – Boaz