WordPress 프레임워크로 새로운 아늑한 집 – IncludeWP

게시 됨: 2016-07-27

올해 초(2016년 3월) 플러그인 검토 팀은 공식 플러그인 저장소에서 프레임워크가 더 이상 허용되지 않는다는 성명을 make.wordpress.org에 발표했습니다.

우리는 WordPress 프레임워크를 위한 가치 있는 저장소를 만들기로 결정하고 IncludeWP를 만들었습니다. WordPress 플러그인 및 테마 개발자를 위한 모든 오픈 소스 프레임워크를 표시하는 홈 또는 리더보드입니다. 개발자가 현재 시장에 나와 있는 제품을 평가할 수 있는 원스톱 상점입니다.

팀이 3주 전에 함께 하기로 결정한 재미있고 상쾌한 주말 사이드 프로젝트로 시작했고 즉시 출시할 계획이었습니다. 그러나 몇 년 동안 나는 내가 신뢰하는 사람들로부터 피드백을 받기 전에 아무 것도 공개하지 않는 습관을 채택했기 때문에 WordPress 커뮤니티에서 내 친구 몇 명을 먼저 찌르기로 결정했습니다.

우리는 훌륭한 피드백과 몇 가지 UI 제안을 받았지만 한 가지 댓글이 가장 많은 관심을 끌었습니다. Addendio의 Luca Fracassi는 다음과 같이 말했습니다. .”

"그럼 당연하지! 정말 놀랍습니다.” 나는 속으로 생각했다. 그러나 이러한 플러그인 및 테마를 수동으로 검색하고 추가하는 데 시간을 할애할 방법은 없습니다.

IncludeWP 저장소는 Freemius 팀을 위한 재미있고 상쾌한 주말 사이드 프로젝트로 시작되었습니다.Tweet

Luca와 몇 번을 주고받은 후 WordPress.org API 및 SVN을 활용하여 WordPress.org의 프레임워크와 관련된 플러그인 및 테마를 자동으로 식별할 수 있다는 것을 깨달았습니다. 그래서 우리는 힘을 합치기로 했습니다.

Luca는 프레임워크 식별 로직을 개발하고 .org에서 실행했으며 해당 데이터를 사용할 수 있도록 사용자 지정 API 엔드포인트를 친절하게 공개했습니다. Luca의 엔드포인트를 활용하여 WordPress.org에서 플러그인 및 테마 데이터를 가져와 프레임워크 페이지 아래에 표시했습니다.

CMB2 프레임워크

CMB2를 사용하는 WordPress.org의 플러그인 및 테마

완성하는 데 일주일이 더 걸렸지만 이제 10배 더 강력해졌습니다! 개발자는 실제로 프레임워크를 사용하는 다른 제품을 볼 수 있습니다. 그리고 오픈 소스 정신으로 GitHub에서 공개적으로 사용할 수 있습니다.

WordPress 프레임워크, SDK 및 라이브러리가 뛰어난 이유는 무엇입니까?

코드 재사용성은 굉장합니다! 그것은 실제로 개발의 기초의 일부입니다. 저것과 같이 쉬운. Jigoshop의 포크로 시작된 온라인에서 가장 인기 있는 전자상거래 플랫폼인 WooCommerce를 살펴보십시오.

개발자로서 우리는 자체 코드를 최적화하고 중복성이 없는지 확인하려고 노력합니다. 그러나 다른 개발자의 작업에 관해서는 갑자기 매우 까다 롭습니다.

개발자로서 무슨 생각을 하는지 알겠습니다...

"아무도 나처럼 코드를 작성할 수 없습니다." 뉴스 플래시: 재능 있는 개발자가 많이 있습니다. 속물이 되지 말고 재사용을 시작하세요!

또한 일부 프레임워크는 수천 명의 개발자가 사용하고 수십만 개의 웹 사이트에 배포되어 수년 동안 프로덕션 환경에서 실행되었습니다. 이러한 라이브러리는 새로 작성된 코드보다 버그 증거가 더 많을 가능성이 큽니다.

"내가 직접 구축할 수 있으며 프레임워크가 필요하지 않습니다." – 예, 할 수 있습니다! 하지만 왜? 왜 바퀴를 재발명하고 싶습니까? 알겠어; 코드가 아닐 때 학습 곡선이 있습니다. 그러나 반면에 견고한 문서로 프레임워크를 배우는 것은 처음부터 모든 것을 스스로 개발하는 것보다 확실히 빠를 것입니다.

“왜 오버헤드가 필요합니까? 나는 라이브러리가 처리하는 것의 작은 부분집합만을 사용합니다. 해킹, 프레임워크가 너무 부풀려서 내 플러그인보다 큽니다!” – 대부분의 플러그인은 아주 작은 기능으로 시작합니다. 오늘은 그게 전부일 수도 있지만 WordPress 플러그인이나 테마가 발전함에 따라 아마도 더 많은 것을 추가하게 될 것입니다. 견고한 기초가 있으면 삶이 더 쉬워지고 미래에 많은 시간을 절약할 수 있습니다. 장기적으로 계획을 세우고 귀하의 요구 사항과 로드맵에 가장 적합한 프레임워크를 선택하십시오.

결론 - 같은 것을 계속해서 다시 작성하는 데 시간을 낭비하지 마십시오. 사용자 정의 필드를 처리하는 20가지의 다른 프레임워크가 있습니다.

프로젝트를 오픈소스화하기로 결정한 이유는 무엇입니까?

우리가 WordPress용 Freemius를 시작한 이유 중 하나는 멋진 커뮤니티와 오픈 소스 사고 방식 때문입니다. 우리는 오픈 소스와 그 힘을 굳게 믿으며 이것이 생태계에 환원하는 우리의 방법 중 하나입니다.

두 번째로, 저는 코드 재사용성에 대해 설교하고 있습니다. 내가 할 수 있는 최소한은 다른 개발자가 프로젝트에 우리 코드를 재사용할 수 있는 옵션을 제공하는 것입니다. 이 코드 베이스를 재사용함으로써 누구나 GitHub repos에 대한 유사한 카테고리 유형 목록 미니 사이트를 쉽게 만들 수 있습니다.

이 코드 베이스를 재사용함으로써 누구나 쉽게 GitHub repos.Tweet에 대한 유사한 카테고리 유형 목록 미니 사이트를 만들 수 있습니다.

WordPress 프레임워크의 함정 – 버전 관리

WordPress는 운영 체제가 아니며 다른 플러그인과 테마 간에 사일로가 없습니다. 또한 WordPress 코어에는 라이브러리 종속성 메커니즘이 없습니다. 즉, 두 개의 플러그인이 버전이 다른 동일한 프레임워크를 사용하는 경우 이전 버전과의 호환성 문제가 발생하고 오류가 발생하며 최악의 경우 사이트가 완전히 중단될 수 있습니다.

따라서 내 친절한 조언을 따르십시오. 좋아하는 프레임워크, 라이브러리 또는 SDK를 선택하기 전에 버전 관리를 처리하는지 확인해야 합니다.

선택한 프레임워크가 버전 관리를 처리하는지 확인해야 합니다.Tweet

플러그인 또는 테마에 적합한 프레임워크를 선택하는 방법

글쎄, 그것은 달려있다.

새 WordPress 플러그인 또는 테마를 시작하는 경우 다음을 살펴봅니다(꼭 이 순서는 아님).

  • 먼저 프레임워크가 제공하는 다양한 기능 세트를 이해하기 위해 시장에 무엇이 있는지 확인합니다.
  • 나는 확실히 프로젝트의 인기를 조사할 것입니다. 더 인기 있는 프로젝트에는 더 강력한 커뮤니티가 있을 수 있으므로 도움/조언을 더 쉽게 얻을 수 있습니다. 또한 프레임워크의 주요 버그가 이미 제거되었음을 의미합니다.
  • 새로운 프레임워크를 검토하는 데 더 많은 시간을 할애할 것입니다. 웹 개발 관행이 진행됨에 따라. 또한 WordPress 코어는 진화하고 있으며 새로운 프레임워크는 더 효율적일 수 있으며 새로운 코어 메커니즘을 활용하여 더 적은 코드로 더 많은 작업을 수행할 수 있습니다.
  • 저는 WordPress 커뮤니티의 개발자 친구에게 물어볼 것입니다. 제가 신뢰하고 경험을 바탕으로 저에게 진지한 피드백을 제공할 수 있는 사람들입니다.

틀이 있어요! IncludeWP에 어떻게 추가합니까?

쉬워요! 웹사이트는 GitHub의 오픈 소스 프로젝트입니다. IncludeWP 리포지토리를 포크하고, 프레임워크를 src/frameworks 폴더에 <name>.php로 추가하고, 풀 요청을 제출하면 됩니다.

몇 가지 간단한 지침을 따르십시오.

  • GPL: 프레임워크는 GPL로 라이선스가 부여되어야 하므로 이를 사용하는 플러그인 및 테마는 WordPress.org에 나열될 수 있습니다(GPL이 아닌 프레임워크는 플러그인을 GPL이 아닌 것으로 렌더링함).
  • GitHub: 프레임워크에는 연결하고 통계를 가져올 수 있는 GitHub의 공개 리포지토리가 있어야 합니다.
  • 형식 준수: src/frameworks의 다른 프레임워크와 동일한 필드를 모두 작성합니다.
  • WordPress.org(선택 사항): 프레임워크가 이미 WordPress.org에 플러그인으로 나열되어 있는 경우 플러그인의 슬러그에 대한 참조를 추가하세요.
  • 짧은 설명: 개요 페이지에 대한 설명을 짧고 간결하게 유지합니다.

다음은 무엇입니까?

IncludeWP 프로젝트 공유

이제 여러분이 커뮤니티에 이 소식을 전할 차례입니다. 친구에게 알리고, Twitter에서 공유하고, GitHub에서 프로젝트에 별표 표시하고… 재사용하세요!