<object type="application/kenticocloud" data-type="item" data-codename="my_tweet"></object>
link
parameter to get more information about the linked content items.
public class TweetResolver : IInlineContentItemsResolver<Tweet>
{
public string Resolve(Tweet data)
{
return
$"<blockquote class=\"twitter-tweet\" data-lang=\"en\" data-theme=\"{data.Theme}\"><a href=\"{data.TweetLink}\"></a></blockquote>";
}
}
// You can also register it in IServiceCollection or another framework for dependency injection: https://github.com/kontent-ai/delivery-sdk-net/blob/master/docs/customization-and-extensibility/rich-text/string-based-linked-items-rendering.md#registering-a-resolver
using Kontent.Ai.Delivery;
using Kontent.Ai.Delivery.InlineContentItems;
IDeliveryClient client = DeliveryClientBuilder
.WithProjectId("<YOUR_ENVIRONMENT_ID>")
// Registers a content item resolver for tweets
.WithInlineContentItemsResolver(new TweetResolver())
// Registers the generated strongly typed models
.WithTypeProvider(new CustomTypeProvider())
.Build();
IDeliveryItemResponse response = await client.GetItemAsync<SimpleArticle>("my_article");
SimpleArticle simpleArticle = response.Item;
string simpleArticleBody = simpleArticle.Body;
public class CustomContentLinkUrlResolver : IContentLinkUrlResolver
{
public Task<string> ResolveLinkUrlAsync(IContentLink link)
{
// Resolves URLs to content items based on the Article content type
if (link.ContentTypeCodename == "article")
{
return Task.FromResult($"/articles/{link.UrlSlug}");
}
// TODO: Add the rest of the resolver logic
}
public Task<string> ResolveBrokenLinkUrlAsync()
{
// Resolves URLs to unavailable content items
return Task.FromResult("/404");
}
}
// You can also register the resolver in IServiceCollection or another framework for dependency injection: https://kontent.ai/learn/net-register-resolver
using Kontent.Ai.Delivery;
IDeliveryClient client = DeliveryClientBuilder
.WithProjectId("<YOUR_ENVIRONMENT_ID>")
// Registers the resolver
.WithContentLinkUrlResolver(new CustomContentLinkUrlResolver())
.Build();
IDeliveryItemResponse response = await client.GetItemAsync<SimpleArticle>("my_article");
SimpleArticle simpleArticle = response.Item;
string simpleArticleBody = simpleArticle.Body;