OctoberCMS BlogHub Plugin - Extends RainLab's Blog extension with custom meta details, additional archives and more.

Overview

BlogHub - OctoberCMS Plugin

BlogHub extends the RainLab.Blog OctoberCMS plugin with many necessary and helpful features such as Moderatable Comments, Promotable Tags, Custom Meta Fields, additional Archives, basic Statistics, Views counter and more.

This extension is especially designed for our own OctoberCMS templates, but can also be used by any OctoberCMS user and developer, of course. Check out the documentation for all details.

Features

The following list just provides a slight overview, visit the documentation for more details.

  • Moderatable Blog Comments, with like, dislike, favorite, ajax and more
  • Custom global and theme-related Post Meta Fields
  • Promotable Blog Tags, with title, description and color
  • View and Visitor Counter, for each single post
  • Additional Template Components, to create author, date, tag archives and more
  • Extended Post Model, with many additional values and properties
  • Extended User Model, also with many additional values and properties
  • Dashboard Widgets, for your comments, posts and statistics

Important Notes

  1. The RatMD.BlogHub extension adds the possibility to use author archive pages. It is highly recommended using the "Author Slug" field for each backend user so that the login name - which would be used instead - is not disclosed. You can also disable the use of the login name with the [bloghubBase] component, as described in the documentation.

  2. The Blog comments currently requires to add the {% framework %} October-specific TWIG tag to your template layouts, when not already included. We're working on an AJAX-less / -optional solution for a future update.

Requirements

Copyright

Copyright © 2022 rat.md.

Published under the MIT-License.

You might also like...
This is a simple PHP Student Portal. You can login, logout, register, and view your details.
This is a simple PHP Student Portal. You can login, logout, register, and view your details.

Student-Portal This is a simple PHP Student Portal with a MySQL Database. I made this as part of a university assignment, so you can login, logout, re

Laravel Blog Package. Easiest way to add a blog to your Laravel website. A package which adds wordpress functionality to your website and is compatible with laravel 8.
Laravel Blog Package. Easiest way to add a blog to your Laravel website. A package which adds wordpress functionality to your website and is compatible with laravel 8.

Laravel Blog Have you worked with Wordpress? Developers call this package wordpress-like laravel blog. Give our package a Star to support us ⭐ 😍 Inst

PHP script for detecting browser details

Browser-details PHP script for detecting Your IP Address / Hostname, Browser/Computer Properties and Browser Headers. (Works with PHP 4, PHP 5, PHP 7,

Extends the customer functionality of Magento.
Extends the customer functionality of Magento.

FireGento_Customer This extension extends the core functionality of the customer module of Magento. It is possible to temporarily lock the user accoun

This document provides the details related to Remittance API. This APIs is used to initiate payment request from Mobile client/others exchange house.

City Bank Remittance API This is where your description should go. Limit it to a paragraph or two. Consider adding a small example. Installation You c

A redacted PHP port of Underscore.js with additional functions and goodies – Available for Composer and Laravel

Underscore.php The PHP manipulation toolbelt First off : Underscore.php is not a PHP port of Underscore.js (well ok I mean it was at first). It's does

Provide CSV, JSON, XML and YAML files as an Import Source for the Icinga Director and optionally ship hand-crafted additional Icinga2 config files
Provide CSV, JSON, XML and YAML files as an Import Source for the Icinga Director and optionally ship hand-crafted additional Icinga2 config files

Icinga Web 2 Fileshipper module The main purpose of this module is to extend Icinga Director using some of it's exported hooks. Based on them it offer

Laravel Pipeline with DB transaction support, events and additional methods
Laravel Pipeline with DB transaction support, events and additional methods

Laravel Enhanced Pipeline Laravel Pipeline with DB transaction support, events and additional methods #StandWithUkraine Installation Install the packa

DiscordLookup | Get more out of Discord with Discord Lookup! Snowflake Decoder, Guild List with Stats, Invite Info and more...
DiscordLookup | Get more out of Discord with Discord Lookup! Snowflake Decoder, Guild List with Stats, Invite Info and more...

DiscordLookup Get more out of Discord with Discord Lookup! Snowflake Decoder, Guild List with Stats, Invite Info and more... Website Getting Help Tool

Comments
  • Method in CommentSection wrong condition

    Method in CommentSection wrong condition

    Method need to be

        protected function getFrontendUser()
        {
            if (PluginManager::instance()->hasPlugin('RainLab.User')) {
                $rainLabAuth = \RainLab\User\Classes\AuthManager::instance();
                if ($rainLabAuth->check()) {
                    return $rainLabAuth->getUser();
                } else {
                    return null;
                }
            } else {
                return null;
            }
        }
    

    Instead of (when plugin is activated returning null)

        protected function getFrontendUser()
        {
            if (PluginManager::instance()->hasPlugin('RainLab.User')) {
                return null;
            }
    
            $rainLabAuth = \RainLab\User\Classes\AuthManager::instance();
            if ($rainLabAuth->check()) {
                return $rainLabAuth->getUser();
            } else {
                return null;
            }
        }
    
    bug 
    opened by naynyeinchan 3
  • 2 Elements using the same ID

    2 Elements using the same ID

    Chrome Warning:

    [DOM] Found 2 elements with non-unique id #bloghubCommentSection6368b0bd2e5b6_username: (More info: https://goo.gl/9p2vKq) 
    <input id=​"bloghubCommentSection6368b0bd2e5b6_username" type=​"text" name=​"comment_name" value=​"Sam" placeholder=​"Your Username" class=​"form-control" readonly>​
    <input id=​"bloghubCommentSection6368b0bd2e5b6_username" type=​"text" name=​"comment_user" autocomplete=​"off" value placeholder=​"Your Username" class=​"form-control from-control-bloghub-special-assignment">​
    
    bug 
    opened by SamDeny 2
  • Meta values aren't stored on new posts

    Meta values aren't stored on new posts

    Theme based meta declarations aren't stored on new posts, only on existing ones. Probably happens on general-declared meta values as well.

    • Found in OC 3.1 (may occurs on previous releases as well)
    bug 
    opened by SamDeny 2
  • Install issue

    Install issue

    Not sure which version of MySQL you are using on your local dev env? But it does not migrate properly on

     mysql --version
    mysql  Ver 8.0.23 for osx10.16 on x86_64
    

    I think a solution would be to remove the default value

    - v1.0.0 Initial Release of RatMD.BlogHub
    Rollback failed! Reason: "SQLSTATE[42000]: Syntax error or access violation: 1101 BLOB, TEXT, GEOMETRY or JSON column 'posts' can't have a default value (SQL: create table `ratmd_bloghub_visitors` (`id` int unsigned not null auto_increment primary key, `user` varchar(64) not null, `posts` json not null default '[]', `created_at` timestamp null, `updated_at` timestamp null) default character set utf8mb4 collate 'utf8mb4_unicode_ci' engine = InnoDB)"
    
    In Connection.php line 669:
                                                                                                                                         
      SQLSTATE[42000]: Syntax error or access violation: 1101 BLOB, TEXT, GEOMETRY or JSON column 'posts' can't have a default value (S  
      QL: create table `ratmd_bloghub_visitors` (`id` int unsigned not null auto_increment primary key, `user` varchar(64) not null, `p  
      osts` json not null default '[]', `created_at` timestamp null, `updated_at` timestamp null) default character set utf8mb4 collate  
       'utf8mb4_unicode_ci' engine = InnoDB)          
    
    opened by chrisvidal 1
Releases(1.3.3)
  • 1.3.3(Nov 28, 2022)

    Version 1.3.3 - Stable

    • Fix: Issue #4 - Meta values aren't stored on new posts
    • Fix: Issue #5 - 2 comment fields share the same ID when the user is logged in + honeypot
    • Fix: Issue #6 - Wrong columns type on ratmd_bloghub_comments table
    • Fix: Issue #7 - Terms of use not shown due to wrong condition
    • Fix: Issue #8 - Wrong condition on CommectionSection->getFrontendUser method
    • Fix: Meta values aren't shown on OctoberCMS v2.
    Source code(tar.gz)
    Source code(zip)
  • 1.3.2(Oct 10, 2022)

  • 1.3.1(Sep 4, 2022)

  • 1.3.0(Aug 30, 2022)

    Version 1.3.0 - Stable

    • Add: Blog Comments table, model and functions.
    • Add: Blog Comments columns on rainlab_blog_posts.
    • Add: New comment and tag related backend permissions.
    • Add: A new settings menu to configure the BlogHub configuration.
    • Add: New dashboard widget 'Comments List'.
    • Add: New dashboard widget 'Posts List'.
    • Add: New dashboard widget 'Posts Statistics'.
    • Add: Comments count sorting option to Post Model.
    • Add: Move Backend user Extension to the BlogHubBackendUserModel behaviour.
    • Add: Custom BlogHubPost model, which is implemented in RainLabs Post model.
    • Add: Custom BlogHubBackendUser model, which is implemented in Octobers User model.
    • Add: New [bloghubBase] component to configure the base options on the layout level.
    • Add: New [bloghubCommentList] component to show comment list outside of post page.
    • Add: New [bloghubCommentSection] component to show comment list with form on post page.
    • Add: New [bloghubPostsByAuthor] component for author archive pages.
    • Add: New [bloghubPostsByCommentCount] component to list posts by their comments count.
    • Add: New [bloghubPostsByDate] component for date archive pages.
    • Add: New [bloghubPostsByTag] component for tag archive pages.
    • Add: New vendor Gregwar/Captcha for the new comment system.
    • Update: Add missing translation strings (for both english and german).
    • Update: Set RatMD.BlogHub as owner on side menu items.
    • Update: The new date archive component supports now week archives as well.
    • Update: Support multiple-tags query combinations using + (all) and , (either).
    • Update: The visitors table to collect likes and dislikes for the new comment system.
    • Update: Rename ratmd_bloghub_settings settings model to ratmd_bloghub_meta_settings.
    • Update: The new BlogHubPostModel behaviour has been finished.
    • Update: Estimated reading time is now part of the new BlogHubPostModel behaviour
    • Update: Published * ago date/time view is now part of the new BlogHubPostModel behaviour.
    • Update: Backend Users are now Visitors as well (but do NOT increase the views / unique_views counter).
    • Update: New default Bootstrap 5 partials for all components.
    • Deprecated: [bloghubAuthorArchive] has been marked as deprecated, please use [bloghubPostsByAuthor] instead.
    • Deprecated: [bloghubDateArchive] has been marked as deprecated, please use [bloghubPostsByDate] instead.
    • Deprecated: [bloghubTagArchive] has been marked as deprecated, please use [bloghubPostsByTag] instead.
    • Bugfix: Replace missing default component partials with working ones.
    • Bugfix: Down Migration did not work on OctoberCMS v2 (dropColumns method does not exist).
    • Bugfix: PHP typings.
    • Bugfix: Smaller bugfixes & code cleanup tasks.
    Source code(tar.gz)
    Source code(zip)
  • 1.2.5(Aug 29, 2022)

  • 1.2.4(Aug 23, 2022)

  • 1.2.3(Aug 23, 2022)

    Version 1.2.3 - Stable

    • Add: BlogHubPostModel behaviour (Work in Progress).
    • Add: Estimated reading time (Work in Progress).
    • Add: Published * ago date/time view (Work in Progress).
    • Fix: Table / Coulmn names for OctoberCMS Marketplace.
    Source code(tar.gz)
    Source code(zip)
  • 1.2.2(Aug 21, 2022)

    Version 1.2.2 - Stable

    • Add: 'View / Unique' column definition to Posts controller.
    • Add: 'Filter Tags' scope column definition to Post and Posts controller.
    • Add: Missing locale strings.
    • Update: Locale strings and language files.
    • Remove: Meta controller and definitions.
    Source code(tar.gz)
    Source code(zip)
  • 1.2.1(Aug 21, 2022)

  • 1.2.0(Aug 21, 2022)

    Version 1.2.0

    • Add: Extend backend_users table with display_name and author_slug fields.
    • Add: Missing URL on the Preview button.
    • Add: Date archive type: 'year', 'month' or 'day'.
    • Add: Formatted date archive string.
    • Add: Dynamic BackendUser method bloghub_display() to receive user name.
    • Add: Dynamic BackendUser method bloghub_slug() to receive author slug or login name.
    • Update: Return 404 when no author is found ([bloghubAuthorArchive] Component).
    • Update: Return 404 when no date is found or date is invalid ([bloghubDateArchive] Component).
    • Update: Return 404 when no tag is found ([bloghubTagArchive] Component).
    • Update: Use author_slug instead of login (when author_slug is not empty).
    Source code(tar.gz)
    Source code(zip)
  • 1.1.0(Aug 19, 2022)

    Version 1.1.0

    • Add: View / Unique View table and counter system.
    • Add: Tags list component (similar to the Categories list component).
    • Add: posts_count belongsToMany value and getter.
    • Add: Visitor model.
    • Add: views and unique_views sorting options to the Post model.
    • Update: Move Post list by tag slug component from Tags to Tag.
    Source code(tar.gz)
    Source code(zip)
  • 1.0.0(Aug 17, 2022)

Owner
rat.md
rat.md
Magento 2 Blog Extension is a better blog extension for Magento 2 platform. These include all useful features of Wordpress CMS

Magento 2 Blog extension FREE Magento 2 Better Blog by Mageplaza is integrated right into the Magento backend so you can manage your blog and your e-c

Mageplaza 113 Dec 14, 2022
Silverstripe-searchable - Adds to the default Silverstripe search by adding a custom results controller and allowing properly adding custom data objects and custom fields for searching

SilverStripe Searchable Module UPDATE - Full Text Search This module now uses Full Text Support for MySQL/MariaDB databases in version 3.* Adds more c

ilateral 13 Apr 14, 2022
Magento 2 Blog is an extension that allows you to manage your store and blog

Magento 2 Blog Extension by Magefan Magento 2 Blog is an extension that allows you to manage your store and blog from one place without having to rely

Magefan 243 Dec 21, 2022
TYPO3 CMS extension which extends TYPO3 page cache, by tags based on entities used in fluid templates.

Fluid Page Cache for TYPO3 CMS This TYPO3 CMS extension allows you to clear frontend page caches, automatically when a displayed record has been updat

Armin Vieweg 1 Apr 8, 2022
Magento 2 Blog Extension - FREE, fully featured, powerful Blog solution for your online store!

Blog MX | Magento 2 Blog Module by Mirasvit FREE, fully featured, powerful Blog solution for your online store! Magento 2 Blog MX allows you to open a

Mirasvit 71 Dec 7, 2022
Magento 2 custom extension to add custom attributes(longitude, latitude) to customer address

Magento 2 custom extension to add custom attributes(longitude, latitude) to customer address. Then save them to quote model and copy them from quote address to order address on bakend, frontend, rest api

MageArab 2 Jul 14, 2022
Ratio plugin is a luck plugin. The more lucky you are, the more you win!

Ratio Ratio plugin is a luck plugin. The more lucky you are, the more you win Features When you break a block (Cobblestone), it gives/puts you somethi

Ali Tura Çetin 2 Apr 25, 2022
Small class to extract + compress .zip, .gz, .rar archives via browser.

The Unzipper The Unzipper extracts .zip and .rar archives or .gz/tar.gz files on webservers. It detects .zip/.rar/.tar.gz/.gz archives and let you cho

Lục Thiên Phong 10 Dec 24, 2022
Coder Metabox for WordPress - Create Pages, Posts Custom Meta Fields options

Coder Metabox for WordPress Coder Metabox for WordPress - Create Pages, Posts Custom Meta Fields options. Step 1 call coder-metabox.php file in functi

Ashikur Rahman 3 Feb 19, 2022
Extends the Debug Bar plugin for the Sophi.io Site Automation service.

Debug Bar for Sophi Extends the Debug Bar plugin for the Sophi.io Site Automation service. Requirements PHP 7.4+ WordPress 5.6+ Sophi 1.1.0+ Debug Bar

10up 2 Jun 22, 2022