- SeoPlugin
SeoPlugin
Assembly: SeoPlugin
Description
Lets face it, you can't travel far around the internet without hearing about search engine optimization or SEO as it's better known. There are many aspects to SEO, most of which involve optimisations to web pages, from reducing white space in .html, .css and .js files ensuring good layout and optimising the server to reduce payload by using cache options and zipping content.
The SeoPlugin module focuses on serving 4 pieces of data for each web page, all of which can help with SEO, they are:
- Title
- Description
- Keywords
- Author
Title
A meta title shows the name of a web page, it is read by bots, displayed in search results and is usually displayed in the browser. The title should be quite concise, generally not exceeding 50 to 60 characters in length and should be descriptive, without repeating keywords.
Description
The description is a short summary, generally between 150 and 200 characters which summarises the page content. The description is not generally seen by visitors but can be displayed within search results.
Keywords
Keywords are used by bots and search engines, they should describe the page topic and are not viewed by visitors. Ideally there should be between 7 and 15 keywords per page.
Author
The author meta tag is designed to give credit to the person of company that created the web page or website.
How it works
The Seo plugin module uses the ISeoProvider interface which is implemented by the website to obtain data for individual pages. Once obtained the data is added to the HttpContext Items and can be easily retrieved within the controller. There are 4 string constants within SharedPluginManager which are used for the name of the items in the HttpContext, they are:
- SeoTitle
- SeoMetaDescription
- SeoMetaKeywords
- SeoMetaAuthor
How to install
If used as a plugin module loaded through the plugin manager then the seo plugin will be automatically loaded, if you are using this independantly you can use one of the following methods:
builder.UseMiddleware<SeoMiddleware>();
app.UseSeo();