2012-06-17 6 views
2

{block} 값을 정의 할 때 불필요한 공백이 많이 생기는 문제가 발생했습니다.Smarty {block}의 공백을 제거하는 방법은 무엇입니까?

내가 메인 템플릿을했습니다, 이제 (간체) 같이 보이는, main.html를 호출하자 그런

<html> 
<title>{block name=title}{$default_title}{/block}</title> 
... 
</html> 

을 내가 이제 topics.html을 가정 해 봅시다에서 그것으로부터 상속, 나는 거기에 제목 블록을 정의 : 나는 topics.html 템플릿을 컴파일 할 때

{extends file="main.html"} 

{block title} 
{if $topic} 
    {if $topic == "all"} 
    {eval $Config['titles']['topics']['all']} 
    {else} 
    {eval $Config['titles']['topics']['particular']} 
    {/if} 
{else} 
    {eval $Config['titles']['topics']['list']} 
{/if} 
{/block} 

지금, <title>...</title> 태그 내부에 너무 많은 공백이있다. 예를 들어

, 그것은 다음과 같습니다

<title> 
    Showing all wiki topics </title> 

나는 그것이 다음처럼 보였다 있도록 블록을 평가 한 결과에서 공백을 제거/트림 수있는 방법 :?

<title>Showing all wiki topics</title> 

나는이 같은 {block title}...{/block} 주위 {strip}...{/strip}을 추가하는 시도 :

{strip} 
{block title} 
... 
{/block} 
{/strip} 

을하지만 아무것도 변경하지 않았다.

나는 또한이 시도 :

{block title|strip} 
... 
{/block} 

을하지만 구문 오류였다. 나는 또한 이것을 시도 :

{block title|trim} 
... 
{/block} 

또한 구문 오류가 발생했습니다.

{block title} 
{strip} 
... 
{/strip} 
{/block} 

을하지만 그 {block title}은 그래서 컴파일 된 템플릿이 유지 후 이미 새로운 라인을 도입 중 하나로 도움이되지 않았다 :

나는 또한 시도했다.

도움을 주셨습니다.

+0

다른 사람이 동일한 문제가있는 것 같습니다. http://stackoverflow.com/questions/9207163/remove-extra-html-spaces-in-smarty – fsenart

+0

놀랐어요. '{strip} {block title} ... '이 작동하지 않았습니까, 틀림 없습니까? –

+0

@WesleyMurch 그건 작동하지 않습니다. 아래 rodney의 대답을 참조하십시오. – bodacydo

답변

2

Smarty 3.1에서는 {block}을 다른 구성으로 감쌀 수 없습니다. (이것은 Smarty 3.2에서 변경 될 수 있습니다.) {strip} 태그를 {block}s 안에 넣으려고 했습니까? 그렇지 않으면 좀 봐 my answer here

+0

{block} 뒤에 줄 바꿈없이'{block}'바로 뒤에'{strip} '을 넣으려고했는데 효과가있어 보이지 않습니다. :) 또한 ifs/elses를 외부에 두어 보았습니다. ifs/elses 내에 블록을 넣었습니다.하지만 멋지게 생각하지 않았습니다. – bodacydo

+0

내가 말했듯이,'{block}'은 지금 당장 아무 것도 감쌀 수 없습니다 ... – rodneyrehm

관련 문제