Razor Engine - SEO метатеги
Мне нужно разместить уникальные описания и ключевые слова мета-тегов на каждой странице. Пробовал это. Но это не щелчок.
@{
ViewBag.Title = "Title";
ViewBag.Description = "Test";
ViewBag.Keywords = "Test1, Test2, Test3";
}
Как разместить метатеги в MVC 3 Razor Engine?
Ответы
Ответ 1
В макете вы можете определить раздел:
<head>
...
@RenderSection("metas")
</head>
и в поле зрения:
@section metas
{
<meta name="description" content="Test" />
<meta name="title" content="Title" />
<meta name="keywords" content="Test1, Test2, Test3" />
...
}
или в макете:
<head>
<meta name="description" content="@ViewBag.Description" />
<meta name="title" content="@ViewBag.Title" />
<meta name="keywords" content="@ViewBag.Keywords" />
...
</head>
и в представлении:
@{
ViewBag.Title = "Title";
ViewBag.Description = "Test";
ViewBag.Keywords = "Test1, Test2, Test3";
}
Ответ 2
Вы можете сделать то же, что и вы, но вы должны связать их в своем _Layout.cshtml. Добавьте это в свой _Layout.cshtml в разделе <head>
:
@if(ViewBag.Description!=null)
{
<meta name="description" content="@ViewBag.Description" />
}
@if(ViewBag.Keywords!=null)
{
<meta name="keywords" content="@ViewBag.Keywords" />
}
Ответ 3
Вам нужно выпустить теги <meta>
на странице макета, которые используют значения.
Вы можете получить значения в тегах, написав @ViewBag.Description
.