2011-11-12 2 views
4

OK. 나는 완전히 AJAX와 web2.0 프로젝트 관리 시스템을 만들고있다. 모든 회사가 다르기 때문에 WP와 같이 개발자가 플러그인을 만들 수 있기를 바랍니다.PHP - 플러그인을 허용하는 앱 만들기

내 시스템은 현재 PHP에서 좋은 API를 만들었으며 (iOS/Driod로 확장) 사이트에 AJAX 호출이있어 필요한 데이터를 가져옵니다.

예를 들어 페이지에서 각 프로젝트의 시간을 추적 할 수있는 플러그인입니다.

내 질문 : 플러그인을 허용하는 jQuery/LAMP 사이트는 어떻게 작성합니까? 나는 캔트가 정확하게 작동하는 방법에 대해 머리를 감싸고 있지 않습니다. 물론 모든 플러그인은 나를 통해 제출되며 내가 을 검토 한 플러그인 만 허용합니다.

없음 덜이, 나는 손실되지 오전 : 당신의 도움을 위해/

사전에 감사!

+0

당신이 확실히 할 수있는 한가지는 WP를 보는 것입니다! – markus

답변

1

Wordpress, Drupal 또는 Symfony와 같은 다른 시스템이 어떻게 작동하는지 확인할 수 있습니다. 나는 플러그인을위한 데이터베이스 테이블과 관련 폴더를 통해 변경 (업그레이드, 삭제, 추가)을 찾는 '재 스캔'기능을 가지고있다.

사용자 정의 메서드가있는 경우 기본 처리기뿐만 아니라 (또는 대신) 호출되도록 코드에 '후크'를 추가해야합니다. 이것은 매우 복잡하고 마음이 생길 수 있습니다 :)

1

나는 이렇게했을 것이다. 각 플러그인은 주 파일 (./Pluginname/Pluginame.php)이 들어있는 디렉토리 ("./Pluginname")이다. Pluginame.php에는 "Pluginame"이라는 클래스가 포함되어 있습니다.이 클래스는 관리 패널에서이 플러그인을 사용할 수있게 설정할 때마다 인스턴스가 만들어집니다. 따라서이 클래스에는 향후 코드 성능에 영향을주는 몇 가지 함수가 포함되어 있습니다. 스크립트는 플러그인 디렉토리를 검사하고 사용 가능한 모든 플러그인을 관리자 패널 모듈에 표시해야합니다.

다음으로 프로젝트 관리 시스템 용 플러그인을 작성하면 로컬 사본으로 테스트하고 내 플러그인의 첫 번째 버전을 보내 줄 수 있습니다. 당신이 그것을 받아들이면, 당신은 자신의 플러그인 디렉토리에 자동으로 다운로드 할 수있는 사이트의 플러그인 목록에 내 플러그인을 넣습니다.

1

사용자가 플러그인을 빌드 할 수있는 인터페이스를 통해 API를 노출하십시오. 플러그인이 콘텐츠를 제공 할 수도있는 경우 콘텐츠가 저장된 위치, 검색 방법 및 테마/스키닝 지원을 처리해야합니다.

플러그인을 활성화/비활성화하고 플러그인 설계자가 플러그인을 활성화하고 사용하는시기를 조정하는 일종의 라이프 사이클 (단순하지만) 아키텍처를 고려해야합니다.