Оставленный комментарий от функции UGC в tridion: он выбирает имя пользователя из файлов cookie, а не из поля "Имя пользователя".
Я работаю над функцией "Пользовательский контент" в 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>
1 ответ
Анонимные пользователи будут идентифицироваться с помощью файлов cookie, если вы разрешаете анонимным пользователям оставлять комментарии, это происходит потому, что вы можете разрешить посетителям редактировать или удалять комментарии, которые они отправили сами.
В практическом сценарии никогда не будет так, чтобы ваши посетители использовали один и тот же браузер. Вы можете отключить анонимный доступ и настроить учетные записи посетителей через Audience Manager, чтобы вы могли забрать учетные записи пользователей из Audience Manager.
Если вы по-прежнему хотите иметь анонимный доступ и иметь разные имена пользователей, обойти это так же просто, как реализовать функцию удаления cookie-файлов javascript после отправки ваших комментариев.
Если вы планируете интегрировать менеджер аудитории, ознакомьтесь с http://sdllivecontent.sdl.com/LiveContent/content/en-US/SDL_Tridion_2011_SPONE/task_BD0C04660E7A449DB692B91E44A3015D