0

嗨,我最近开始重新设计使用 CMSmadesimple 的页面。我没有使用CMSms和的经验Smartytags

但是页面上有一些smartytags需要样式。

例如这个标签{$entry->morelink}。我需要能够将这个 .link CSS 类添加到它。

我已经尝试了我想到的一切,但似乎没有任何效果。我也没有运气用谷歌搜索。

我希望有人有经验并且知道如何将 .class 添加到 Smarty 标签。

4

2 回答 2

1

还有其他方法可以探索。一种是使用不生成 HTML 而只提供值的 Smarty 标签。例如,根据内容模块,可能有一个像“{$entry->moreurl}”这样的标签,它只提供 URL 而不是标签。

然后,您可以构建自己的 HTML:

<a href="{$entry->moreurl}" title="{$entry->name}" class="link">View More</a>

您需要通过将其添加到模板并查看可用参数来找出该模块支持的内容:{$entry|print_r}

如果您唯一的选择是生成 HTML 的标签,那么您还可以将 Smarty 标签包装在 div 或 span 元素中,并为其分配类名或 id。

例如,

<span class="link">{$entry->morelink}</span>

然后你的 CSS 可以这样写:

.link a { color: red; }
于 2018-10-28T00:04:38.413 回答
1

这个问题在 CMS Made Simple社区论坛中被问过很多次。

尝试使用 Smarty替换变量修饰符,例如:

{$entry->morelink|replace:'class="':'class="link '}

如果给定字符串上没有类属性,您可以坚持替换id甚至关闭>

{$entry->morelink|replace:'id=':'class="link" id='}

这是一个混乱的解决方案,但会起作用。最好改变初始对象。

于 2018-08-09T14:51:55.070 回答