2011-12-20 1 views
0

Я недавно установил модуль социальных соединителей sitecore, и я разместил твиты и подобные кнопки на странице, но я не могу показаться управление содержимым отправляет в твиттер/facebook. Кнопка твиттера отправляет название страницы в виде текста, который будет в твиттере, и я хотел бы переопределить это.Sitecore (sitecore social connector) - не удалось настроить контент, размещенный в facebook/twitter

Ссылка на facebook, похоже, ничего не делает. Если я вернусь на ту же страницу, она все равно покажет 1, но ничего не появилось на моей странице в facebook.

Любая помощь была бы принята с благодарностью.

+0

Не могли бы вы предоставить некоторую дополнительную информацию? Мы хотим знать, где у вас есть модуль, например. – Younes

+0

Younes: http://sdn.sitecore.net/Resources/Free%20Modules/Social%20Module.aspx –

+0

@Alex de Groot - ваша ссылка находится за именем входа в систему SDN (paywall?), А не общедоступно даже после регистрации для учетной записи SDN –

ответ

0

Извиняюсь за очень поздний ответ. Я не понимал, что кто-то попросил меня ответить.

В конце концов мне было проще просто использовать стандартные элементы управления Twitter/Facebook. С тех пор я узнал, что, хотя Sitecore имеет несколько полезных модулей для обработки операций CMS, на стороне контента часто бывает проще использовать любые веб-технологии, которые проще всего реализовать.

https://dev.twitter.com/web/tweet-button

https://developers.facebook.com/docs/plugins/share-button?locale=en_GB

1

Я декомпилировали CodeBehind для sublayout Tweet и имеет это для кода:

protected void Page_Load(object sender, EventArgs e) 
{ 
     string text = "var xmlhttp;if (window.XMLHttpRequest){ xmlhttp=new XMLHttpRequest();}else{xmlhttp=new ActiveXObject(\"Microsoft.XMLHTTP\");}xmlhttp.open(\"GET\",url,true);xmlhttp.send();"; 
     string script = string.Format("<script>twttr.events.bind('tweet', function (event) {{var url = '{2}?itemid={1}&eventname={3}&buttontype=tweet';{4}}});</script>", new object[] 
     { 
      Sitecore.Context.User.Name.Replace('\\', '.'), 
      Sitecore.Context.Item.ID.ToString(), 
      "/layouts/system/Social/SocialEvents.aspx", 
      base.EventName, 
      text 
     }); 
     this.Page.RegisterStartupScript("tweetsubscribe", script); 
} 

Если вы хотите изменить его, вам нужно декомпилировать Sitecore.Social.dll, который находится в пакете. Разблокируйте пакет и откройте папку files, а DLL будет в /bin/.

Если у вас нет декомпилятора, ILSpy является отличным бесплатным. Вы можете сделать то же самое для другой функции, просто декомпилировать и перестроить в локальном проекте с изменениями.

Обновление: просто для уточнения, вам необходимо скомпилировать текущий C# в DLL, чтобы внести в него изменения. Вы можете перекомпилировать в отдельный проект, вам просто нужно изменить Inherits="" в переднем конце элемента управления, например.

Вместо этого:

Inherits="Sitecore.Social.Sharing.Controls.TweetButton" 

ли что-то вроде этого:

Inherits="MyProject.Sharing.Controls.TweetButton" 
+0

Итак, где я могу найти эту вещь в социальных сетях? И так прямо о ILSpy, он качается. – Younes

+0

Alex de Groot ответил на ваш комментарий выше со ссылкой: http://sdn.sitecore.net/Resources/Free%20Modules/Social%20Module.aspx - Мне показалось странным, что его не на Trac. –

+0

@ Garnaph, это решение ответили на ваш вопрос? –