Я декомпилировали 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"
Не могли бы вы предоставить некоторую дополнительную информацию? Мы хотим знать, где у вас есть модуль, например. – Younes
Younes: http://sdn.sitecore.net/Resources/Free%20Modules/Social%20Module.aspx –
@Alex de Groot - ваша ссылка находится за именем входа в систему SDN (paywall?), А не общедоступно даже после регистрации для учетной записи SDN –