한 번에 여러 컨텐츠 유형에 필드를 추가 하시겠습니까?


9

한 번에 여러 컨텐츠 유형에 필드를 추가하고 모든 컨텐츠 유형에 대해 한 번에 구성하려고합니다.

이유는 많은 콘텐츠 유형이 있기 때문에이 새로운 필드를 각각 추가하여 업데이트해야합니다. 이 필드는 모든 컨텐츠 유형에 대해 동일하게 구성됩니다. 추가하려는 모든 컨텐츠 유형에 대해 필드를 추가 한 다음 구성하는이 프로세스를 반복해야하며 잠시 후 힘들어집니다.

많은 콘텐츠 유형에 새 필드를 대량 추가 / 구성 할 수있는 방법이 있습니까?


콘텐츠 유형은 몇 개입니까?
bobylapointe

이 질문은 더 이상 OP와 관련이 없지만 현상금을 설정 한 Nigel Waters와 관련이 있다고 가정합니다. Nigel이 댓글을 달겠습니까?
Kari Kääriäinen

25 개가 있습니다 (매우 큰 사이트이므로 별도의 콘텐츠 유형이어야합니다).
Nigel Waters

Btw, 또 다른 해결책은 이런 종류의 물건을 위해 싼 사람을 고용하는 것입니다 :)
donquixote 2

아니면 브라우저 매크로?
donquixote

답변:


9

기능 모듈을 사용하는 광범위한 회선은 다음과 같습니다.

  1. 직접 두 가지 (패턴을 보려면) 컨텐츠 유형에 필드를 추가하십시오.
  2. 새로 작성된 필드에 대한 필드베이스 및 필드 인스턴스를 포함하는 피처 작성
  3. 필드베이스와 인스턴스에 필요한 모든 컨텐츠 유형을 곱한 작성된 모듈 편집
  4. 편집 된 모듈 사용

정확히 기능으로 필드를 처리하는 방법을 기억하지 못합니다. 필드를 만든 후에 기능을 비활성화 할 수 있습니까?
donquixote

신생아 모듈은 기능에 의존하므로 기본적으로 아니오입니다.
Kari Kääriäinen

기능을 비활성화하지 않고 신생아 모듈을 비활성화합니다. 문제는 필드 인스턴스가 여전히 존재하는지 여부입니다. Lester Peabody 또는 Nigel Waters가 시도하고 다시보고 할 수 있습니다.
donquixote

미안 예, 실제로 둘 다 비활성화 할 수 있으며 필드는 데이터베이스에서 계속 작동합니다. 지금 테스트 중입니다.
Kari Kääriäinen

이것은 기본 drupal 설정과 대부분의 다른 drupal 설정에 대한 정답입니다. 그러나 컨텐츠 유형마다 다른 표시 모드를 사용할 수있는 경우 각 컨텐츠 유형의 필드를 직접 구성하는 것이 좋거나 field_instance 배열 코드에서 올바른 표시 유형을 사용해야합니다.
Sumeet Pareek

5

필드 도구 모듈을 사용하십시오 .

필드 작업을위한 유용한 UI 도구 모음 :

Overview of fields with links to edit single instances, and all instances at once
Clone any field instance to multiple entities and bundles
Clone all field instance of a bundle to multiple entities and bundles
Import and export fields
Delete multiple instances of a field
Apply a vocabulary to multiple entities and bundles at once (the same way vocabularies were applied to content types on Drupal 6)
... your idea here. Patches welcome!

이것은 꽤 굉장하게 들립니다. 이걸보아야 할 것입니다.
Lester Peabody

3

이를 위해 커스텀 모듈을 작성하는 것이 마음에 들지 않으면 코드를 통해 필드를 내용 유형에 추가하는 것이 상대적으로 쉽습니다.
$instance = array(
'field_name' => 'field_firstname',
'label' => 'First name',
'entity_type' => 'node',
'bundle' => 'person',
);
field_create_instance($instance);

위의 코드는 "field_firstname"필드를 컴퓨터 이름이 "person"인 컨텐츠 유형에 추가합니다. 따라서 필드와 여러 컨텐츠 유형을 선택하고 제출시 필드가 선택된 모든 컨텐츠 유형에 추가되는 양식을 모듈로 작성할 수 있습니다.


1

이 작업을 수행 해야하는 몇 번은 Field Collection 사용했습니다 .

여러 필드를 첨부 할 수있는 필드 수집 필드를 제공합니다.

모든 컨텐츠 유형에 필드 콜렉션 필드를 추가해야하기 때문에 여전히 어려운 작업입니다. 즉, 여러 컨텐츠 유형에 5 개 또는 6 개의 필드를 추가하는 경우 필드 콜렉션에서 초기 5 개 또는 6 개 필드 만 구성하면됩니다.

그런 다음 field_collection_field컨텐츠 유형 중 하나 에서 필드 콜렉션 필드 (인수를 위해 호출 )를 작성하고 다른 모든 필드에서 동일한 필드를 재사용하십시오.

내가 말했듯이, x 양의 콘텐츠 유형에 대해 하나의 필드를 구성해야하지만 10 개의 콘텐츠 유형에 10 개의 필드를 만드는 것이 좋습니다 (예 :).


아 .. 죄송합니다. 방금 질문을 다시 읽었으며 한 필드 만 필요합니다. 시간을 낭비해서 죄송합니다> _ <
Chapabu

즉,이 한 필드를 필드 모음에 넣고 원하는 방식으로 구성한 다음 이미 구성된 필드를 사용하여 필드 모음을 참조 할 수 있습니다. 그러나 이것은 약간 과잉입니다.
Chapabu

문제 없습니다 Chapabu, 이것은 도로에서 이와 같은 일을 해야하는 경우를 대비하여 앞으로 유용한 정보입니다.
Lester Peabody

1

데이터베이스를 직접 조작하는 것이 편한 경우 필드 인스턴스는 {field_config_instance} 테이블에 저장됩니다. 하나의 컨텐츠 유형에 대해 필드를 추가 / 구성한 다음 데이터베이스 테이블에서 레코드를 찾아 복제 할 수 있습니다.

복제 된 행에서 두 개의 열 값을 변경해야합니다.

  • id : 테이블에 고유 한 새로운 정수 여야합니다.
  • 번들 : 새 컨텐츠 유형의 시스템 이름이어야합니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.