SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

We have a SharePoint farm with multiple zones defined. Basically, one zone is for end users, and a second zone is for administrative tasks.

If an administrator is logged on the administrative zone (default zone in the farm), and if he set up a task list to send email notification, the emails will send url with the administrative zone url.

This is a problem, because all emails are sent to the users with the wrong link (users can't logon on this zone).

I've found that this feature of the task list is based on a hidden alert. This alerts defines the url in the property bag.

That means I can fix manually the alert sing something like this :

$web = Get-SPWeb http://admin_url/of/my/web
$als=  $web.Alerts | ? { $_.AlertTemplateName -eq "SPAlertTemplateType.AssignedToNotification" }
$als | % { $_.Properties["siteurl"] = "https://webapp_public_zone_url"; $_.Update()  }

This will fix the error, but it's quite annoying to seek manually for this alerts.

Is there any way to avoid this behavior? Is it possible to stick this alerts to the public zone url?

share|improve this question
up vote 0 down vote accepted

I just finished a solution that does a url swap plus some other things.

Alert customization

If all you are doing is swapping that url then you could do it with the feature event receiver that iterates through all alerts and sets that value, and an onalertcreation event receiver to set that property programmatically for new alerts.

Check out the above posting for code samples and strategy.

share|improve this answer
I never saw this alertcreation event before. – Steve B Oct 31 '12 at 13:00

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.