So I am trying to wrap my head around developing within October CMS
Granted I am not a developer by trade but i can figure out stuff with enough time.
I understand you can install the CMS and add or edit web pages. Also you can build modules in a limited capacity, I could be wrong with that assumption.
My question is if I want to create a custom module that has all the functionality I need. Do I need to install and IDE environment like Laravel Herd or something else. Unfortunately there is not a lot of current information out there on YouTube and I would really like to get a better grasp of the process.
I know there was the Builder Module which I played around with but seemed rather basic to allow you to Add, Edit, View data that you input. Now there is Taylor but its confusing because it talks about it being a total development solution which I understand is still be developed so not everything is there yet. Also it states your not creating database tables etc. So where is all that data being stored - Text files?
Anyway I am looking for that Ah Ha moment where it all comes together.
Thanks for any input on the topic.
Doug
Hi @dblackmon,
Do you have a specific goal in mind?
If you’re looking to build new functionalities, you can create a plugin. Here’s a guide to help you get started:
So I own a sign shop and we do custom apparel etc. I currently use Monday.com to track all of my jobs .
I was using ShopVox before they pulled a bait and switch tactic to alot of there customer base.
My main goal is the following
1- Have a project/Job management system to keep up with everything
2- Have customer portal to allow them to see the status of there projects/Jobs
3 - Have the ability to have an Artwork approval process
Once the following objects are complete I will further enhance the portal as time permit’s.
I used to do stuff in DotNetNuke many many years ago and I dont wish to develop in that platform anymore.
Just trying to get a good grasp of things now that I have my portal in place.
@dblackmon,
This is a perfect fit for OctoberCMS.
Here’s a guideline:
1. Install October CMS First, get October running locally: Installation - October CMS - 3.x
2. Install RainLab.User Plugin
php artisan plugin:install rainlab.user
This handles customer logins/registration. Your clients will use this to access their portal.
3. Create Your Theme
php artisan create:theme signshop
This is where your customer portal frontend lives. You can also use the demo theme to start if you prefer.
4. Create Your Plugin
php artisan create:plugin SignShop.JobTracker
5. Create your models via command line:
php artisan create:model SignShop.JobTracker Job
php artisan create:model SignShop.JobTracker Artwork
Then add a relationship in your Job model to link to RainLab.User:
public $belongsTo = [
'user' => 'RainLab\User\Models\User'
];
6. Create a Frontend Component In your plugin, make a component like JobStatus
that:
- Checks if user is logged in (RainLab.User)
- Gets their jobs from database
- Displays job list with status
7. Add Component to Theme In your theme’s page:
[jobStatus]
==
{% component 'jobStatus' %}
This is a rough guideline.
So are components specifically for front end access, would that be correct to assume? I am assuming as well my employees should use the front as well by creating some type of roles for access?
Yes, Components are used on the frontend. The backend equivalent would be a Widget: OctoberCMS Widgets Documentation.
Your employee should work within the backend. There, you can define Roles and Permissions to manage access: OctoberCMS Roles & Permissions Documentation.