Idea for approaching the default setup of new blogs

I see many people asking about ways to improve on the Blog Defaults and the Blog Templates ideas. I would love to see something myself where you could setup every last part of the blog that someone would get.

So in thinking about this and looking at the database, it seems like there is an easier solution than any of the approaches I have seen so far.

In theory, you should able to simply copy any blog and create another one with fairly simple SQL statements, right? Just copy all the tables starting 'wp_5_' (where 5 is the ID of the blog you want to copy) and then create a new set of tables with the prefix 'wp_25_' and where 25 wouyld be the new blog id.

So the idea would be ask what blog we want to use as the template (could even allow for multiple templates.) So I select which one I want to use. Then all I have to do is update that blog. The site you are using as the basis would then work as live demo of the site as well.

Whenever someone signs up they get an exact copy of up to the minute changes, reading right from that blogs tables. Save them from setting up pages, categories, etc. They would just switch out the content on each page for themselves.

In creating the new tables. you could just do a text replace to swap out what the new url would be based on their signup info. Then replace the user info with that of the new signup as well.

Essentially there would be almost no settings in this plugin except for what each template should be called and which blog is to be used as the model.

Does this make sense? It almost sounds too easy. I'm just not very good at the SQL end of things. :slight_smile:

  • Kirk Ward
    • Syntax Hero

    That sounds complicated to me and as it seems to require modifying the database, dangerous as well.

    I prefer the idea of just creating a blog to clone, making it the current one by clicking on "backend" in the blogs screen and cloning it. After I have the model I want, that seems the easy as pie.

    If you're looking through your existing blogs for one, then you don't even have to build a prototype as I did.


  • Marty Thornley
    • Site Builder, Child of Zeus

    I do understand the complexity behind it from the programming standpoint. I really meant that it would be easier on the user, the admin.

    The problem is the level of control over every last detail of a site, down to settings for plugins and everything. I want (and I am sure others would want) to be able to offer a site that is fully setup so new users can signup and be fully ready to go.

    As for the danger of modifying the database, I don't buy that. Plenty of plugins add to or modify the database and that shouldn't be a scary idea for anyone who knows what they are doing.

  • Kirk Ward
    • Syntax Hero

    The danger comes because human doing is a lot more complicated than computer doing. The computer script will do the same task over and over with no variation unles it is instructed. A human will not.

    You do it enough times, and you'll forget one, then muck up the works and have to go through a lot of restoration. I know from a long lifetime of experience and observation.

  • Marty Thornley
    • Site Builder, Child of Zeus


    Not sure what you mean by a human doing vs a computer doing. The idea is that the plugin would be doing the work so that we people don't have to think every time. I see more room for human error when something requires more and more human interaction.

    A plugin is software. What do you think a computer is? A person made that. A person made the database and a person made WordPress.

    It just needs to be tested properly.

  • Kirk Ward
    • Syntax Hero


    Yes, software is coded by humans, and software can be coded incorrectly. But once coded correctly and in operation, the software will repeat the same task over and over without change, unless an external force interrupts it. A human does not have that ability. If it did, we would not have the creativity we have.

    I see more room for human error when something requires more and more human interaction.

    Your wanting to manually perform the task is specifically the requiring of human interaction. Once properly coded and debugged, a plugin, or any other piece of software will perform that repetitive task without human interaction.

    So much for my reply, because what I see in the post above, and what I remember from your original post (I'll get lost if I look back up) are two different messages.

    <y memory of the orignal post was that you wanted to edit the database manually. In this last post, it almost sounds like you are wanting to use a plugin. Because, I have been preaching the idea of using the plugin for simplicity and safety, I am wondering if I missed something in between?

    Okay, now that my mind finished its thought process for the reply, I was able to scroll back up and read the original post again. I now think that you were talking about the development of a plugin. That I agree with. Somehow I got myself confused and thought you were wanting to edit the database manually. I apologize if I sounded confused. I was.

    Cheers, and all that stuff

  • Marty Thornley
    • Site Builder, Child of Zeus

    Ahh. Yes I see where the confusion came. I definitely would not want people (even talented, knowledgeable programmers) to have a chance to manually muck things up.

    Thanks for clarifying - I definitely agree with you.

    I was merely suggesting that the ability of a piece of code to copy one set of tables into another is a pretty easy thing.

    It would be like this...
    Select a blog to clone: (type a number here)
    Give it a name: (type a name)

    On Signup...
    Select a template: Either a list or dropdown of all templates.
    See a demo: Because we are mimicking an existing site, there is a live demo of it.

    On Blog creation, the new blog is created and then the tables from the cloned blog are copied over, creating a exact copy of up to the second changes to that blog.

    This way we have a blog that is the model for new blogs. It is live as a demonstration. And on signup new users get that EXACT site. Content and all, ready to go.

    I started playing with it for a few hours last night. Already about half way there. I'll post updates when it is near ready. Right now i have it using the built in WordPress functions and a redo of the blog templates plugin to grab all posts, pages, categories, links and the entire set of options from any existing blog.

    This ability to choose a blog id, not just automatically pulling the current blog is huge for me. The concept of manually switching to a blog in order to clone it is a nightmare from a usability standpoint. It was super easy to hack that plugin to let you choose any blog.

    Also re-doing the entire admin options area so that we don't have a page a mile long. Split it up into settings, editing a template, copying templates, etc.

    I am open to suggestions about what people would like to see. Not sure what I will be able to incorporate in the first go around, but I am definitely interested in hearing ideas.


  • Kirk Ward
    • Syntax Hero

    Hang onto plugin activation settings and widget settings and content as cloning a blog and having it show up empty because a plugin is not activated, or a widget is not in place means a lot of support calls from a new blogger who was expecting some pre-loaded content and functionality.

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.