SharePoint – Web Part

SharePoint – Web Part ”; Previous Next In this chapter, we will be covering the Web Parts. We are going to restrict our view to List View Web Parts because it is the part, which is most closely associated with information collaboration. Web Parts are small blocks of user interface, which you can compose together to build a page or a site. For example, A News Web Part, an Email Web Part, a Stock Web Part, sports scores, YouTube videos. These are all examples of little pieces of user interface, which you can compose together to get an aggregate view in, a portal style application. In terms of information collaboration, the Web Parts are called List View Web Parts. They show the information from a list or library and let you add new items or documents. This way you can create a single page, which shows information across lists and libraries in a site, removing the need for the user to navigate to the individual lists and libraries themselves. In this chapter, we will focus on List View Web Parts. These are Web Parts that let us interact with list or library data, but along the way you will get a general idea of how Web Parts work in SharePoint. Let us have a look at a simple example by creating a Web Part page, i.e. a page that supports the use of web parts. Step 1 − Got to the Site Contents. Scroll down and click the icon- Site Pages. Step 2 − Go to the FILES tab. On the Ribbon, click the dropdown arrow on the New Document button. Select Web Part Page from the options. Step 3 − Name this page Courses and then we need to decide the layout of the page. So Web Parts is added into Web Part Zones. The layout here determines the number and the layout of these zones. We also get an idea of what the zones look like. We can have just one web part zone that takes up the entire page, a header and a column and a body, or a header and a footer and columns etc. In this case, we just need one Web Part Zone. Hence, we will select full page vertical, and click Create. Step 4 − So you can see the Web Part Zone and its inside part. You can see a link that lets us add a Web Part. Click on the link. Step 5 − The Web Part Gallery will open up. This page shows us the Web Parts that are available to be added to the page and these are broken down into categories. The Web Parts we are interested in, for this example are in the Apps category. You will notice that there is a web part for each of the lists and libraries in our site. Step 6 − You can see the Course Documents in the Web Part. Now let us add a Web Part one more time and then click the Courses List and click Add. Step 7 − Once you are finished adding the Web Parts, click Stop Editing in the ribbon. Step 8 − You have a single page where you can interact with both the Courses list and the Course Documents Library. Step 9 − If you want to add a new document, you can upload it or you can drag and drop here, you have access to the Edit Control Block menus for both the library and the list. You can perform all the main tasks by navigating to the list or the library itself. To maintain the Web Parts once they are on the page, we can put the page into edit mode from the Ribbon by clicking on Edit page. Step 10 − You can see that for each of the Web Parts there is a little dropdown menu, which we can use to delete the web part. If you want to delete a web part, always click Delete, not Close. Close just hides the web part, but it still remains on the page. Delete removes the web part from the page. Step 11 − We can edit the web part properties by clicking the Edit Web Part from the menu. You can see in the properties that there are different options, you can say which view do you want to show in the web part, what toolbar you want to have. You can also change the appearance, layout etc. Print Page Previous Next Advertisements ”;

SharePoint – Types

SharePoint – Types ”; Previous Next In this chapter, we will be covering the different types and versions to start working on SharePoint. There are three main ways to install and use SharePoint − SharePoint Foundation SharePoint Server Office 365 The first two options are SharePoint on-premise, while Office 365 has emerged as a third, fully cloud-hosted model for SharePoint. SharePoint Foundation SharePoint Foundation is the essential solution for organizations that need a secure, manageable, web-based collaboration platform. SharePoint Foundation provides you with the basic collaboration features that are included within SharePoint. SharePoint Foundation ships as a free, downloadable install and represents the foundational parts of SharePoint. It includes a number of features such as security and administration, user and Team site collaboration, and a number of Apps (such as document libraries and lists). In essence, it provides a baseline set of features that enable you to get started with both using and developing for SharePoint. SharePoint Foundation requires some features to build standard collaboration and communication solutions within your organization. The primary features of SharePoint Foundation revolve around document management and collaboration. Key Features of SharePoint Foundation Following are some of the major features, which are responsible for its wide adoption in businesses. Effective document and task collaboration − Team websites offer access to information in a central location. Reduced implementation and deployment resources − SharePoint Foundation is available to Windows Server customers as a free download, with the help of which implementation time and cost are greatly reduced. Better control of your organization’s important business data − SharePoint Foundation also offers features for data and information management and security. Embrace the web for collaboration − By extending and customizing SharePoint Foundation In short, SharePoint Foundation represents the core content storage and collaboration features of SharePoint. It is the ideal edition for teams and small organizations looking to improve on their ability to work with one another in a secure, easy-to-use, collaborative workspace. SharePoint Server SharePoint Server offers a wealth of features that extend upon those offered in SharePoint Foundation. It provide a richer, more advanced collection of features that you can utilize in your organization’s solutions. Key Features of SharePoint Server Some of these additional features are described in the following list − Advanced Search − The search features and functionality features available within the Server versions offer more flexibility. They allow customized Search Results pages that you can configure with customized search Web Parts. Web Content Management − SharePoint Server supports web content creation and publishing for the internet. Enterprise Services − These services provide ways for you to build custom solutions quickly and easily using tools that are available to you within the Office product family. Business Connectivity Services − Business Connectivity Services (BCS) enables you to connect to these external data sources and display business data via Web Parts, user profiles, or SharePoint lists. Social Networking and Computing − Social networking is everywhere and has become an expected feature set of many solutions. Records management − SharePoint Server provides excellent support for the management of content throughout its entire life cycle. Office 365 Office 365 has emerged as a third, fully cloud-hosted model for SharePoint. It is the alternate option to hosting your own farm in your own on-premises Data Center. Key Features of Office 365 The options for licensing SharePoint Online through Office 365 are based on factors such as the number of users you want to add, the amount of data you need to store, and the features you need to be available. It has also become a great place where you can develop rich applications (both as SharePoint-hosted and cloud-hosted apps) and scale without the cost of managing the on-premises infrastructure. It does not have all the same services and features as SharePoint Server, but does carry with it some great development capabilities. There are .NET applications that you build using C# or Visual Basic and then deploy into SharePoint as .WSPs or .APPs. There are lighter-weight apps such as HTML5 and JavaScript apps that you can also deploy. As a developer, you have the capability to customize any of the SharePoint editions, whether it is SharePoint Foundation, Server, or Office 365. Print Page Previous Next Advertisements ”;

SharePoint – Overview

SharePoint – Overview ”; Previous Next This tutorial will give you an idea of how to get started with SharePoint development. Microsoft SharePoint is a browser-based collaboration, document management platform and content management system. After completing this tutorial, you will have a better understating of what SharePoint is and what are the high-level feature areas and functionalities of SharePoint. What is SharePoint SharePoint is a platform to support collaboration and content management system. It is a central web-based portal. Using SharePoint, you can manage your colleague’s and your own documents, social activities, data, and information. It allows groups to set up a centralized, password-protected space for document sharing. Documents can be stored, downloaded and edited, then uploaded for continued sharing. SharePoint offers such a wide array of features that it is very challenging for any one person to be an expert across all the workloads. Let us understand what all can we do with SharePoint. It is divided into three separate areas − Collaboration The term collaboration contains a very strong theme for SharePoint. It means bringing people together through different types of collaboration, such as enterprise content management, Web content management, social computing, discoverability of people and their skills. In SharePoint 2013, collaboration is managed through Apps. Developers can extend, customize, or build their own Apps for SharePoint as well manage collaboration on SharePoint. Interoperability SharePoint is also about bringing this collaboration together through interoperability such as − Office and web-based document integration. Capability to build and deploy secure and custom solutions that integrate line-ofbusiness data with SharePoint and Office. Integrating with wider web technologies, or deploying applications to the cloud. Platform SharePoint is also a platform that supports not only interoperability and collaboration but also extensibility, through a rich object model, a solid set of developer tools, and a growing developer community. One of the key paradigm shifts is the notion of the cloud in SharePoint. The cloud introduces new App models such as − New ways of developing, deploying, and hosting SharePoint applications. New forms of authentication through OAuth. New ways of data interoperability using OData and REST. Print Page Previous Next Advertisements ”;

SharePoint – Create Site Collection

SharePoint – Create Site Collection ”; Previous Next The site is the core thing to SharePoint and represents the starting point for developers, and without site collection, you cannot start SharePoint development. A Microsoft SharePoint online site collection is a top-level site that contains subsites. A number of site templates are available which you can use. The subsites share administration settings, navigation, and permissions each of which can be changed for individual subsites as needed. Create Site Collection When learning an application such as SharePoint, it is a good idea to create an area where you can perform exercises without affecting the existing environments or users. Step 1 − To create a new site collection let us go to the site https://portal.office.com/ Step 2 − Select Admin icon and you will see the following page − Step 3 − Select Resources → Sites, in the left pane. In the right pane, click Add a site. Step 4 − Following page will open. Enter the required information and click OK. You can see that the site collection is added in your admin center URL list. The URL is the site collection location at which the administrator can start to create and manage sites. Step 5 − Click the link and you will see the detailed information regarding that site collection. Print Page Previous Next Advertisements ”;

SharePoint – Custom List

SharePoint – Custom List ”; Previous Next Let us have a look at how to create a custom list, where we define the list schema, instead of using a predefined schema like the one we did when we created the Contacts list. Step 1 − To create a custom list, go to Site Contents and then add an app. Click Custom List. Step 2 − Enter Authors in the Name field and then click Create. Step 3 − Now you can see that Authors is added. Let us click the Authors app. Step 4 − Click new item. Step 5 − You can see, our list has only one column. The field name is Title and it is a required field, so here, we will set the field value to Test and then click Save. Note − In SharePoint, columns are also called fields, so these terms are synonymous. Step 6 − Let us add one more item by clicking on the New Item link. Step 7 − Set the Title field value to Demo and click Save. You can see we have two items or two rows and we see the values of the Title field. Notice that beside this value, there is a little ellipse, which is a link to open up a menu. Note − This menu was traditionally called the Edit Control Block or ECB menu, but you will also hear it referred to as the List Item Contacts menu. We created the custom list because we wanted to define the schema. There are a couple of ways to do this. Step 8 − One way is to put the list into Edit mode. Notice that there is an extra column at the end with a + sign above it and here we can add columns to the list. Step 9 − Click the + sign and we can create a Text column. Step 10 − You will see the following page. Call this field- Name. Step 11 − Enter the names. These will be text. Step 12 − Now add another column and let us make this as a numeric column such that only numbers can be entered as data. Set this to Rate and add some values. Now this technique is helpful when you are prototyping out a list, but you do not have a lot of control. So let us take a look at the other way to define the schema for the list. We will do this through the list settings. Step 13 − Click the Stop editing link get out of the Edit mode. Select List on the Ribbon and then go to List Settings. Here, we can define the schema for the list. When we created the column, we already had the Title column. You can see two other columns, which we created and a few other columns, which are hidden and used by SharePoint internally. Step 14 − To define the schema of the Author”s list, click the Name column and click Delete. Next, delete the Rate column. Step 15 − Now if we come back to the Author”s list, we can see that those columns are gone along with the values we set for them. Go back to List Settings and set the actual schema that you want. Step 16 − The page shows a column with Title. However, we do not want this column but a column that represents the author’s name. Hence, click Title. Step 17 − When you click Title, a new page will open. Scroll down to the bottom of the page. There is no option to delete the page. Note − We cannot delete this page because this column is associated with the ellipse link. however, we can rename it. Step 18 − Rename the column. We will use this column to represent the Author Name and click OK. Step 19 − Next, add another column to represent whether the author is an employee or is a contributor. Click Create Column. Step 20 − Set the column name to Employee and select the Yes/No field types. Once we have selected the field type that we wanted, scroll down to the bottom of the page and you can see Additional Column Settings. Note − Several different field types are available. The available field types are different in SharePoint Foundation, SharePoint Server SharePoint Online. In addition, the kind of site that you are building i.e. a collaboration site or a publishing site will also have an effect on which field types are available. Step 21 − Set the Default value to No instead of Yes and click OK. Step 22 − Now let us create another column, by clicking on Create Column. This column will represent either, the salary for our employees or the rate for contributors. Step 23 − We will call it Salary/Rate and set this to the Currency field. Step 24 − Scroll down and make this a required field and set the Minimum to 0 and the Maximum to 1000. Enter 2 for display of currency upto two decimal places. Step 25 − Let us add one more column, which will be the biography. We will just call it Bio and set the type to multiple lines of text. Step 26 − Enter 6 as six lines for editing is fine. We just want plain text in this case and click OK. Step 27 − We have the schema for our Authors list. Now that our schema is complete, let us add some data. Click Authors under Recent. Let us delete the two rows we had previously created by clicking on the little check beside each of them. Next, go to Items on the ribbon and click Delete Item. Step 28 − Add the first item by clicking New Item. Step 29 − Enter some more data as shown in the screenshot below. You will see all the data listed. Print Page

SharePoint – Integration Options

SharePoint – Integration Options ”; Previous Next In this chapter, we will be covering the integration options. The new application model in SharePoint 2013 offers a number of options for your application to integrate deeply with SharePoint, other systems, and data. These options are as follows − User interface integration Events and logic integration Data integration User Interface Integration In user interface integration, three main integration points are available to you as a part of the SharePoint application model, which are as follows − App Parts and Pages Ribbon and Action menus Navigation App Parts and Pages App Parts and Pages offer you the ability to surface your applications’ user interface to your users. For people familiar with SharePoint 2010, App Parts are similar to Web Parts. App Parts are reusable and configurable windows into your application. Pages are much like an App Part except that they are viewed in a larger, fuller window style. Ribbon and Action Menus The ribbon was first introduced in SharePoint 2010. It provides a central location for all actions that a user may want to take on documents and other data. In SharePoint 2010, developers could include custom actions for their applications in the ribbon; SharePoint applications also allow this customization. This enables you to include actions where users expect them, alongside all the other standard actions SharePoint provides. The Action menu is a context-aware menu on items in a SharePoint list or library. For example, in a SharePoint document library the Action menu exposes common functions such as Check In and Check. Another term commonly used for this menu is Edit Control Block. SharePoint applications allow you to include additional actions on this menu. For example, it is a great location to display your application’s functions, which apply to a single list item. Navigation Navigation lets users find your application, and integrating with the Ribbon and Action menus lets your users take actions in the same familiar location that they do elsewhere in SharePoint. Using one or more of these building blocks enables you to integrate your application’s user interface with that of SharePoint’s and expose your app to its users. Events and Logic Integration Providing a UI for users is usually the most prominent aspect of any application. On the other hand, responding to the actions users take- either within an application, or to interact with an application, is also extremely important. The key features are − SharePoint applications provide the ability to both respond to activities within your application such as a button click and respond to activities within SharePoint such as a document being checked out etc. Responding to activities within your application is very straightforward. Your application’s UI and code run remotely from SharePoint and are simply surfaced via App Parts and Pages. For this reason, responding to an event such as a button being clicked in your application is entirely tied to your application’s programming framework. For example, if your app is built with ASP.NET then you simply catch the OnClick event for an ASP.NET button. SharePoint does not get in your way for these types of events. For responding to events that occur inside SharePoint, such as a document being saved or updated, SharePoint provides event receivers. SharePoint 2013 also provides event receivers that allow applications to respond to events occurring within a SharePoint site. Data Integration Data is the heart of every application, which is typically, what users want to work with within your application. SharePoint provides a number of out-of-the-box options for storing and working with data. These options are as follows − Storing and manipulating data within SharePoint. Working with data that lives external to SharePoint. From the very first version of SharePoint, the goal has been to make working with data simple and straightforward for users. The simplest example of this is the concept of list data. Users are able to store and work with tabular style data via a common web interface. Many see using lists analogous to using a table of data in a database. SharePoint applications can also take advantage of these same data storage capabilities natively by using lists, SharePoint offers developers the ability to take advantage of many of the data storage capabilities that SharePoint provides without having to reinvent the wheel. If used properly, SharePoint can save time and effort and potentially reduce the management and support costs of your operation. The following are the core data-storage capabilities − Lists − For storing structured data, much like in a table. Libraries − For storing unstructured data, such as in a document or file. SharePoint provides a comprehensive set of APIs for developers to use within the applications to interact with and manipulate data that resides in SharePoint. For SharePoint applications, those APIs are exposed in the Client-Side Object Model (CSOM). You will see many of these options in the forthcoming chapters. Print Page Previous Next Advertisements ”;

SharePoint – Apps

SharePoint – Apps ”; Previous Next In this chapter, we will be covering SharePoint Apps. The app model is a new development deployment and hosting model for extensions to SharePoint. As a developer in SharePoint 2013, we have the option of using the solutions model, either farm or sandbox solutions, or using the app model. Microsoft documentation and guidance suggests that you favor the app model over the solutions model and that might be very valid guidance. However, you have to consider that the app model, which is a significant addition to SharePoint 2013, while the solutions model has been around since SharePoint 2007. Therefore, the knowledge base for development with the solutions model is significantly better than the current state of the knowledge base for developing apps. Apps have not been around long enough for people to share their real world experiences using it. I think it is very important that you learn the app model and its strengths and weaknesses. App Characteristics App characteristics are given below − The first and probably the most important, from the developer viewpoint, is that all the codes in an app are executed outside of the SharePoint server. This means that the code is either JavaScript running in the users’ browser or it is the code that is running on some external server. Since all the code is running outside of SharePoint, communication with SharePoint is done via web services, which means you are using the Client Object Model or the REST API. There are no circumstances where you can use the Server Object Model in a SharePoint app. Once you are finished building your app, you are either going to put it in the public app store or local app catalog. This requires a review process and there are some rules, which you need to follow to make your app eligible to go in the public app store. The other option is to put your app in a local app catalog, which is just a site collection, within your web application, that has been configured by central administration to be the app catalog. Once your app has been deployed to the store of the catalog, users with site collection owner permission can install it in SharePoint sites. App Types There are different types of apps that you can build, which are as follows − SharePoint-Hosted App The first is the SharePoint-Hosted App. As the name suggests, this kind of app is hosted in your SharePoint farm. Important features are − It is hosted in a child site of the site where it is installed and this child site behaves for the most part, like other sites. It can contain lists, libraries, pages, content types, and so on. The basics of building a SharePoint-Hosted App are similar to the basics of building a SharePoint Solution. We have a feature. We can add elements to that feature and those elements are defined using CAML. For many of the elements we have designers in Visual Studio. We can add site pages. We can add server controls to those site pages. We cannot add code behind to those site pages, but we can add JavaScript code. Now once you get beyond the basics, things start to get less and less similar. Cloud-Hosted Apps The other two types of apps, Provider-Hosted and Auto-Hosted, are categorized together as Cloud-Hosted Apps. Important features are − These apps live in a site external to SharePoint. The big difference between Provider-Hosted and Auto-Hosted is who is going to create and manage this external site − In a Provider-Hosted App, that is you or your organization. In an Auto-Hosted App, that is Microsoft. Building a Cloud-Hosted App is the same as building any other website. If you are a .NET developer, you are probably using MVC or Web Forms. However, you are not limited to those technologies. You can build a Cloud-Hosted App with whatever web technology you want. When you are finished building your app, in the Provider-Hosted scenario, you will deploy the app up to your site the way you would do for any other website. In the Auto-Hosted scenario, you use Visual Studio to create an app package. It is an app equivalent to a solution package and then you can upload that to SharePoint Online and a site. If necessary, a database will be provisioned for you to host your app. Auto-Hosted Apps can only be used with SharePoint Online, they are not supported with an on-premises farm. Here is the same example, which we already covered in App Model chapter. Let us look at a simple example of SharePoint-hosted application by opening Visual Studio and select File → New → Project menu option. Step 1 − Open Visual Studio and select the File → New → Project menu. Step 2 − In the left pane select Templates → Visual C# → Office/SharePoint and then in the middle pane select App for SharePoint. Enter the Name in the Name field, Click OK and you will see the following dialog box. In the New App for SharePoint, we need to add the SharePoint site URL that we want to debug and then select the SharePoint-hosted model as the way you want to host your app for SharePoint. Step 3 − Go to the SharePoint admin center and copy the SharePoint URL. Step 4 − Paste the URL in the New App for SharePoint dialog box as shown below. Step 5 − Click Next and it will open the Connect to SharePoint dialog box where we need to login. Step 6 − Enter your credentials and click the Sign in button. Once you are successfully logged in to the SharePoint site, you will see the following dialog box − Step 7 − Click Finish. Once the project is created, click the AppMenifest.xml file in the Solution Explorer. Step 8 − Click the Permissions tab. A Scope dropdown list will open. Step 9 − In the

SharePoint – Discussion

Discuss SharePoint ”; Previous Next This tutorial will give you an idea of how to get started with SharePoint development. Microsoft SharePoint is a browser-based collaboration, document management platform and content management system. After completing this tutorial, you will have a better understating of what SharePoint is and what are the high-level feature areas and functionalities of SharePoint. Print Page Previous Next Advertisements ”;

SharePoint – Packaging & Deploying

SharePoint – Packaging & Deploying ”; Previous Next In this chapter, we will be covering packaging and Deploying of SharePoint solution. The first step in the deployment of a SharePoint solution is the creation of a Solution Package. A Solution Package is a CAB file with WSP extension, which contains all the files required to implement the Features in your Visual Studio project. The files required to implement the Features include − The feature manifest. Any element manifests. The dll, which contains the compiled managed code. Associated files like web pages, user controls, and web paired files. Another file contained in the solution package is the solution manifest. The solution manifest is a catalog of the files contained in the package. For Farm solutions, it also contains deployment instructions. Just like with the Feature manifest, Visual Studio automatically creates and maintains the solution manifest as you modify your project. You can see the solution manifest using the solution designer. In addition to creating and maintaining the solution manifest, Visual Studio is also automatically creating the solution package for our project. It does this behind the scenes every time you deploy your work for debugging. The generated solution package is placed in the same folder as the dll, so that will be the bin debug or the bin release folder. To view the contents of this file in Windows Explorer, just change the extension from WSP to CAB and then doubleclick on the file. Let us have a look at a simple example in which we will examine the solution packages associated with the SharePoint solution projects we have created in the previous chapter. Let us start with the features and elements project we have created earlier. As you know that in the project, we have one Feature, called Sample. This Feature references three element manifests Contacts, SitePage, and Action. You can also see that Action has the Element manifest, Contacts has its Element manifest, SitePage has the Element manifest, and a web page, which provisions this web page into the site. Hence, we should expect the solution package to contain the Feature manifest, the three Element Manifests, the web page and also the assembly that is created when we build the project. Step 1 − Right-click on your project in solution explorer and choose Open Folder in File Explorer. Step 2 − Go to bin and open the Debug folder. You will see the solution package. Step 3 − Make a copy of it and then change the extension of the Copy file from wsp to cab. Step 4 − Now double-click the cab file to open it and you will see the files. You will see the Feature manifest, three Element manifests, the aspx page, the dll, and one additional file, which is the Solution manifest. Step 5 − In the Solution Explorer, you will see a folder called Package and if you expand it, you will see a file called Package.package. Double-click that file and you will see the solution designer. This designer is showing that currently there is only one feature in the Solution and that feature references three Element manifests, Contacts, SitePage, and Action. This designer is an editor of an XML document just like feature designer. The solution manifest for this proxy is simple. It just indicates that here is an Assembly that needs to be deployed called FeaturesandElemenest.dll and we will be deploying that to the GlobalAssemblyCache. It also indicates we have one feature with this Feature Manifest. If we navigate back to the Feature and look at its Manifest, it indicates there are the three Element manifest, and our aspx page. Farm Solution Deployment Now that we know, what solution packages are and what they contain, we need to learn how to deploy them. To deploy a Farm solution, you give the solution package created by Visual Studio to your SharePoint administrator. They will use either PowerShell or Central Administration or a combination of both tools to deploy the package. Let us look at Farm solution deployment. Step 1 − Go to Features and elements in Visual Studio project. This project has one feature with three Elements. When you deploy a Farm solution, the contents of the solution are copied into the SharePoint system folders as shown below − Step 2 − Now let us go to the List Designer and then change the Title to Contacts-Change 1 and then click the Save button. Step 3 − Now go to the project properties and then select SharePoint in the left pane. In the Active Deployment Configuration option, choose the Default option from the dropdown list. Step 4 − In Solution Explorer, right-click the project and choose Deploy. Once the deployment is finished, refresh your site and you will see the change. Print Page Previous Next Advertisements ”;

Site Column & Content Types

SharePoint – Site Column and Content Types ”; Previous Next In this chapter, we will be covering the Site Columns. So far, we have been defining the list and library schemas on the lists and libraries themselves, but these are not reusable. Therefore, if you want to have two lists with the same schema, we would have to define the same schema twice. SharePoint has a solution for this, which is Site Columns and Content Types. Site Columns define reusable column definitions and Content Types, which are made up of Site Columns, define reusable schemas for both lists and libraries. In addition to defining schema, you can also attach workflows and event handlers to a Content Type. Site Columns and Content Types are stored in galleries at the site level and they are available to be used within that site and any of its children. If you declare a Site Column or a Content Type in a child site, it is only available in the branch underneath that. Unless there is a specific reason not to do so, the common practice is to declare your Site Columns and Content Types in the site collection root and that way they are available across the entire site collection. Now let us have a look at a simple example in which we will create and use Site Columns and Content Types. We have already seen Content Types, although it may not have been obvious Step 1 − Go to our Contacts list through Site Contents. Step 2 − If you scroll down, you will see a section called Columns. Step 3 − Go up to Advanced Settings. Select Yes for Allow Management of Content Types, and click OK. You will see that we have a new section here called Content Types. This indicates that this list is based on the Contact Content Type. Step 4 − Go to Site Settings. Step 5 − Under Web Designer Galleries, click Site Content Types. Step 6 − Scroll down the page and you will find the Contact Content Type, which is right there under List Content Types and then click the Contact link. Step 7 − If you take a look at the columns then you will see that it matches the columns in our list. Basically, when you create a list of the Contacts list template, it associates this content type with the list and that is why you get all of these fields. Now the fields here that make up the definition of a Content Type are known as Site Columns. To see the Site Columns, let us go to Site Settings and select Site Columns under Web Designer Galleries, Step 8 − You can see the columns that are associated with Contacts. So let us explore this a little bit further by creating our own custom site column and our own custom content type and then using those in lists. In our Course Documents Library, we have a column for the course and we defined this column in the library itself. Step 9 − Maybe while building out your site, you realize that you want to have a course column in a few lists and libraries and you want to reuse that definition. Hence, what we can do is create the course column as a site column and then use it in different lists and libraries. Let us go to the Site Column from the Site Settings. Step 10 − Click the Create link. Step 11 − Name this as the Course column and it will be a lookup field. Step 12 − Put this into a group called “SharePoint Basics” so that we can find it easily later. It will look up on the Courses list, and the field we want to look up is the Title. Click OK. Step 13 − You will see that a new group SharePoint Basics is created. Step 14 − Our new site column is created in the “SharePoint Basics” group. Step 15 − Let us go back to Course Documents and then go to the Library Settings. Go to Columns. Remove the Course column, which we created in the library itself. Step 16 − Let us add the new course column from the site columns. Therefore, instead of clicking Create Column, click Add from existing site columns. Step 17 − Change the group to “SharePoint Basics” and Select Course on the left side. Click Add to add that column to the list and then click OK. Step 18 − Let us go back to Course Documents. Step 19 − You can see our new Course column, but it is empty because the information that was here previously was deleted when we deleted the original course column. Hence, let us add that back as shown below. If this list had hundreds of items, it would turn a task that could take hours into a task that could take minutes. Content Types In this section, we will take a look at creating a custom content type. Step 1 − Let us go to the Site Settings, and then go to Site Content Types. Click the Create link. There are two key things to consider here when we are creating a content type. The first is that all content types are based on another content type or you could think of it as all content types inherit from another content type. The second is that a content type will either work with lists or it will work with libraries. Whether it works with lists or libraries depends on the type you inherit from. For example, if we want to create a custom contacts list, we would go to the List Content Types and then find Contact. We would create the content type, add things we need that were not already part of Contact, or remove things that were part of Contact that we do not want. One strategy you can use while creating content