Hi, I’m new to Wordpress with a builder ( Bricks or Elementor or others …)
I usually code in Reat/Next.js and so I’m used to have a Git repo and the entire workflow is around Git.
I “push” to deploy the website, and everytime i want to update the website i do “pull” , make changes, “commit” and “push”.
Now I’ve done a Website with Bricks (it’s complete) and i need to give it to the client.
From that delivery day the client will edit/add contents on regular basis and sometime I will need to edit Bricks templates and “functions.php” of the Bricks Child Theme to add features.
So I’m looking for a sane workflow that let me sleep without worrying about “losing everything” and that is easy to use.
So my main question are:
How and where do you usuallly develop the website at the beginning of the project?
How do you migrate from local to public hosting ?
Do you use some version control like Git ?
Do you use Import plugin ? If yes, how and where do you save a backup ?
When you need to edit someting on the website (that is already shipped and public accessible) do you work on the live website or in a local copy ? How is your workflow ?
What you learnt along the way that should be avoided to handle all of this ?
Yeah, this is agood question. I use Plesk on my Server. I make regular Backups and we all work on the live Site. Tje customer has restricted access!
If I have to make major Updates (Plugins, Code, new Sites,etc.) then I copy everything to a staging environment and do the job, then push to live again. With Plesk I dont need an extra Plugin.
Create CPT, CPT fields, install plugins, add custom CSS, create Bricks Template, create Real Pages with real content.
When this development cycle is complete, create a Git repo e commit this snapshot (just in case).
2. Migrate the local site to a produciton env
With plugin like “WP All Import” / “Duplicator”
3. Form now, every future edit to the site is made on the live produciton site**:
create new content (obvious…)
pages
post
cpt pages
edit existing Bricks template
change header layout
change footer
…
create new Bricks template
install Plugins (manually)
update plugins (manually or automated)
adding Fields to existing custom post types (with ACF or similar)
create new
4 . The “security” relies entirely on the full production env backup on a daily basis.**
And the dev enviroments is mainly an old snapshot, that will be used only on the next big development cycle.
5. Next big development cycle
Only if a big update is needed the production site is migrated (again with same plugins) back to a local envorinment, where we must spend some times to merge the “now old” Git repo done at step 1 with actual production.
Wondering how this could be done reliable
(Freelancers/Agencies) have different methodologies to approach it in Wordpress.
There is no right or wrong answer, just opinions on how safe or how quick one wants to handle events.
It also depends on the size and scope of a project, and how critical a downtime event affects the website. (Audience is local, regional, national, or international, or it’s a Brochure site or a e-commerce site, number of visitors to the sites etc).
Hypothetically, in a simple site, one can create a site directly on a live environment with a ‘coming soon’ page active.
When it comes time for handover, the Role Manager is used so that the client cannot break the site but only update or add the content.
A good host provides the option for automated daily backups, and custom backups on demand, along with the functionality of automatic updates for plugins, theme and Wordpress.
These backups can be used readily if something breaks unexpectedly.
The above is for less critical sites.
On more critical sites, one can add complexity to it by creating a staging site for major changes/plugin updates/ etc.