Blog Application

The Blog Application which allows you to easily create blog posts and organize them into categories, to publish your blog posts instantly, or at a later date. Moreover, the XWiki blog has a dedicated set of panels that provide an easy navigation for you and other readers.

The Blog Application is no longer bundled with XWiki Standard but you can easily install it using the Extension Manager.

Access the Blog Home Page

There are currently 2 ways of accessing the XWiki Blog Application:

  • by clicking on "Blog" in the "Applications" panel

    BlogLeftPanel.png

  • by clicking the DrawerMenuIcon.png icon which launches the drawer menu, then on "Application Index" in order to access the list of installed applications and finally on "Blog"

    ApplicationIndexDrawer.png

Create a Blog Post

To create a new blog post, go to the Blog home page or access any blog category page from the "Blog Category" panel, fill in the new post title and click on "Create".

CreateNewPost.png

A new page will open in edit mode, allowing you to change the blog post title, add the post content,

EditPostContent.png

and a summary.

EditPostSummary.png

Additionally, for a more visual and appealing display, you may attach an image to the blog article which will then appear as thumbnail, provided the blog is configured to use the Image thumbnail layout instead of the classic "Calendar" layout.

PostThumbnail.png

Next, select a category and set the publication date for the blog post.

EditPostCategoryTagsPublish.png

To create a subcategory, hover any category name and click the + icon. Next, enter the category name and click on "Add". By default, the new category will have the hovered category as parent, which means that "News" will be the parent of "Open Source".

CreateCategory.png

Another possibility is to click on the "Add a category" link. This way you can decide whether the new category will have an existing category as parent or not. 

CreateSubcategory.png

The new categories hierarchy will be automatically updated in the "Blog Categories" panel which is displayed by default in the right panel column. Notice that the panel now has an entry for "All" blog posts with a dedicated RSS feed.

UpdatedBlogCategories.png

After you have filled in all the information, click on "Save & View" and you are done. You can see your blog post as the latest entry in your blog.

BlogHomepage.png

Edit a Blog Post

To edit a blog entry, click on the pen icon located on the top right corner of the post.

EditBlogPost.png

The blog post will open in "Inline" mode allowing you to: 

  • update the content
  • add or update the summary
  • add or update the thumbnail image
  • change the category
  • set a new publish date
  • mark the blog post as hidden

Publish a Blog Post

You can publish a blog post right after creating it or set a later time for it to be published.

PublishPostEdit.png

To publish a blog post at any time before the set date, click the globe icon.

PublishPostView.png

Hide a Blog Post

To hide a blog post from other users, click on the lock icon next to the edit pen

HideArticleViewMode.png

or click on the pen icon to edit the article and check the "Hide article" option.

HideArticleEditMode.png

To make the blog post visible again, just click on the open lock icon next to the edit pen.

MakePostVisible.png

Manage Blog Categories

You can easily filter blog posts by categories by clicking on the category name you are interested in from the "Blog Categories" panel. To edit categories or to create new ones, click on the "Edit Categories" link at the bottom of the panel.

BlogCategories.png

To create a category, click on "Add a category" in the page "Manage blog categories". Fill in the new category name, select "None" for "Subcategory of" and click on "Add". To create a subcategory, just follow the steps with the sole difference is that this time you have to select an existing category as parent.

BlogCategoryAdd.png

Another way of creating a subcategory is to hover an existing category, then click the + icon. This way, the hovered category will automatically be set as a parent for the new one.

BlogCategoryHover.png

To rename or delete a category, hover the category name and click on the pen icon

BlogCategoryEdit.png

or on the X button respectively.

BlogCategoryDelete.png

Blog RSS Feeds

You can easily subscribe to the RSS feed for the whole blog by clicking the RSS icon next to the "All" link in the "Blog Categories" panel. It is also possible to subscribe to the separate blog categories from any page in the Blog.

RSSBlogCategory.png

Multi-Blog Feature

Starting with version 9.4, XWiki supports having multiple blogs in the same wiki. The new feature follows a set of rules, namely:

  • the initial set of categories of the Blog location is shared by all existing blogs
  • new blogs can be created anywhere on the wiki, including under nested pages
  • a new set of categories is created automatically for each new blog.
  • all panels of the Blog Application will display contextual information based on:
    • the displayed blog article, OR
    • the displayed category or set of categories
  • the newly created blog will be configured with a minimal set of panels similarly to the initial Blog located in the Blog location.

To create a blog, locate the "All Blogs" panel and click on "Manage Blogs" or navigate directly to the page Blog.Management which brings an overview of the blogs detected in your wiki.

AllBlogs.png

BlogsOverview.png

Next, locate the section "Create a new blog" and fill in the blog title and location. To set a custom blog location, click the blue editing pen icon, which will load 2 more fields:

  • Parent - the parent of the new blog; right after starting to type the name, the suggest feature will display the list of all the occurrences, so that you can select from them. To collapse the suggestion results, just click on "hide suggestions". As soon as you select a parent, the breadcrumb is updated in order to reflect the location of the page in the reference hierarchy. By leaving this field empty, you will create a top-level page which is the equivalent of an old space home page. 
  • Name - the name of the Blog i.e. the string appearing in the URL.

BlogLocation.png

The new blog categories will be created in the new blog location meaning that if the blog location is "Internal Blog", the categories will be in its child page named "Categories". 

If the option "Enable Blog Panels" is checked, the newly created blog will be configured with a minimal set of panels similarly to the initial Blog located in the Blog location. Next, by enabling the "Create Default Categories" option, you will also create a new set of categories for the new blog: "News", "Personal" and "Other".

Finally, the option "Posts Layout" refers to the way the blog posts are displayed on the blog homepage:

  • Calendar - display a calendar image containing the article publishing date
  • Image thumbnail - display a thumbnail of the image attached to the blog article page. In case the article has no image attached, the Calendar layout is used by default.

BlogOptions.png

Click on "Create" to confirm and if successful you will be soon redirected to the new blog home page so that you can start creating articles. Also, notice that the list in the "All Blogs" panel is updated with the new blog. 

NewBlogPage.png

Blog Macros

Blog Post List Macro

The "Blog Post List" macro is used to query and display blog posts anywhere in the wiki and the returned results can be displayed using customizable post layouts. 

Usage

{{blogpostlist blog="<Page Reference>" category="<Category Full Name>" published="<yes|no|all>"
layout="<full|link|image>" layoutParams="<String of parameters>" limit="<Integer Value>" /}}

Parameters definition

NameOptionalAllowed ValuesDefault ValueDescription
blogyesa document referenceThe  descriptor page of a blog (It should contain a page with a Blog.BlogClass object attached)
categoryyesa document referenceEither a given category or a category location (not mandatory when the blog parameter is specified)
publishedyesyes, no, allyesLimit results to published posts
hiddenyesyes, no, allnoLimit results to hidden posts
fromDateyesstring dateLimit posts to those published starting with a given date. The accepted date format is yyyy-mm-dd.
toDateyesstring dateLimit posts to those published before a given date. The accepted date format is yyyy-mm-dd.
limityesinteger10Number of posts to display
layoutyeslink, full, imagelinkThe name of the post layout macro that will be used to display the posts. The naming convention for the layout macros is: "BlogPostLayout${LayoutNameWithFirstLetterCapitalized}"
layoutParamsyesstringAdditional parameters of the blog post layout
paginatedyesyes, noIn case the limit parameter is not provided the value of itemsPerPage is extracted from the blog descriptor

Example

{{blogpostlist blog="Blog.WebHome" category="Blog.News" published="yes" hidden="yes" layout="full" fromDate="2017-11-01
 layoutParams="displayTitle=false" limit="10" /}}

Blog Post Layout Macros

Blog post layouts are wiki macros for customizing the layout of blog posts. There are currently 3 blog post layout macros available: 

  • blogPostLayoutLink
  • blogPostLayoutFull
  • blogPostLayoutImage

Usage

{{blogPostLayout[Full|Link|Image] reference="<Page Reference>" params="<String of parameters>" /}}

Parameters

NameOptionalAllowed ValuesDefault ValueDescription
referencenoa document referenceThe document reference of the blog post
paramsyesstringAdditional parameters of the blog post layout

Examples

{{blogPostLayoutFull reference="InternalBlog.XWiki Seminar 2017" params="displayTitle=true|useSummary=true" /}}

BlogLayoutFull.png

{{blogPostLayoutLink reference="InternalBlog.XWiki Seminar 2017" params="displayTitle=true|useSummary=true" /}}

BlogLayoutLink.png

{{blogPostLayoutImage reference="InternalBlog.XWiki Seminar 2017" params="displayTitle=true|useSummary=true" /}}

BlogLayoutImage.png

       

Search this space