it-swarm-ko.tech

모듈 / 테마 / 프로필 이름 충돌을 방지하기위한 모범 사례?

현재 각 사이트에 자체 테마 및 설치 프로필이 있도록 코드를 관리하고 있습니다. 이들은 이러한 항목 (및 해당 디렉토리)의 이름이 동일한 경향이있는 방식으로 자연스럽게 진화했습니다.

예를 들어 한 사이트의 테마와 프로필을 모두 '데니스'라고합니다.

이로 인해 기능 서버 및 Aegir에 문제가 발생합니다.

이제 ... 이들 중 하나의 이름을 변경하는 것은 비교적 쉽습니다 (다양한 이유로 프로필 이름을 변경하는 것이 눈에 띄게 더 쉽습니다). 여기에 모범 사례가 있습니까? 즉, 테마 dennis_theme 또는 프로필 dennis_profile이라고 부르는 것이 정상입니까? 이 규칙을 둘 다에 적용해야합니까, 아니면 하나에 만 적용해야합니까?

5
Parsingphase

제 사무실에는 보통 대부분의 작업에 사용되는 사이트 키가 있습니다.

  • 클라이언트 : Acme Company & Co
  • 키 : acme
  • 사이트 폴더 :/path/to/WebServer/sites/acme
  • 사용자 정의 모듈 : acme_tweaks, acme_forms, acme_blocks, acme_settings
  • 테마 : acme_theme
  • 저장소 : acme.git
  • 기타...

사이트에서 사이트로 재사용하는 코드의 경우 일반화되고 클라이언트가 모호한 지 확인한 다음 기본 모듈 집합의 일부인 일부 공통 모듈에 추가합니다.

  • theme_tweaks
  • template_suggestions

우리의 규칙은 모든 클라이언트 사이트에 적용 할 수없는 경우 (적어도 앞으로) theme_tweaks 그러나 acme_tweaks 등.

10
electblake

특정 사이트에 사용되는 사용자 지정 모듈의 이름 충돌을 방지하는 방법은 사이트 이름을 사용하여 모듈 이름을 만드는 것입니다. 예를 들어, drupal.org에서 특별히 사용되는 모듈을 포함하는 프로젝트 인 "Drupal.org 사용자 정의"에 사용되는 짧은 이름은 drupalorg 인 반면 groups.drupal에 대한 사용자 정의 모듈을 포함하는 유사한 프로젝트입니다. org는 groupsdrupalorg입니다.

또한 최상위 도메인 (예 : bingo.com 및 bingo.it)에 대해서만 다른 도메인 이름을 사용하는 사이트에 대한 모듈을 만들지 않을 것이라고 생각하는 경우 최상위 도메인 사용을 피할 수 있습니다.

1
kiamlaluno

물론 프로젝트 'machine_name'을 네임 스페이스로 사용하면 도움이됩니다. 내가 먼저 알아 낸 것은 어떤 모듈, 설치 프로파일, 테마 (및 메이크 파일)를 공개 할 것인지 (github, drupal.org 등)입니다. 내가 릴리스 할 이름은 일반 이름을 사용하고 다른 이름은 PROJECTNAME_short_description을 이름으로 사용합니다.

제가 개발중인 해커 커뮤니티 프로젝트의 경우 제가 개발 한 일반적인 zen 하위 테마는 'Conway'이고 실제 테마 (Conway를 기본 테마로 사용)는 'hacker_theme'라고합니다. hacker_event_feature, hacker_install_profile, hacker_distro ( kit 호환 배포 특정 기능, 어디에서나 볼 수있는 projectname_tweaks 모듈과 동일 함)도 마찬가지입니다.

1
Capi Etheriel