2012-11-29 5 views
1

내 WordPress 블로그에서 새 게시물 양식을 추가 할 때 "설명"필드에 다음 내용을 삽입했습니다. 아래워드 랩에서 특수 문자로 단어 랩 문제 발생

sss'ss''ss'''ss"ss""sss""" 

I은 ​​필터 후크 (add_filter)을인가하고 the_content() 함수. 기본적으로 나는 50 문자 이상이 존재한다면 비어있는 단어를 표시하고, 50 문자 이후에는 공백을주고 싶다. 그래서 나는 어법 랩을 사용했다. 그러나 내용에 특수 문자를 사용하는 동안 나는 아래에 언급 된 바와 같이 유선 출력을 얻고 있습니다.

function.php

function filter_content($content) { 
    global $post; 
    $original = wordwrap($content,50,' ',' '); 
    return $original; 
} 
add_filter('the_content', 'filter_content'); 

출력 :

sss’ss”ss”’ss”ss& #8221;"sss”"” 
+0

"다음과 같은 기능으로 the_content() 함수를 필터링했습니다." 함수'the_content()'를 추가하고 있습니까, 아니면 ** action HOOK **'the_content'에 필터를 적용하고 있습니까? 이들은 매우 다른 작업입니다. 당신이 얻는 결과가 wordwrap() 함수에 의해 생성되지 않는다는 것을 분명히 알 수 있습니다. 훅을 잊지 마세요. 'the_content'는 콘텐트를 수정하는 대중적인 방법이며, 다른 함수가 이미 그것을하고 있는지 또는 그들이하는 방식을 모릅니다. 해. – PDR

+0

function [wordwrap()] (http://php.net/manual/es/function.wordwrap.php)이 출력물에서 이상한 문자와 관련이 있다고 생각하는 이유는 무엇입니까? 어쨌든, 당신의 질문은 무엇입니까? 당신의 "질문"에는 질문이 없습니다, 나는 진술 만 봅니다. – FarFromGenius

+0

더 자세하게 읽으십시오. ** 단일 게시물 페이지에서 the_content() 함수를 사용할 때 다음과 같은 내용의 문제가 표시됩니다. **. 나는 정말로 그것을 얻지 않는다. __ 문제는 the_content() 함수를 사용할 때, the_content' hook에서 단어 랩을 사용하거나, 둘 다 함께 사용한다고 생각합니까? 추측 할 수는 없지만, 나는 그것을 시도하는 데 시간을 낭비하지 않을 것입니다. 행운을 빕니다. – FarFromGenius

답변

1

문제 :

wordwrap 기능 등 특별한 헌장 (따옴표, 큰 따옴표 및 변환됩니다 ..)를 htm에 저장 l 엔티티와 문자열로 계산합니다. &과 # 사이에서 문자가 발생합니다. 우리가 출력을 나누는 동안 & # 8221;.

솔루션 : 대신 PHP의

그냥 시도 CSS 솔루션 바꿈 속성입니다. 따라서 워드 랩을 적용하십시오 : break-word; 귀하의 단락 태그에 스타일. break-word 값은 단어를 어기 게 만듭니다. 그러나 50과 같은 숫자를 부여하는 옵션은 없습니다. 그것은 컨테이너 너비에 따라 달라집니다.

p{ 
word-wrap:break-word; 
} 
+1

나는이 질문으로 내 시간을 낭비하지 말아야한다는 것을 알고 있었다. 농담하는거야? 태그를보고 ¿ 질문은 CSS와 어떻게 관련이 있습니까? 제발 제발,이 놀라운 비밀스러운 대답에 대한 질문을 발명 한 것 같습니다. 그건 그렇고, PHP에서는 break와 TRUE를 매개 변수로 사용할 수있었습니다. 말할 필요도없이, 그것은 정말로 나쁜 해결책입니다. 오직 너. – FarFromGenius

+0

@FarFromGenius :
과 실제 매개 변수로 시도 했습니까? 아니면 그냥 추측 했습니까? 그것은 작동하지 않습니다.네, 아무도 그 말을 어기 길 원치 않습니다. CSS 솔루션이 더 좋지 않다는 것을 알고 있습니다. 나는 또한 더 나은 대답을 위해이 질문을 추적하고있다. OP가 그의 마음을 바꿀 수도 있습니다. – Gowri