I'm using SharePoint 2013. In our blog post we often use a lot of images and text so the current layout just doesn't work.

I'm looking for a way to display a link to a read more page.

  • 1
    I posted a similar question for sp2010. Not sure if this will get you on the right track.... sharepoint.stackexchange.com/questions/84377/…
    – BlueBird
    Jan 31, 2014 at 13:52
  • It works, but, if you hit the back button on the browser, all the blog posts are expanded. Or if you click the 'read more' link then go to the home page, the blog posts are all still expanded.
    – user29498
    Jun 9, 2014 at 23:35

1 Answer 1


How to customize SharePoint Blogs using client-side rendering (CSR)

Since the client side rendering (CSR) is the default rendering mode in SharePoint 2013, below is demonstrated how to override Body field in such a way that the link for the post will be displayed via CSR.

And the resulting page could look like this

enter image description here

Example: how to override Blog view

A. Create rendering template, lets name it Blogs.js

(function () {

    function blogBodyRenderer(ctx) {
       var item = ctx.CurrentItem;
       return '<a href="' + ctx.listUrlDir + '/Post.aspx?ID=' + item.ID + '" class="ms-accentText">Read more...</a>';  

    function registerBlogsRenderer()
      var blogContext = {};
      blogContext.Templates = {};
      blogContext.Templates.Fields = {
        "Body": {
            "View": blogBodyRenderer

    ExecuteOrDelayUntilScriptLoaded(registerBlogsRenderer, 'clienttemplates.js');



B. Upload JavaScript file into Site Assets library

C. Open Blog home page in Edit mode (Edit page). Specify for Posts web part JS Link property:


enter image description here

  • 1
    Brilliant informed answer. Thank you Although I have yet tried this, I am sure this will work :) Thank you again.
    – Wessel
    Feb 3, 2014 at 8:52

Not the answer you're looking for? Browse other questions tagged or ask your own question.