나는 이것이 간단하게 간단해야한다고 생각하지만, 나를 미치게합니다.
모든 본문 요소에 대해 '일반 텍스트'를 선택했습니다. 양식을 작성할 때 누구나 HTML을 전혀 넣을 수 있기를 원하지 않습니다.
그러나 줄 바꿈을 유지하고 싶습니다. 일반 설정 페이지에는 실제로 '줄 바꿈을 br과 p로 바꾸려면이 상자를 선택하십시오.
텍스트의 수익을 유지하기 위해 이것이 작동하도록 올바른 구성은 무엇입니까?
나는 이것이 간단하게 간단해야한다고 생각하지만, 나를 미치게합니다.
모든 본문 요소에 대해 '일반 텍스트'를 선택했습니다. 양식을 작성할 때 누구나 HTML을 전혀 넣을 수 있기를 원하지 않습니다.
그러나 줄 바꿈을 유지하고 싶습니다. 일반 설정 페이지에는 실제로 '줄 바꿈을 br과 p로 바꾸려면이 상자를 선택하십시오.
텍스트의 수익을 유지하기 위해 이것이 작동하도록 올바른 구성은 무엇입니까?
답변:
이것은 Drupal 7.x 버그처럼 보입니다. 필자의 경우 필터 순서를 변경해도 작동하지 않습니다.
내 단기 해결책은 이것을 테마의 template.php ( ref ) 안에 넣는 것입니다 .
<?php
/**
* Implements template_preprocess_field().
*/
function THEMENAME_preprocess_field(&$vars, $hook) {
// Add line breaks to plain text textareas.
if (
// Make sure this is a text_long field type.
$vars['element']['#field_type'] == 'text_long'
// Check that the field's format is set to null, which equates to plain_text.
&& $vars['element']['#items'][0]['format'] == null
) {
$vars['items'][0]['#markup'] = nl2br($vars['items'][0]['#markup']);
}
}
?>
보기의 필드의 경우 필드 설정의 "결과 다시 작성"섹션에서이 옵션을 별도로 설정해야합니다.
실제로 "admin / config / content / formats / plain_text"에서이 필터 순서 설정과 함께 작동해야합니다.
"HTML을 일반 텍스트로 표시"를 제거하여 아래 필터를 사용해보십시오.
코드없이이 문제를 신속하게 해결하기 위해 Advanced Text Formatter 모듈을 사용했습니다 .
오른쪽의 톱니 바퀴 (또는 형식 설정 링크)를 클릭하십시오
나는 이것이 버그라고 생각하지 않지만 "필터링 된 텍스트"입력 형식이 "일반 텍스트"로 설정된 필드와 "일반 텍스트"필드 사이의 혼란 (드루팔이 설정하는 데 도움이되지 않음)의 결과입니다. 필드를 만들 때 "필터링 된 텍스트"를 선택하면 사용자는 "일반 텍스트"및 사용 가능한 다른 입력 형식 중에서 선택할 수있는 옵션을 얻게되며 컨텐츠를 만들 때 여기에서 "일반 텍스트"옵션을 사용하면 선이 렌더링됩니다. 상자에서 끊어지고 연결됩니다. 그러나 필드 생성시 "일반 텍스트"를 선택하면 "일반 텍스트"입력 형식을 구성하는 방법에 관계없이 태그를 사용할 수 없거나 렌더링 할 수 없습니다. 따라서 "일반 텍스트"가 작동하지 않기 전에 먼저 컨텐츠 유형 설정에서 필드에 "필터링 된 텍스트"가 있는지 확인하십시오. 선택된. 역설적이고 성가 시지만 Drupal ...;)
"텍스트 처리"-방법 인 "일반 텍스트 형식"은 HTML 태그를 지원하지 않으므로 줄 바꿈이 정상적으로 작동하지 않습니다.
"필터링 된 텍스트 (사용자가 텍스트 형식을 선택)"에 대해 "텍스트 형식"을 작성하고 "텍스트 형식"을 "일반 텍스트"로 설정하십시오.
이 훌륭한 모듈은 https://drupal.org/project/wysiwyg_linebreaks에 도움이 될 수 있습니다
WYSIWYG 바꿈은 WYSIWYG 에디터의 사용자가 저장하고 대신 바꿈과 함께 자신의 웹 사이트에서 열기를 마크 업 할 수 있습니다
<p>
및<br />
태그입니다.