即时通讯使用snipper标签系统,并遵循以下文章:
http://daniel.streefkerkonline.com/tag/umbraco/
我可以成功安装和使用snipper标签系统。但是当我浏览页面时..标签显示为文本,而不是超链接...
我错过了什么。它是一些javascript文件还是我缺少一些包含标签的步骤?
有什么想法吗? 这是我的页面: http://www.leezardpharma.com/pharmacy/our-products/weight-loss-medicine/gastro1.aspx
这里相关的标签是因为剪刀而已。但它们无法点击。
答案 0 :(得分:0)
如果您需要创建带有选项的标签以显示已标记的产品,那么您可以创建名为../search.aspx?tag=tagname的新页面 然后搜索该TAG中的产品,代码如下:
@inherits umbraco.MacroEngines.DynamicNodeContext
@using System.Text
@using umbraco.MacroEngines
@using umbraco.cms.businesslogic.Tags
@{
string searchFor = Request["tags"];
if(string.IsNullOrEmpty(searchFor))
{
@* No tags were specified *@
<p>Please specify a tag to search for</p>
return;
}
// this is to search from the tags added and then get all the nodes
var matchingNodes = Tag.GetNodesWithTags(searchFor).ToList();
string tagsText = searchFor.Split(',').Count() > 1 ? "tags" : "tag";
if (matchingNodes.Count < 1)
{
@* No results were found for the specified tags *@
<p>No tagged items were found that matched the @tagsText: @searchFor</p>
return;
}
@* Some results were found for the specified tags *@
<p><strong>@matchingNodes.Count</strong> products were found that matched the @tagsText: "@searchFor"</p>
<ul>
// go through the code and create URL for that product
@foreach (var node in matchingNodes)
{
dynamic dn = new DynamicNode(node.Id);
<li><a href="@dn.Url">@dn.Name</a></li>
}
</ul>
}
你可以参考这篇文章,因为我已经检查过click here了一半,你会看到这段代码
让我知道更多解释需要。我已对此进行了评论,以便您可以获得代码的简要说明。
答案 1 :(得分:0)
你确定你这样做了吗?
<ul>
@foreach (var node in matchingNodes)
{
dynamic dn = new DynamicNode(node.Id);
<li><a href="@dn.Url">@dn.Name</a></li>
}
</ul>
这里看起来不对,你在哪里展示你的标签:
这两个链接来自哪里?
没有javascript或任何想要的东西。这都是在服务器端的剃须刀中完成的。
答案 2 :(得分:0)
我编写了狙击手标记控件。
如果您想要标签的友好网址, 创建一个重写规则来映射/标记/([\ w] *)重写到tagsearch.aspx?tag = $ 1 然后实现tagsearch.aspx以获取该标记参数并返回包含它的任何页面,如上所述。