如何缩短我的网站发布的数据文本

时间:2013-01-29 04:26:12

标签: php character

我正在尝试调整网站中帖子的字符显示,但无论我如何更改代码。它要么切断1个字还是有错误。请帮忙,我该怎么办?

以下是代码。

<p style="float:right; margin-top:3px;width:88px;">       
    {if $short_urls eq "1" OR $short_urls eq "2"}
            {insert name=get_short_url value=a assign=takento PID=$posts[i].PID SEO=$posts[i].name}

            <a href="http://twitter.com/share" class="twitter-share-button" data-url="{$takento}" data-via="{$twitter}" data-hashtags="DailyRantz" data-text="{insert name=strip_special2 value=a assign=cstory2 text=$posts[i].story}{$cstory2}", data-count="horizontal">Tweet</a>
            {else}

            <a href="http://twitter.com/share" class="twitter-share-button" data-url="{$baseurl}/view/{$posts[i].name|stripslashes|replace:' ':'+'}/" data-via="{$twitter}" data-text="You know,.......Want to know my Daily Rantz? Join me and others @" data-count="horizontal" data-hashtags="DailyRantz">Tweet</a>
            {/if}
            <script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
        </p>

我确实添加了代码,但它并不适用于我。任何人都知道我做错了什么?

<div style="float:right;">

        <p style="float:left; margin-top:4px; margin-right:10px;">
            <a href="javascript:;" onclick="plusToggle('{$posts[i].PID}');"><img src="{$imageurl}/plus_mini.gif"></a>
        </p>

{字面}

        <p style="float:right; margin-top:3px;width:88px;">       
    {if $short_urls eq "1" OR $short_urls eq "2"}
            {$smarty->assign{'$post[i].PID'}|truncate:100:'...':True; 

            {insert name=get_short_url value=a assign=takento PID=$posts[i].PID SEO=$posts[i].name}

            <a href="http://twitter.com/share" class="twitter-share-button" data-url="{$takento}" data-via="{$twitter}" data-hashtags="DailyRantz" data-text="{insert name=strip_special2 value=a assign=cstory2 text=$posts[i].story}{$cstory2}", data-count="horizontal">Tweet</a>

            {else}

            <a href="http://twitter.com/share" class="twitter-share-button" data-url="{$baseurl}/view/{$posts[i].name|stripslashes|replace:' ':'+'}/" data-via="{$twitter}" data-text="You know,...Want to know my Daily Rantz? Join me and others @" data-count="horizontal" data-hashtags="DailyRantz">Tweet</a>
            {/if}
            <script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
        </p>

请帮助,非常感谢您的时间。

1 个答案:

答案 0 :(得分:1)

使用{$str|truncate:20}

它将trucnate字符串ref:smarty truncate。

通常要显示一个字符串,我们将在smarty中使用{$string}

如果要截断字符串{$string|truncate:20:...},请像这样使用它

您只能在分配时显示的地方执行此操作。

{$smarty->assign{'$post[i].PID'}|truncate:100:'...':True;无效。

注意:检查$smarty->assign的语法,它需要一个您要分配的变量名称和一个您正在分配的值。

所以作为一个完整的代码,它将是这样的:

1. First assign a value to a variable.
    $smarty->{assign var="name" value="just to test"}
    ref: http://www.smarty.net/docs/en/language.function.assign.tpl

 2. truncate the value.
    {$name|truncate:20:...}
    ref: http://www.smarty.net/docs/en/language.modifier.truncate.tpl