/Tags

Geta Tags for EPiServer CMS

Primary LanguageC#

Geta Tags for EPiServer

What is Geta Tags?

Geta Tags is library that adds tagging functionality to EPiServer content.

How to get started?

Start by installing NuGet package (use EPiServer NuGet):

Install-Package Geta.Tags

The latest version is compiled for .NET 4.5 and EPiServer 9. Geta Tags library uses tag-it jQuery UI plugin for selecting tags. To add Tags as a new property to your page types you need to use the UIHint attribute like in this example:

[UIHint("Tags")]
public virtual string Tags { get; set; }

[TagsGroupKey("mykey")]
[UIHint("Tags")]
public virtual string Tags { get; set; }

[CultureSpecific]
[UIHint("Tags")]
public virtual string Tags { get; set; }

Use ITagEngine to query for data:

IEnumerable<ContentData> GetContentByTag(string tagName);
IEnumerable<ContentData> GetContentsByTag(Tag tag);
IEnumerable<ContentData> GetContentsByTag(string tagName, ContentReference rootContentReference);
IEnumerable<ContentData> GetContentsByTag(Tag tag, ContentReference rootContentReference);
IEnumerable<ContentReference> GetContentReferencesByTags(string tagNames);
IEnumerable<ContentReference> GetContentReferencesByTags(IEnumerable<Tag> tags);
IEnumerable<ContentReference> GetContentReferencesByTags(string tagNames, ContentReference rootContentReference);
IEnumerable<ContentReference> GetContentReferencesByTags(IEnumerable<Tag> tags, ContentReference rootContentReference);

##Customize Tag-it behaviour You can customize the Tag-it.js settings by using the GetaTagsAttribute. The following settings can currently be customized

  • allowSpaces - defaults to false
  • allowDuplicates - defaults to false
  • caseSensitive - defaults to true
[CultureSpecific]
[UIHint("Tags")]
[GetaTags(AllowSpaces = true, AllowDuplicates = true, CaseSensitive = false)]
public virtual string Tags { get; set; }