스킨에서 {$oDocument->getContent(false)}
본문을 불러와 보여주는데요. 가끔 회원분들중 과도한 엔터가 문서 하단에 들어간걸 그냥 보통 지우지 않으시는 경우가 있는데요.
스킨에서 본문을 불러오면서 내용의 끝부분에 위치한 반복되는 <p> </p> 를 제거해 버릴 수 있을까요 ??
스킨에서 {$oDocument->getContent(false)}
본문을 불러와 보여주는데요. 가끔 회원분들중 과도한 엔터가 문서 하단에 들어간걸 그냥 보통 지우지 않으시는 경우가 있는데요.
스킨에서 본문을 불러오면서 내용의 끝부분에 위치한 반복되는 <p> </p> 를 제거해 버릴 수 있을까요 ??
댓글 59
<p> </p> 으로 공백이 처리되어 보이구요.
되는 문서 저장된 파일의 줄바꿈 공백들은
<p> </p>
로 저장되어 있음이 확인 됩니다.
어떠한 이유로 줄바꿈이 잠시 바뀌는 듯 합니다.
안되는 문서 저장된 파일입니다.
@prologos
페이지가 넘어가서 다시 여기에 정리합니다.
해시태그애드온과 관련성은 있어보입니다.
뭔가 안되던게 다시 잘 되었던 건 "최고관리자 권한"의 계정으로 수정해서 되는 것으로 확인 되었습니다.
잘 안되는 파일은 먼저 댓글에 첨부해 드렸습니다.
해시태그온 애드온 사용시 일반계정으로 글 등록시 줄바꿈이
<p> </p> 로 바뀌어 등록되는 듯 합니다.
최고관리자 계정으로 다시 수정하면 원래 줄바꿈으로 되는거 같구요.
꼭 해시태그온 영향이 아니더라도 <p> </p>로 변해버리거나 작성된 줄바꿈이 처리되지 않는거니 이것 까지 처리되면 문제가 없어 보입니다.
어떤 애드온이나 모듈에서 글을 저장할때 utf encoding해서 저장하나 보네요. 공백이 변경되어있어서 여태 테스트한 정규식에서는 검출을 못한겁니다 ㅠㅠ
'@(<\s*p\s*>([\xA0|\xC2|\s| ])*<\s*\/p\s*>\s*)+$@i'
이걸로 테스트 해보세요.
{preg_replace('/(<\s*p\s*>[\xA0|\xC2|\s| ]*<\s*\/p\s*>\s*)+<\s*\/div\s*>/i', '</div>', $oDocument->getContent(false))}
수고하셨어요.