플러그인에 필요한 최소 워드 프레스 버전을 자동으로 결정 하시겠습니까?


22

플러그인을 개발할 때이를 실행하는 데 필요한 최소 버전의 WordPress를 자동으로 결정하는 방법이 있습니까? 나는이 있는지 확인하려면 Requires헤더는 정확하지만 수동으로 내가 새로운 핵심 기능은 지루하고 오류가 발생하기 쉬운입니다 전화 할 때마다 검사합니다.

스크립트가 쉽게 알아낼 수 있다고 생각합니다.

  1. 플러그인의 모든 파일을 스캔하십시오.
  2. 에 기초하여 모든 클래스의 인스턴스화와 함수 호출 구문 분석 new foo( [...] ), foo::bar( [...] ), bar( [...] ), call_user_func( [...] ), 등의 구문을.
  3. @sincephpDoc 태그를 사용하여 WP 소스를 구문 분석하여 해당 클래스 / 기능 각각이 WordPress에 추가 된시기를 판별하십시오 .
  4. 모든 클래스 / 기능을 포함하는 최초 버전의 WordPress와 함께 각 클래스 / 기능 및 추가 된 버전을 나열하는 보고서를 생성하십시오.

나는 둘러 보았지만 그와 비슷한 것을 찾을 수 없었으며 직접 쓸 시간이 없었습니다. 누구나 기존 솔루션을 알고 있습니까?



지적 해 주셔서 감사합니다. :)
Ian Dunn

@IanDunn 이것에 대한 해결책을 찾았다면 공유하십시오. :)
its_me

아직 해결책을 찾지 못했습니다.
Ian Dunn

2
내가 이것에 대해 더 많이 생각할수록 WordPress는 이것을 빌드하고 저장소의 모든 플러그인에 대해 실행해야하므로 버전 번호가 모든 플러그인에 대해 영원히 정확해야합니다.
mrwweb

답변:


14

http://wpseek.com/pluginfilecheck/ 에서 자동화 된 서비스로 솔루션을 찾았습니다 .

사용 된 함수 목록 생성을 포함하고 Plugin-Header 주석에 대한 제안을 제공하는 것이 정확히 수행됩니다.


고마워요. :) 웹 서비스가 아닌 WordPress 플러그인 자체라면 훨씬 편리하다고 생각하지만 아무것도 아닌 것보다 낫습니다.
Ian Dunn

2
불행히도 '파일 당'이므로 전체 플러그인을 업로드하지 않습니다. 그러나 여전히 매우 유용한 자료-훌륭한 발견!
Stephen Harris

2
이 서비스는 이제 zip 파일 업로드를 지원하며 그 안에있는 모든 파일을 자동으로 스캔합니다. :)
Ian Dunn

빌드하는 동안 플러그인의 정적 분석에서 this ( de.wpseek.com/pluginfilecheck ) 또는 다른 대안 을 추가 할 수있는 방법이 있습니까? 따라서 위 사이트로 이동하여 다시 확인하지 않아도됩니다. 모든 커밋에 대해 다른 정적 분석과 함께 보고서를 자동으로 생성합니다.
learning_13

3

업데이트 : 더 이상 정확하지 않습니다. carstenbach의 답변을 참조하십시오 .


대답은 "아니, 기존 솔루션이 없습니다"인 것 같습니다.

누구든지 작성하고 싶을 때 도움이 될 수 있습니다.

WordPress.org 저장소에 기능을 빌드하는 것에 대한 Mark의 의견은 정말 좋은 생각이지만 핵심 팀이 추가하기를 고려하기 전에 커뮤니티가 유용하다는 것을 증명하기 위해 커뮤니티가 먼저 작성해야 할 수도 있습니다.


2

글쎄, 이것은 시작점에 가깝지만 WP 기능과 여기에 추가 / 제거 된 버전의 멋진 목록이 있습니다 . 불행히도 WP 3.0.1까지 올라가지 만 3.0을 기준으로 촬영하는 경우 적어도 도움이 될 것입니다-목록에 없으면 나중에 추가되었습니다. Ozh에게 이메일을 보내서 목록을 업데이트하도록 요청할 수 있습니다. 우리 중 한 사람이 요동을 받으면 누군가가 플러그인을 만들어서 역 Deprecation Checker 와 같이 확인할 수 있습니다 .

ETA : @mrwweb 당-Adam Brown의 훅리스트 ! 현재는 3.3이며 1.2.1로 돌아가며, 더 이상 올바른 마음을 가진 사람은 아무도 없습니다 (2004 년 10 월 6 일 릴리스 날짜).


2
Adam Brown의 후크 목록을 버전 (1.2.1로 돌아 가기)으로 추가하여 확인하는 것이 좋습니다.
mrwweb

Deprecation Checker 플러그인에 대한 링크에 감사드립니다.이 코드를 작성할 시간이되면 빌드 할 유용한 코드가 제공 될 수 있습니다.
Ian Dunn

WPSE 사용자 Brian Fegter의 훌륭한 플러그인입니다.
SickHippie

0

답변은 더 이상 사용되지 않는 알림에 있다고 생각합니다. WP_DEBUG true로 개발해야합니다. 표시 또는 기록 여부는 호출이지만 WP는 더 이상 사용되지 않는 기능을 사용하면 알려줍니다.

당신이 말한 것처럼 @since를 파싱하는 것이 가능하지만 도구는 지금까지 당신을 데려 갈 수 있습니다. 코드베이스와 수동 검사에 익숙하면 갈 수 있습니다.


1
나는 당신이 질문의 반대에 답했다고 생각합니다. 질문은 현재 지원되는 기능 (예 : 플러그인이 사용하는 기능이 3.1에서 도입되었으므로 플러그인이 이전 버전에서는 작동하지 않지만 해당 기능이 오류 또는 통지를 발생시키지 않음)에 대한 지원이 얼마나 멀리 지원되는지 결정하려고합니다. 현재 지원 되기 때문 입니다 .)
mrwweb

네 말이 맞아, 피곤한 글을 올릴 수있게 해줘. 그런 다음 제안하는 것은 마지막 메이저 버전에 대해 수동으로 확인하고 임의의 시작점으로 사용하는 것입니다. 사용자가 WP를 최신 상태로 유지하도록 장려하는 것은 모든 사람에게 최선의 이익이되기 때문입니다. 일단 시작점이 설정되면, 사용되지 않는 함수와 메소드를 피하기위한 리팩토링이 기록되어야하므로, 커밋 메시지는 요청 버전을 최신 상태로 유지하기 위해 가장 적합한 위치 일 것입니다.
Chris Cox

wordpress.org/about/stats를 살펴보면 3.2는 이전 버전이 통계적으로 중요하지 않기 때문에 촬영하기에 좋은 버전이라고 말할 수 있습니다.
Chris Cox

아이디어 크리스 (Chris)에 감사하지만, 여기서 주요한 추진은 자동화 된 솔루션을 얻는 것이었다. 그러나 3.2보다 오래된 버전은 통계적으로 중요하지 않습니다.
Ian Dunn

나는 당신에게 거래를 할 것입니다-당신이 하나를 포기하고 쓰면 알려주십시오. 좋은 아이디어이며 다른 사람의 도구 상자에 유용한 도구가 될 것입니다.
Chris Cox
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.