"& nbsp;"를 자동으로 추가하는 Wordpress?


12

워드 프레스 자체인지 또는 Tiny MCE인지 잘 모르겠습니다. 그러나 HTML과 Visual 편집기 사이를 전환 할 때을 추가하고 전환 할 때  마다 추가합니다. 코드에 줄 바꿈이 없어도 HTML 코드의 태그를 기반으로 코드를 배치 할 위치를 결정하는 것 같습니다.

이 원인은 무엇이며 어떻게 해결합니까?

템플릿 함수 파일에서 이미 이것을 시도했습니다.

//disable auto p
remove_filter ('the_content', 'wpautop');
remove_filter ('comment_text', 'wpautop');
// Remove auto formatting
remove_filter('the_content', 'wptexturize');
remove_filter('comment_text', 'wptexturize');
remove_filter('the_title', 'wptexturize');

2
실제로 탭을 전환하면 자동 으로이 작업을 수행하고 있으며 탭을 보았을 때 매우 성가신 것으로 나타났습니다. 그래도 고칠 방법에 대한 실마리는 없습니다 ...
Joost de Valk

1
BBEdit에서 코드를 붙여 넣는 HTML 편집기를 거의 독점적으로 사용합니다. WP에 저장하면이 작업을 수행하는 것 같습니다.
Goodbye Stack Exchange

글쎄, 나는이 문제도 가지고있다. 수동으로 게시하고 Enter 버튼을 클릭하면 단락이 추가됩니다. 이것은 작은 mce를 설치 한 후에 발생합니다. 이 어쨌든 무엇을 의미합니까 : 기본 콘텐츠 필터링 규칙을 무시, 필터 tiny_mce_init

1
이것은 루프의 게시물 제목에서 나에게 일어나고 있습니다. 무차별적인 것 같습니다 (일부 게시물의 일부 공백 문자에만 발생 함).
Drewdavid

이 문제에 대한 쉬운 해결 방법을 찾았습니다. wordpress.stackexchange.com/a/291746/135285
AturSams

답변:


2

내가 사용하는 것은 remove_filter( 'the_content', 'wpautop' ); remove_filter( 'the_excerpt', 'wpautop' );Wordpress가 추가 마크 업을 생성하지 못하게하는 것입니다. 외부 편집기에서 코드를 복사하여 붙여 넣습니까?


4
나를 위해 작동하지 않았다. 단지 HTML 각각 "갱신"에 작은 MCE를 사용하지 않고 여전히 새로운 추가  
기독교

3
또한 나를 위해 작동하지 않습니다
sidonaldson

4

마침표 뒤에 두 개의 공백을 사용할 때 비 분리 공백이 삽입되고 있음을 발견했습니다. 편집자는 여분의 공간을 텍스트 형식에 공백을 사용하려는 시도로 해석하는 것 같습니다.

Wordpress 편집기의 기사를 16 진 표시를 지원하는 텍스트 편집기 (EditPad Pro 사용)에 복사하여 붙여 넣으면 두 개의 공백이있는 마침표라고 생각되는 텍스트가 실제로는 텍스트 뒤에 하나가 있음을 알 수 있습니다. 공백 다음에 16 진수 코드 A0의 유니 코드 문자 (유니 코드 NO-BREAK SPACE 문자) 가옵니다 .

공백과 NO_BREAK SPACE 문자를 공백으로 바꾸어 기존 기사에서 끊지 않는 공백을 제거 할 수있었습니다. 대부분의 텍스트 편집기에서는 찾기 텍스트 상자에 "두 공백"을 복사하고 바꾸기 텍스트 상자에 단일 공백을 작성하여 검색 및 바꾸기를 사용하여이를 수행 할 수 있어야합니다.

마침표 뒤에 하나의 공백 만 입력하여 문제가 계속되는 것을 피할 수있었습니다.


3

이 원인은 무엇이며 어떻게 해결합니까?

게시물 콘텐츠에 추가되거나 삭제 된 모든 콘텐츠는에 의해 발생하며 tiny_mce_init, 이는 콘텐츠 필터링 규칙을 적용하는 것입니다.

이를 방지하는 방법은 다음과 같습니다.

  1. tiny_mce_init기본 컨텐츠 필터링 규칙을 대체하는 Filter
  2. Visual 및 HTML 편집기 간 전환을 중지하십시오 . 정말; 위의 옵션 # 1을 사용하지 않으려면 편집기간에 전환하지 마십시오 . WordPress는 Visual 또는 HTML 편집기를 사용하여 내용을 입력 할 수 있지만 동시에 두 가지를 모두 사용하지는 않습니다.

tiny_mce_before_initCodex 의 필터 사용 예 . CodexTinyMCE 구성 / 사용자 정의에 대한 또 다른 예는 here 입니다.


11
귀하의 # 2 답변이 잘못되었다고 확신합니다. 그 사람 또는 누군가가 UI에서 "똥을 조였다". 편집기가 Visual 또는 HTML로만 사용되도록 의도 된 경우 왜 탭이 있습니까? 한 가지 방법으로 사용하기 위해 설정에서 옵션으로 사용하는 것이 어떻습니까? 또한 기본적으로 탭이 있습니다. 설정해야 할 개발자 고급 기능이나 옵션은 아닙니다. 나는 그들이 사용자가 앞뒤로 클릭 할 수 있도록 의도 된 곳이며 실제로 문제는 때로는 함께 잘 작동하지 않는다는 것입니다. (특히 공간 서식의 경우)
luckykind

1
@luckykind 아니오, 그들은 그들 사이를왔다 갔다하도록 의도되지 않았습니다. TinyMCE 아키텍처 문제 일뿐 입니다. 그리고 그것은 유일한 것이 아닙니다 .
카이저

3
HTML과 Visual 편집간에 전환 할 수있는 탭을 제공하는 UI가 그런 식으로 사용되지 않는다는 것을 알 수 없습니다. 거의 2016 년이며 여전히 문제가 있습니다.
Eric J.

1
내 컴퓨터는 켜지지 않았지만 전원 버튼이 있기 때문에 전원을 켰으므로 모든 문제는 사용자의 잘못입니다. 디자인과 코드는 명백합니다.
AturSams

1

히브리 블로그에 Wordpress를 사용하고 있습니다.

해결 방법 : 텍스트를 숭고한 또는 notepad ++와 같은 편집기로 복사하고 일반 공백으로 검색하고 바꾸십시오. 텍스트에서 그 중 하나를 복사 할 수 있습니다.

면책 조항 : 이것은 많은 답변이 아니며 해결 방법이 많으므로 자유롭게 투표하십시오. 나에게 Wordpress는 운율이나 이유없이 어디서나 nbsp를 행복하게 추가하고 있습니다. 무엇이 원인인지 확실하지 않습니다. 영어 텍스트보다 훨씬 더 많은 히브리어 텍스트에서 발생합니다.


0

누군가 2020 년에도 여전히이 문제를 고수하고있는 경우에 대비하여 많은 컨텐츠를 Wordpress로 마이그레이션 한 후이 문제가 발생했습니다. 모두가 무엇을 복사하여 붙여 넣었는지 추측하고 수동으로 고칠 수없는 너무 많은 내용으로 끝납니다. php 함수를 다음과 같이 구현하고 functions.php에 추가하여 문제를 해결했습니다.

    function replace_content($content) {
        $content = htmlentities($content, null, 'utf-8');
        $content = str_replace(" ", " ", $content);
        $content = html_entity_decode($content);
    return $content;
    }
    add_filter('the_content','replace_content', 999999999)

999999는이 필터가  중간에 추가 될 경우를 대비하여이 필터가 마지막으로 실행되도록하기위한 것 입니다.


-1

CSS 파일에서. display: inline-flexp 안에 넣 습니다 the excerpt. 추가 공백은 더 이상 귀찮게하지 않습니다. 나를 위해 일한다

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.