Drupal 7 이미지 필드에 다른 허용 파일 확장자를 추가 할 수없는 이유는 무엇입니까?


12

admin/structure/types/manage/image/fields/gallery_image아래에서 보는 것처럼 이미지 업로드를위한 SVG 파일 확장자를 추가했습니다 .

여기에 이미지 설명을 입력하십시오

그러나 이미지를 업로드 할 때 여전히 SVG를 업로드 할 수 없습니다.

여기에 이미지 설명을 입력하십시오

관리자 페이지에서 "저장"을 확실히 눌렀고 캐시를 지우고 field_config_instance테이블을 검사 할 때 데이터베이스에서 원하는 설정을 볼 수도 있습니다 . 업데이트되지 않는 다른 테이블이나 캐시가 있어야합니다. 어떤 생각?

답변:


7

이미지 위젯 내부적 수 있습니다 (그리고 자동으로 강제 시행은 드루팔 6 게시)만을 사용 png, gif, jpg및 / 또는 jpeg확장을. 따라서 필드에서 확장을 제거 할 수 있습니다. 예를 들어 gif애니메이션을 피하기 위해 대부분의 구현에서 제거 했지만이 목록에는 추가 할 수 없습니다. 나는 이것이 업로드 된 후에 이미지 자체를 표시하고 이전 IE 브라우저의 디스플레이를 실제 형태로 깨뜨리고 싶지 않기 때문에 이것이 상상할 수 있습니다 (그리고 이미지 스타일이 어떻게 작동하는지 알고있는 사람 :)


좋은 대답이지만 안타깝습니다.
Joe Corneli

2
할 일에 대한 논의는 여기에 있습니다 : drupal.org/node/1014816
조 Corneli

2

파일 필드 hook_field_formatter_info_alter를 사용하고 사용자 정의 모듈에서 구현하여 파일 필드 에도 "이미지"포맷터를 사용할 수 있습니다. 그러면 업로드 된 SVG를 포함 된 이미지로 쉽게 출력 할 수 있습니다.

/**
 * Implements hook_field_formatter_info_alter().
 */
function MODULNAME_field_formatter_info_alter(&$info) {
  $info['image']['field types'][] = 'file';
}


1

미디어 모듈을 사용하는 또 다른 방법이 있습니다 . 이것이 설치되면 SVG 형식을 이미지 아래의 admin / structure / file-types에 추가 할 수 있습니다.

내가 실수하지 않으면 Drupal은 이전 버전과의 호환성 문제 (주로 IE8 이하)로 인해 기본적으로 SVG를 허용하지 않습니다. 그래도 프로젝트에 SVG를 배치했지만 아직 불만을 듣지 못했습니다.


그것이 올바른 길인지 확실하지 않지만, Media는 분명히이 문제를 해결하는 길입니다.
digitgopher

레코드를 위해 SVG라는 새로운 유형을 만들었습니다. 이것은 출력을 사용자 정의하고 이미지에 대해 다른 출력을 가질 수있는 좋은 방법입니다.
shaneonabike
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.