Я декомпилировал CodeBehind для подслоя 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"