Changing the design of existing C5 site with minimal impact

Permalink
Hi There,

I am updating the look and structure of my client's website, and now I'm at the stage where it needs to be integrated into C5 so she can add all the content before it goes live.
As the structure is changing slightly I can't just apply the new template to the existing pages; I need to ensure the new site can be swapped with the old site once it's ready to avoid any impact on visitors to the site.

Is there a best way of doing this?

Thanks
Lou

 
planist1 replied on at Permalink Reply
planist1
Can you use a backup of the existing site database/files, move it to a development server and test?
lou28 replied on at Permalink Reply
Unfortunately I don't have a development server to work with...
planist1 replied on at Permalink Reply
planist1
Does your new template contain the same editable regions as the old template?

Areas like:
<?php 
         $a = new Area('Main');
         $a->display($c);
      ?>
lou28 replied on at Permalink Reply
No it's almost a new site...
adajad replied on at Permalink Reply
adajad
Once you have a new html layout ready you should make it a concrete5 theme. This how-to explains in detail how you do that (but nevermind any reference to scrapbook, which is deprecated): http://www.concrete5.org/documentation/how-tos/designers/making-a-t...
It's a long read but really worth it.

As for development server you can always install a LAMP or WAMP stack and run the site locally until you are done. That way you will catch mostly all errors before going live.
lou28 replied on at Permalink Reply
Perhaps I didn't explain myself well enough...

Basically I have a new theme I've created for an existing C5 site. It's to eventually replace the theme that's there at the moment.

I need a seamless move from the old theme to the new theme without any downtime, so I need my client to be able to add all her new content to the new theme in some way, before making it live.

Any ideas how to do this?

My initial thoughts were to just upload the new templates to the existing theme, then create the new site by 'hiding from nav'. Once she's created all the content, then I can simply delete all the old pages, and move the new ones into place.

Another thought was to create a new folder in the root of the ftp and install C5 again in there and create the new site in the new install. I'd then just to a htaccess redirect to the new site location.

But I'm keen to hear if anyone has any better suggestions?

Thanks
ronyDdeveloper replied on at Permalink Reply
ronyDdeveloper
If you can manage your new theme having all the same Area Name as like your old theme and create all the page types that currently exists into the old theme, then I think you can easily move the new theme without any downtime.

Rony
lou28 replied on at Permalink Reply
The content is all different...
adajad replied on at Permalink Reply
adajad
If the theme uses the same area names and has the same templates and single pages, you can install the theme on the live server without any problem (as Rony said).

Your client can then edit in the new content for everything and change the theme on page level (Edit > Design) _without_ hitting publish. After the edit is done you should hit Preview instead. That way everything is saved in the db but not available to the public. Once your editor want to publish the pages he/she can just go the edited page that is in preview mode and hit publish.
lou28 replied on at Permalink Reply
As I mentioned...unfortunately there are different areas and different content and different structure, so this isn't an option.

Thanks
adajad replied on at Permalink Reply
adajad
Then I suggest all new pages are created in a site area where only the editor has access. When all is done all he/she has to do is move them in the site tree and remove the old pages.
lou28 replied on at Permalink Reply
Not the easiest, as I have to rename the elements folder to elements2 and style.css to style2.css.

It's a bit messy...but if there's no other way...
JohntheFish replied on at Permalink Reply
JohntheFish
While you don't have a development system, can you set up a second install and database on the client's server?

If so, you can clone the site in to the second install and run it under a subdomain for development, then flip the domain pointers when ready to go.

See
http://www.concrete5.org/documentation/how-tos/developers/organise-...