워드 프레스 ajax 예제

Posted on

다음으로 데이터 개체를 만듭니다. 여기에는 서버 콜백으로 전송되는 모든 변수가 포함됩니다. 워드 프레스 관리자 -ajax.php 파일은 작업 속성이 필요합니다. 다른 플러그인이 요청을 처리하기를 원하지 않는 한 고유해야 합니다. 매개 변수의 나머지 는 선택 사항입니다. textarea에서 게시물 ID와 보고서 메시지를 보내고 있습니다. 여기서 는 OOP를 사용하고 있지만 고급 사례를 사용하지는 않습니다. 코드는 별도의 함수를 절차적으로 작성할 때도 잘 작동합니다. 그러나 워드 프레스 플러그인 내의 개체는 한 가지 장점이 있습니다 : 당신은 당신의 기능을 접두사 할 필요가 없습니다 – 클래스 이름은 고유해야합니다.

사실, 워드 프레스는 AJAX 콜백에 대한 두 가지 액션 후크가 : 나는이 도움이되고 아약스 코드가 덜 협박했다 바랍니다. 어쩌면 GenerateWP는 아약스에 대한 스켈레톤 코드를 작성하는 생성기를 생성합니다. 자바 스크립트 부분에 관해서 당신은 워드 프레스 디버그 모드를 활성화하고 ajax hander에 몇 가지 error_log() 호출을 추가해야합니다, 주로 처리기가 실행되는지 확인하기 위해. 독립 실행형 WordPress 스크립트로 이전 디버깅은 처리기의 나머지 부분 (또는 최소한의 문제)없이 실행되도록해야합니다. 워드 프레스는 AJAX 관련 모든 것에 대한 단일 파일 “관리자 – ajax.php”를 사용합니다. 각 요청을 식별하고 올바른 결과/데이터를 반환하기 위해 WP는 데이터를 고유 식별자로 제출할 때 “action” 변수를 사용하며 요청 작업에 따라 작업 후크를 로드합니다. 워드 프레스 이후 2.8, wp_ajax_(작업)와 유사한 후크가있다 : 또한, 당신은 심지어 버튼을 클릭 할 필요가 없습니다. 그냥 http://yourwebsite.com/wp-admin/admin-ajax.php?action=post_love_add_love&post_id=23 방문 하 여 카운터를 증가 수 있습니다. 당신은 이미 그들에 대해 모르는 경우, Dashicons 메뉴 항목으로 워드 프레스와 함께 잘 작동 바로 이동 아이콘의 집합을 사용할 수 있습니다.

이 테스트 유형 플러그인 이며 적합 한 것 같았기 때문에이 클립 보드를 사용 하 여이 경우, 하지만 그래서 그것을 체크 아웃 그들의 사이트에 선택할 수 있는 다른 사람의 부하가 있다. 데이터 섹션에는 직접 보낼 매개 변수가 있습니다. 우리는 우리가 사랑을 속성에 어떤 게시물을 알 수 있도록 게시물 ID를 보낼 필요가있다. 워드 프레스는 또한 우리가 관리자 ajax.php 파일을 사용할 때 작업을 보낼 것을 요구합니다. 이를 `post_love_add_love`로 설정했습니다. 마지막으로 성공 함수의 응답을 경고하기만 하면 됩니다. 워드 프레스 AJAX가 작동해야하는 세 가지가 있습니다 – 그 중 다섯 잘 작동합니다. 이들은: 일단 저장 하면 귀하의 플러그인 WordPress 사이트의 백 엔드의 플러그인 섹션에 팝업을 볼 것 이다. 가서 활성화합니다. 일반적으로 플러그인을 만드는 것에 대해 더 많이 알고 싶다면 플러그인 개발 가이드를 살펴보십시오.

ajax 코드가 반환하는 데이터 내에서 디버그 메시지를 쉽게 생성할 수 없기 때문에 ajax 코드를 디버깅하는 것이 일반 워드프레스 코드를 디버깅하는 것보다 훨씬 어렵습니다. AJAX 요청을 보내려면 요청된 URL이라는 하나의 매개 변수만 있으면 됩니다. 워드 프레스는 AJAX에 대한 특별한 파일을 가지고, 그래서 우리는 우리 자신을 만들 필요가 없습니다. 그것은 /wp-관리자/관리자-ajax.php. 이것은 자바 스크립트 파일을 포함하는 워드 프레스 방법입니다. 첫째, 우리는 자바 스크립트 파일을 등록, 그래서 워드 프레스는 그것에 대해 알고 (그래서 파일을 만들고 플러그인어딘가에 배치해야합니다). wp_register_script() 함수에 대한 첫 번째 인수는 고유 식별자인 스크립트의 “핸들”입니다. 두 번째는 스크립트의 위치입니다. 세 번째 인수는 종속성 배열입니다.

스크립트에는 jQuery가 필요하므로 종속성으로 추가했습니다. 워드 프레스는 이미 jQuery를 등록, 그래서 우리가 추가하는 데 필요한 모든 핸들이었다. 워드 프레스 등록 스크립트의 자세한 목록에 대 한, 워드 프레스 코덱스를 봐. 이 데모의 경우 단축 코드를 사용하여 ajax 호출을 시작하는 단추를 만듭니다. 이렇게 하면 단추를 더 쉽게 설정할 수 있습니다.