PowerShell loop through site with certain WebTemplate

$webapplication =  Get-SPWebApplication  “url of your site collection

foreach($site in $webapplication.Sites)
foreach($subWeb in $site.AllWebs)
if( $subWeb.AllProperties[“WebTemplate”] -eq “WebTemplate Name“)
Write-Host “Site url :” + $subWeb.url

Jquery get current Sharepoint user

It is possible to get through JQuery the current user in SharePoint;

 var currentuser;

function checkCurrentUser() {
var context = SP.ClientContext.get_current();
var siteColl = context.get_site();
var web = siteColl.get_rootWeb();
this._currentUser = web.get_currentUser();
context.executeQueryAsync(Function.createDelegate(this, this.CheckUserSucceeded),
Function.createDelegate(this, this.CheckUserfailed));

function CheckUserSucceeded() {
currentuser =this._currentUser.get_loginName;

 function CheckUserfailed() {
log(‘retrieving user failed’);



Convert SharePoint 2010 Solution to 2013 and Visual Studio 2012

Serveral times I had opened a project developed for SharePoint 2010 and I needed to make some changes for instance to make it work in Sharepoint 2013.

When you open it you will receive some problems regarding your dll references, what the hell ???

The solution for this is to make some changes in the xxx.proj file.

I was able to get my solution upgraded from a 2010 project to 2013 using the following.

Note that this will update your solution to use the new 2013 API.
First edit your .csproj file (for c#).

Modify the target framework to this:


Add this a node for the office version, I put mine directly below the TargetFrameworkVersion tag


Update references
Reload the project and update your referenced assemblies.
If you haven’t specified a specific version they should already be referencing the v15 (SharePoint 2013) assemblies.

Do a find replace for to This updates any references on your pages, layouts, and master pages to the v15 assemblies.

Hope it helps !

Create an extra group on your site settings

This is something I created in 2007 but it is still usefull for 2010

First you need to set up your base project. If you don’t know how check out the other Blog. You just create a new C# ClassLibrary and add the necessary folder, they should look like your 12 folder of SharePoint

It should something like this. Add two XML files underneath the folder, like showed here above. To The feature XML add the following code

<Feature xmlns="http://schemas.microsoft.com/sharepoint/"
         Description="Site Iformation tool"
         Title="Site Information"
        <ElementManifest Location="elements.xml"/>

Let me explain the code:

  • The first line give an ID to your feature which is logic, cause every feature needs to have an unique ID.
  • Title , where you define the Title of your feature.
  • Description , you give a description to your feature.
  • Version, if you want to apply versioning on your feature.
  • Hidden, this can have two value “TRUE” or “FALSE”, is you set the value to “TRUIE” you will not be able to see the feature in your ‘Site Feature’ on your website.
  • Scope, this can have four values site,Farm ,WebAplications,Site and Web, this value will determine on which level your will deploy your feature.
  • ElementManifest ,within these brackets you will add certain files to your feature, it define the elements of your feature, a feature can be ANYTHING, a workflow, a menu an list, a custom field ,…

To The element XML add the following code

<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
        Title ="Extra Admin Options"
        Title="Extra Site Information"
        <UrlAction Url="/_layouts/SITEINFORMATION/SiteInformation.aspx"/>

Let me explain the code:

  • CustomActionGroup, here you define a group to which your action belongs to.
  • Id= Each group needs to have an ID.
  • Location=”Microsoft.SharePoint.SiteSettings” , this is where your group is located
  • CustomAction, you you see that you are going to add a new action group to your site
  • ID , every action needs to have an ID
  • Description, add a description
  • Title, you can give a title to your custom action
  • GroupID, this is actually the most important property. Where you are going to define where your ‘Action’ will be added. In our case it’s the name of the group we have created.
  • ImageUrl, here you can define which icon you’ll see before your feature.This is sorted also in the virtual file system,you can use your explorer to go your 12 folder, and check in the map “_layouts/images” there you’ll find all the images that are used within SharePoint , you can paste your images in there, although here I just use a standard one and paste in my, which is not needed BUT recommended.
  • UrlAction , where you define the action of your feature, I think if you click on your feature you want something to happen, in his case our link will go to the SiteInformation.aspx, which is a custom page, but you an like it to everywhere.

NOTE : The location is in our case “Microsoft.SharePoint.SiteSettings”, if your groudId is different your location can be Different. You can check these thing in your virtual file system. Or you can visit this site SharePoint Custom Action Identifiers.
I hope this blog was usefully, if so please spread the word.