0

我正在研究 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>  
4

1 回答 1

2

匿名用户将通过 cookie 进行识别,如果您允许匿名用户发表评论,这是一种行为,因为您可以允许访问者编辑或删除他们自己提交的评论。

在实际情况下,您的访问者永远不会使用相同的浏览器。您可以通过 Audience Manager 禁用匿名访问并设置访问者帐户,这样您就可以从 Audience Manager 中获取用户帐户。

如果您仍然想要匿名并拥有不同的用户名,解决方法就像在提交点击您的评论时实现 javascript cookie 删除功能一样简单。

如果您打算集成受众管理器,请查看http://sdllivecontent.sdl.com/LiveContent/content/en-US/SDL_Tridion_2011_SPONE/task_BD0C04660E7A449DB692B91E44A3015D

于 2012-08-21T12:47:08.187 回答