#4

Product support

Get help in the plugin support forum.

Categories

  • Marketing
  • Social
  • Utility

Simple. Powerful. Elegant

ProBlog for October is an extremely powerful & flexible way to provide a robust blogging experience to your October Website. With direct post to twitter, SEO optimizer tool, and powerful tagging and search routing, ProBlog Blog plugin for October cms offers so many great features out of the box saving you both time and money.

30% of your purchase goes to help fund the October Project!

Well documented. Well supported. Well designed. ProBlog blog plugin for October cms is the best choice for Professional Blogging right from your October Website.

See ProBlog in action here: http://goradiantweb.com

Features At A Glance

  • Unlimited/Multiple Blogs
  • Automatic Authorship by Logged in User
  • Powerful SEO Tools
  • Flexible Components (categories,tags,date archive,post, related posts)
  • new filter posts by blog 'Sections'
  • Dynamic Searching and Listing by filters
  • Filter by Author, Date, Tag, Category, Trending new, & Popular new
  • new Simple Category URL Routing (/blog/somecategory/post-title/) without the need to create per-category pages! new Versioning with timestamp and rollback!!!!
  • SEO Tools compatible Markdown Editor
  • sample app translation added. Multi-lingual ready!
  • RSS Feeds
  • Simple & Flexible Tagging Widget
  • Post Directly to Twitter When You Publish
  • Robust API Integrations such as Sharethis & Embed.ly

Integrates Perfectly With

problog-plugin

A powerful blogging app for October CMS.

      $$\  $$\    $$$$$$$\                  $$\ $$\                      $$\     $$\      $$\           $$\
     $$  |$$  |   $$  __$$\                 $$ |\__|                     $$ |    $$ | $\  $$ |          $$ |
    $$  /$$  /$$\ $$ |  $$ | $$$$$$\   $$$$$$$ |$$\  $$$$$$\  $$$$$$$\ $$$$$$\   $$ |$$$\ $$ | $$$$$$\  $$$$$$$\
   $$  /$$  / \__|$$$$$$$  | \____$$\ $$  __$$ |$$ | \____$$\ $$  __$$\\_$$  _|  $$ $$ $$\$$ |$$  __$$\ $$  __$$\
  $$  /$$  /      $$  __$$<  $$$$$$$ |$$ /  $$ |$$ | $$$$$$$ |$$ |  $$ | $$ |    $$$$  _$$$$ |$$$$$$$$ |$$ |  $$ |
 $$  /$$  /   $$\ $$ |  $$ |$$  __$$ |$$ |  $$ |$$ |$$  __$$ |$$ |  $$ | $$ |$$\ $$$  / \$$$ |$$   ____|$$ |  $$ |
$$  /$$  /    \__|$$ |  $$ |\$$$$$$$ |\$$$$$$$ |$$ |\$$$$$$$ |$$ |  $$ | \$$$$  |$$  /   \$$ |\$$$$$$$\ $$$$$$$  |
\__/ \__/         \__|  \__| \_______| \_______|\__| \_______|\__|  \__|  \____/ \__/     \__| \_______|\_______/

ProBlog Quickstart

The first thing we must do is set up a parent blog page in your site.

  • Create A Parent Blog Page add a page to your site and call it "blog".
    • edit the "url" of the page to be "/blog/:filter?/:slug?/:month?/:instance?/"
    • add the ProBlog BlogList component to your parent /blog page and make sure that the "Blog Parent Page" field is set to none. this will list all posts regardless of parent.

The next thing we must do is set up our ProBlog Settings. To do so, go to your Backend -> Settings -> ProBlog area.

  • Render
    • Choose a default Blog Parent Page - This is the default parent page that will be used to generate Category list pages and the preferred parent page when creating new posts.
  • Editor
    • enable markdown - Switch problog's content editor from wysiwyg to markdown editor with preview.
  • Social Settings
    • ShareThis - If you provide a free ShareThis key, you can automatically utilize ProBlogs social icons.
    • Facebook - enable Facebook sharethis button
    • Twiiter - enable Twiiter sharethis button
    • Google - enable Google sharethis button
  • API Settings
    • embed.ly - enable embed.ly media embed API. see below.
    • Alchemy - enable alchemy API. see below.
  • Authorize
    • twitter - Authorize Twitter API. see below.

Note: All ProBlog components should have the Blog Search Page option set. This tells tag/category links where to search from the context of that respective component. This can be the same page as your parent blog page, but must be set non the less.

Post Rendering Explained

ProBlog Posts can now be rendered via an injected BlogPost component directly from within the BlogList component results. This is the preferred way to render posts. The following rules dictate how the BlogList component will resolve URLs:

  • /blog : a single url will return a blog list based on the component settings
  • /blog/[categoryname] : a propertied url that will return a filtered blog list matching a provided category slug (does not apply to tags)
  • /blog/[categoryname]/[slug] : Render a Blog Post a propertied url that will inject the BlogPost component and return a specific blog post of a match slug under a designated category
  • /blog/category/[slug] : interpreted the same as /blog/[categoryname]
  • /blog/tag/[slug] : a propertied url that will return a filtered blog list matching a provided tag slug
  • /blog/search/[slug] : search blog posts by title & content
  • /blog/author/[slug]: search blog posts by author
  • /blog/[year]/[month]/[day]/: search blog posts by year/month/day. Month and day are both optional and can be filtered granularly.

Tags will always link to a searchPage as set in the BlogList or Category/Tag component options.

ProBlog Posts can also be rendered via the BlogPost component directly by providing a given posts slug value.

Note: If you would like to route your posts to a specific page for single posts rendering via the BlogPost component, simply make sure the render page containing the BlogPost component has a filter param available in the URL like so: /blogrenderpage/:filter?/:slug?/ : the filter will be ignored and the BlogPost component will simply render the post by slug.

Managing Multiple Blogs

You can have multiple blogs with ProBlog. Each blog section would serve as a given posts "parent" page. Each blog with their own BlogList component.

So you might have the following:

  • /blog
  • /news

When posting new blog entries, simply chose one of your parent pages.

Note: When posting by category, the Blog Parent Page and the selected Category for the post typically will match. But they do not have to. This is to provide greater flexibility with linking and routing.

Using Blog Series

You can also parse your blog relationships using ProBlog's 'Series' option. Using series filtering you can have more granular control over how you filter posts on your website. Navigation wise, a list of blog posts under a given parent page may have a need for content 'sections' or series. Series logic is baked in at the component level to allow taxonomy linking to additionally be restricted to that section.

Example usage: You have a blog. That blog is about 'travel'. There are categories for 'food', 'favorite locations', 'too touristy', and 'accommodations'. There is a myriad of tags such as "pastas, meats, plush, vrbo, downtown...". However, within this travel blog, you may want to granularly share tag and category linking at the 'top' level. But elsewhere on your site, you may want to have a page dedicated to 'domestic' travel, and perhaps a separate page for 'international' travel, and perhaps a third page for 'tips and tricks'. You 'could' use parent pages for this effort, but what if you wanted to break those subject matters down by a given country or state and have the tags and category lists accomodate that restriction? Combining parent pages and blog Series associations, now your pages can be broken down from top to bottom more granularly!

Passive Component Params

Both the ProBlog BlogList and the ProBlog Post components are designed to "passively" receive input params.

Setting up the BlogList component to receive filtering:

url = /blog/:filter?/:slug?/:instance?/

Removing the "?" will make these parameters "forced" and not roll gracefully back.

url = /blog/:filter/:slug/

The following filter types are available:

  • category /category/category-name/
  • tag /tag/tag-name/
  • author /author/authorID/
  • [number] /year/month/day/ (requires own page with passive vars /:filter?/:slug?/:instance?/) (month and day are both optional) if the filter interpolates as a number, the filter is assumed as cannonical.
  • search /search/search-word/ (will str_replace '-' and '%20' with ' ')

So any page that contains the blogList component that also has passive variables added to the url can utilize these filters.

For example: If you have your parent /blog page set up this way, you can search your blog posts by accessing /blog/search/{keyword}/

You can also predispose the component to filtering by virtue of the components settings.

The following predisposed filters are available for the blogList component

  • category /category/category-name/ accepts @string value
  • tag /tag/tag-name/ accepts @string value
  • author /author/authorID accepts @number value

BlogList Component

The BlogList component comes with several helpful settings to customize your blog functionality.

  • Alias The Component Alias name
  • Posts Per Page The number of posts per page
  • Pagination Pagination is enabled when this is checked
  • Filter Type A predisposed filter option. When set, the block will always filter by this type
    • none - no filter
    • tag - filter by tag: requires a value
    • category - filter by category: requires a value
    • canonical - filter by date: requires passed url /:year?/:month?/:day?/
    • author - filter by author: requires author id
    • popular - filter by most popular
    • trending - fitler by most popular of posts created over the last 30days
  • Filter Value The Value used in conjunction with the Filter Type: Filter Type = Category, Filter Value = uncategorized. Leave blank for Connonical lists, and use date url params. See below note.
  • Filter By Parent Page Blog Posts are filtered by this parent page.
  • Blog Search Page The Page in your site you would like tags/categories to link to and search
  • Render Posts By How posts will be rendered: By that posts' parent [preferred/default], By the global setting, By a specific page
  • Render Page The page that will render posts if "Specific Page" is selected for the "Render Posts' By" option.
  • Enable RSS Feed Will display an RSS link at the bottom of your list views
  • RSS Title Your Feed Title
  • RSS Description Your Feed Description

Note: for a date (cannonical) based Filtered component list, make the URL params simply pagename/:year?/:month?/:day?/, and then set the filter to 'cannonical' and leave the filter value empty.

You can place the BlogList component on a page utilizing it's alias like so:

{% component 'proBlogList' %}

Blog Post Component

The Post component allows you to view individual blog entries.

  • Alias The Component Alias name
  • Id Parameter "advanced" - do not change unless you know what partials need to reflect this change.
  • Blog Search Page The page you would like any tag or category links to be directed to.

You can place the Post component on a page utilizing it's alias like so:

{% component 'proBlogPost' %}

If the Blog Post component is set up with sub page urls, automatic category list rendering is assumed. For example: if my post rendering page is /blog/category1/:slug?/ and the url /blog/category1/ is accessed, the post component will automatically render the BlogList component predisposed to 'category1' filtering.

Blog Category List

The Blog Category List component allows you to list out categories with relational linking.

  • Alias The Component Alias name
  • Filter By Parent Page Blog Posts are filtered by this parent page.
  • Blog Search Page this should be your parent blog page typically. But can be set to any page that contains the BlogList block.

You can place the Blog Category List component on a page utilizing it's alias like so:

{% component 'proBlogCategories' %}

Blog Tag List

The Blog Tag List component allows you to list out tags with relational linking.

  • Alias The Component Alias name
  • Filter By Parent Page Blog Posts are filtered by this parent page.
  • Blog Search Page this should be your parent blog page typically. But can be set to any page that contains the BlogList block.

You can place the Blog Tag List component on a page utilizing it's alias like so:

{% component 'proBlogTags' %}

Blog Archive List

The Blog Archive List component allows you to list out posts by expand/collaps date navigation with direct linking.

  • Alias The Component Alias name
  • Filter By Parent Page Blog Posts are filtered by this parent page.
  • Render Posts By How posts will be rendered: By that posts' parent, By the global setting, By a specific page
  • Render Page The page that will render posts if "Specific Page" is selected for the "Render Posts' By" option.

You can place the Blog Archive List component on a page utilizing it's alias like so:

{% component 'proBlogArchive' %}

Related Posts

The Related Posts component provides a list of posts related to the currently viewed posts' tags.

  • Alias The Component Alias name
  • Number of Related Posts The number of related posts to list
  • Description Size Truncate the excerpt size
  • Filter By Parent Page Blog Posts are filtered by this parent page.
  • Render Posts By How posts will be rendered: By that posts' parent, By the global setting, By a specific page
  • Render Page The page that will render posts if "Specific Page" is selected for the "Render Posts' By" option.

You can place the Related Posts component on a page utilizing it's alias like so:

{% component 'proBlogRelated' %}

Note: you typically would add this component just under your proBlogPost or proBlogList component.

ProBlog Integrations

ProBlog conveniently integrates with RainLab's amazing Static Pages plugin. You can set your Static Menu's to list and filter results by your ProBlog Categories and Tags. Simply follow the Static Pages docs to utilize. Having both plugins installed will provide ProBlog Category and Tag filters as Static Menu Items.

Utilizing Embed.ly API

If you chose to nab your free Embed.ly API Key and enter it, you can get stupid simple embeding in your posts.

Simply add a link to your embedable content and make it's text = "embedly", and ProBlog will do the rest.

You can see a list of providers here: http://embed.ly/embed/features/providers

<a href="https://vimeo.com/94705479">embedly</a>

Utilizing the Alchemy API

If you chose to nab your free Alchemy API Key and enter it, you can get some rediculous awesome SEO tools when posting your blog entries.

The SEO Tools tab when posting will be empty unless you have added your key.

This area of documentation will be expanded soon.

Post To Twitter

If you chose to authorize your Twitter account in your ProBlog Settings area, you can post messages directly to twitter from your post create/upadte pane.

  • Use the {{url}} twig to auto swap the blog post you are tweeting from.
  • If you log into your twitter account and connect your company facebook page to your twitter acount, you can post to both at the same time. First to Twitter, and then from twitter to facebook automatically.
  • Found the plugin not useful on 26 Jan, 2017

    No matter what I try, I cannot get the blog/post to display a post. Blog page works great. No post. This was not an issue using the free blog plugin. I thought I would switch so I could get more features.

  • Found the plugin useful on 19 May, 2016

    Can we allow frontend users to post in the blog and allow frontend user to manage the blog?

  • author

    Replied on 19 May, 2016

    I think that is a great idea. I'd be more than happy to chat with you about how much that would cost to develop a package that can do that. We'd likely supplement that cost with you as we would probably offer that as a separate package for sale.

  • Found the plugin useful on 2 Apr, 2016

    A lot of work when using your own custom html design, but the instructions are clear. My blog looks and work awesome with this plugin.

  • author

    Replied on 2 Apr, 2016

    Thank you for the kind words Enok. Best of luck in your future work, and let me know any suggestions you have that can make the product even better.

  • Found the plugin useful on 24 Feb, 2016

    Thumbs up for this plugin! Also, as a non developer, i managed to install it and got my first post running and I love it - At moment i am fighting with the localisation - not only with ProBlog - in the whole CMS - I would still appreciate more total noob tutorials thorughout all the content here (yes i've seen the videos). But hey, it's still great!

  • Found the plugin useful on 20 Aug, 2015

    It works good and the developer keeping it updated. It meet all requirements you need.

  • Found the plugin not useful on 21 Jul, 2015

    It's good for non-developers which don't know how extent their applications. after perchasing ProBlog I prefer using Rainlab Blog system with their addons. I request refund (after 3 days) and it's not accept. So I just removing it.

    Again, it's good plugin but not for me.

  • Found the plugin useful on 17 Oct, 2014

    After initially using the RainLab plugin there was much to be desired. This plugin adds in everything it lacks and so much more! Highly recommend this to anyone looking to run a productive blog with October.

  • Found the plugin useful on 15 Oct, 2014

    We are new adopters of OctoberCMS and having a great system like ProBlog to compliment the core system is great, not only that but the support for the plugin is second to none, with queries answered (in my experience) the same day. Great plugin ChadStrat. Thanks again for taking onboard our requests too :)

    If you need a blogging system within OctoberCMS, this is the one!

  • Found the plugin useful on 21 May, 2014

    Works Great!

4.0.0

add post versioning

Apr 27, 2017

3.6.2

add series association

Apr 13, 2017

3.6.0

add author bio to backend user model

Apr 13, 2017

3.5.0

cleanup of slug routing

Jan 06, 2017

3.4.0

add impressions field to post model for trending and popular posts filtering, new related posts component

Dec 14, 2016

3.3.2

add further cannonical date component filtering options

Oct 25, 2016

3.3.1

fix for self bug on save

Aug 19, 2016

3.3.0

correct markdown saving bugs

Jul 18, 2016

3.2.9

update editor markdown refresh

Jul 06, 2016

3.2.8

update editor reference

Jun 23, 2016

3.2.7

add bulk delete to tags

May 05, 2016

3.2.6

updates for core release

Apr 18, 2016

3.2.5

bug fix multi-select delete and duplicate

Nov 03, 2015

3.2.4

add $post public to post view

Oct 30, 2015

3.2.3

translations added to backend

Oct 11, 2015

3.2.2

correct category url in blogList

Sep 27, 2015

3.2.1

correct category save bug

Sep 05, 2015

3.2.0

!!! MAJOR REFACTOR - PLEASE REREAD DOCS ON POST RENDERING !!!

Aug 23, 2015

3.1.2

add ProBlog settings permissions

Aug 23, 2015

3.1.1

Optimizer now supports new markdown editor

Aug 22, 2015

3.1.0

cleaned up the underlying codebase and form widget file structure

Aug 19, 2015

3.0.6

custom markdown editor has been replaced with the native markdown editor

Aug 19, 2015

3.0.5

css editor update

Apr 24, 2015

3.0.4

redactor reimplementation for SEOoptimizer

Mar 15, 2015

3.0.3

markdown update

Mar 12, 2015

3.0.2

remove unneeded field form div

Mar 09, 2015

3.0.1

pagination bug fix

Feb 28, 2015

3.0.0

!!! Updates to components

Feb 21, 2015

2.0.0

!!! Plugin is now compatible with the RC version of October

Jan 27, 2015

1.6.0

params work in list view

Dec 11, 2014

1.5.9

params work in post view

Dec 11, 2014

1.5.8

added permissions

Dec 10, 2014

1.5.7

user plugin auth check

Nov 02, 2014

1.5.6

added large screen mode to markdown editor

Oct 24, 2014

1.5.4

SEO Optimizer Tool now work with markdown mode

Oct 24, 2014

1.5.3

normal editor condition added

Oct 21, 2014

1.5.2

prettyPrint fix

Oct 18, 2014

1.5.1

prettyPrint fix

Oct 18, 2014

1.5.0

add Markdown mode

Oct 18, 2014

1.4.3

default parent page setting

Oct 15, 2014

1.4.2

duplicate is_bind bug fix

Oct 15, 2014

1.4.1

List switch to published_at from created_at

Oct 13, 2014

1.4.0

Sort Order Images

Oct 07, 2014

1.3.0

Translation Multilingual integration

Oct 03, 2014

1.2.0

Static Pages/Menus Integration

Oct 02, 2014

1.1.6

purgeable no longer autoloading fix

Jul 20, 2014

1.1.5

List refactoring

Jul 10, 2014

1.1.4

now supports multiple list components per page

Jul 08, 2014

1.1.3

bug fix Alchemy API tab js execute

Jul 07, 2014

1.1.2

added delete & duplicate to list view

Jul 01, 2014

1.1.1

view updates

Jun 27, 2014

1.1.0

post to twitter added

Jun 22, 2014

1.0.9

pagelist deprication fix

Jun 20, 2014

1.0.8

delete post icon fix

Jun 18, 2014

1.0.7

twig partial parser for blog content

Jun 12, 2014

1.0.5

author additions

Jun 10, 2014

1.0.4

metadata refactor

Jun 08, 2014

1.0.3

Page List refactor

Jun 08, 2014

1.0.2

Initialize plugin

May 15, 2014