我正在研究 Tridion 2011 中的用户生成内容功能,我为用户提供了一个选项,可以在页面/组件上发表评论。
实施此操作后,用户可以成功提交他对页面/组件的评论。但我在这个功能中面临一个问题,
假设,如果用户在页面上以 XXX 作为用户名和 XXX@XX.com 电子邮件地址在页面上发表评论,并且在一段时间后,如果任何其他用户从同一浏览器打开该页面并给出不同名称的评论,则其提交成功,
但是当我在Trdion页面中看到这些评论详细信息时,两条评论都显示相同的用户名,如果任何其他用户从同一浏览器在页面上提交评论,它不会更改用户名,
经过更多调查后,我发现 Tridion 中的用户生成内容从 cookie 中选择用户名。但是,一旦我从浏览器中删除了该页面的 cookie,然后它会选择用户在“用户名文本”字段中传递的当前用户名。
任何人都可以帮助我,我们在 UGC 的管理注释中有任何属性或设置可以选择当前用户名吗?
<ugc:ManageComments runat="server" ItemURI="@PhysicalUri" PostParameter="addComment@{ @PhysicalUri}" UsernameParameter="one@{ @ItemID }" EmailParameter="email@{ @PhysicalUri}" EditParameter="editComment@{ @PhysicalUri}" CommentIdParameter="commentId@{ @PhysicalUri}" RemoveParameter="removeComment@{ @PhysicalUri}">
<ugc:Comments runat="server" ItemURI="@PhysicalUri" Submitted="@Package.showunmoderatedcomments" FlaggedForModeration="true" Posted="true" Resubmitted="false">
.....
....
<div class="grey_form">
<form method="post" id="comments@{ @ItemID }" class="grey_form">
<fieldset>
<div class="legend">Comment on this story</div>
<label for="one@{ @ItemID }">Enter your name</label>
<input type="text" id="one@{ @ItemID }" name="one@{ @ItemID }" value ="<% =MemberName@{ @ItemID } %>" ><br/>
<label for="two@{ @ItemID }">Enter your email address</label>
<input type="text" id="two@{ @ItemID }" name="email@{ @PhysicalUri}" value ="<% =MemberEmailAddress@{ @ItemID } %>" ><br/>
<label for="three@{ @ItemID }">Type your comment</label>
<textarea id="three@{ @ItemID }" name="addComment@{ @PhysicalUri}"></textarea><br/>
<input type="submit" name="B1@{ @ItemID }" class = "button grey" value ="SUBMIT"/>
</fieldset>
</form>
</div>