FOR DEVS - Roots Wordpress Stack aka "Bedrock"

753 views
Skip to first unread message

Phil

unread,
Mar 20, 2014, 9:24:41 PM3/20/14
to manchester-word...@googlegroups.com
http://roots.io/wordpress-stack/

Composer...
Capistrano
Vagrant...

Capistrano has been mentioned to be my Marius.  A talk ?

phil

Ian Anderson Gray

unread,
Mar 21, 2014, 5:46:22 AM3/21/14
to manchester-word...@googlegroups.com
Hi Phil,

Glad you mentioned this. I am a massive Roots fan and have been using
the Roots starter theme to start all my projects. It would be great to
talk about that sometime.

I'd definitely be interested in hearing about people's experience with
Bedrock (the Roots Bedrock WP stack). I've not used it myself yet
because I haven't quite got my head round Vagrant or Composer yet, but I
love the look of it.

Tom gave a talk on Vagrant on Wednesday which was great, but I'd love to
learn how best to deploy a local WordPress website to a staging or
production site. I know some people use Git for that, or even FTP.
Currently I am using FTP via FTPloy, but I'd rather use Git or in the
future Capistrano.

One of the developers of Roots gave a really great screencast of
Capatrino- http://roots.io/screencasts/deploying-wordpress-with-capistrano/
You do have to pay $12 for the screen cast though (although I felt it
was worth it). The only thing the screencast doesn't really cover is
deployment of the WordPress database.

Using FTP, Git or Capastrino for deployment are all fine, but what about
pushing database changes (particularly when you have different
domains/paths to worry about)?

Ian
> --
> See the group blog at http://mwug.info
>
> You received this message because you are subscribed to the Google
> Group "Manchester WordPress User Group".
>
> To post to this group, send email to
> manchester-word...@googlegroups.com
>
> For more options, visit this group at
> http://groups.google.com/group/manchester-wordpress-user-group
> ---
> You received this message because you are subscribed to the Google
> Groups "Manchester WordPress User Group" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to manchester-wordpress-...@googlegroups.com
> <mailto:manchester-wordpress-...@googlegroups.com>.
> For more options, visit https://groups.google.com/d/optout.

Rob Blake

unread,
Mar 21, 2014, 5:51:30 AM3/21/14
to manchester-word...@googlegroups.com
I've been using Bedrock for a couple of months now and it has just totally transformed my workflow.

The composer + capistrano + git combo is extremely powerful, particularly for those of us who need to maintain a few client sites.

The ability to deploy stage tested updates with a single 'bundle exec cap production deploy' is great.

And if something goes wrong, I can simply rollback to the previous version with 'bundle exec cap production deploy:rollback'.

I also use the Roots theme as starting point for everything these days. IMHO Ben Word and Scott Walkinshaw are WP heroes!

Rob
--
See the group blog at http://mwug.info
 
You received this message because you are subscribed to the Google
Group "Manchester WordPress User Group".
 
To post to this group, send email to
manchester-word...@googlegroups.com
 
For more options, visit this group at
http://groups.google.com/group/manchester-wordpress-user-group
---
You received this message because you are subscribed to the Google Groups "Manchester WordPress User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to manchester-wordpress-...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.


-- 
Rob Blake
Director
Losource Ltd
The Town Hall
St George's Street
Hebden Bridge
HX7 7BY
United Kingdom
www.losource.net
+44 (0)7951 081480

Registered in England and Wales No. 4450521

VAT No. 843 0039 57

The information in this email is confidential.  If you are not the
intended recipient, you must not read,  use, disclose or disseminate
that information.

Rob Blake

unread,
Mar 21, 2014, 5:55:24 AM3/21/14
to manchester-word...@googlegroups.com
Hi Ian,

Until the roots guys get their Bedrock DB sync working, I would
recommend a plug-in called "WP Migrate DB Pro"

https://deliciousbrains.com/wp-migrate-db-pro/

I really don't know how I managed without it!

It also comes with an add-on to handle syncing media files, which is
also great.

Some guys on the roots discourse forum told me about it.

Rob

Ian Anderson Gray

unread,
Mar 21, 2014, 5:59:00 AM3/21/14
to manchester-word...@googlegroups.com
Cool. I'd love to see someone using it in action.

I've been using Roots for years and only recently started using Grunt
and Git. Unfortunately I'm still using FTP and developing locally so
this is where I see Vagrant working really well for me, particularly as
I have a laptop with Windows.

I love the way you say you can "simply rollback to the previous
version"- is it really that simple? What about database changes?

Thanks!
>> <mailto:manchester-wordpress-...@googlegroups.com>.
>> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> Rob Blake
> Director
> Losource Ltd
> The Town Hall
> St George's Street
> Hebden Bridge
> HX7 7BY
> United Kingdom
> www.losource.net
> +44 (0)7951 081480
>
> Registered in England and Wales No. 4450521
>
> VAT No. 843 0039 57
>
> The information in this email is confidential. If you are not the
> intended recipient, you must not read, use, disclose or disseminate
> that information.
>
> --
> See the group blog at http://mwug.info
>
> You received this message because you are subscribed to the Google
> Group "Manchester WordPress User Group".
>
> To post to this group, send email to
> manchester-word...@googlegroups.com
>
> For more options, visit this group at
> http://groups.google.com/group/manchester-wordpress-user-group
> ---
> You received this message because you are subscribed to the Google
> Groups "Manchester WordPress User Group" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to manchester-wordpress-...@googlegroups.com
> <mailto:manchester-wordpress-...@googlegroups.com>.

Rob Blake

unread,
Mar 21, 2014, 6:12:14 AM3/21/14
to manchester-word...@googlegroups.com
Hi Ian,

I've been following your discussions on roots discourse, I'm treb0r on
there.

Yes, rollbacks are that simple. It even makes an archive of the rolled
back release so you can pick it apart if you need to.

It's so simple that I sometimes do it just for a laugh!

If you use WP DB Migrate pro, the plug-in makes a backup of the DB every
time you do a migration, so it's dead simple to restore if necessary.

There has been discussion about adding the DB sync as a Capistrano task.
This would allow you to rollback the DB automatically at the same time
as the files, which would be perfect. I think that the best solution
would be to create a new database for each new release with a timestamp
that matches the release.

This does raise questions about how to handle maintenance mode etc, but
there are sensible ways to handle it.

Rob

Mike Little

unread,
Mar 21, 2014, 6:34:01 AM3/21/14
to Manchester WordPress User Group (MWUG)
Just a reminder for those asking about the database issue of deploying from dev/staging to live. Three solutions I have tried and know work:
1. Duplicator plugin http://wordpress.org/plugins/duplicator/
2. ICIT's DB search and replace script https://interconnectit.com/products/search-and-replace-for-wordpress-databases/
3. WP CLI (that I talked about the other month) has search and replace http://wp-cli.org/commands/search-replace/ -- Note you can do the search and replace in vagrant/mamp/wamp/xampp *before* you upload to live! (as you can with 2 above)

Mike
--
Mike Little
WordPress Specialist

Skype: mike.little.zed1
Twitter: @mikelittlezed1

Founder and Director
Zed1.com Limited
http://zed1.com/
Registered in England & Wales, no. 6745562

Ian Anderson Gray

unread,
Mar 21, 2014, 9:10:21 AM3/21/14
to manchester-word...@googlegroups.com
Thanks, Mike. These look interesting.

I'm very eager to play with WP CLI after you demonstrated it last month.
I'm waiting to get my Vagrant set up sorted so I can use it on a virtual
machine (WP CLI won't work on Windows).

I'm not sure I'd want to use it each time I upload/deploy though,
especially if I have to push changes frequently at the start. Got some
thinking to do! :-)

On 21/03/2014 10:34, Mike Little wrote:
> Just a reminder for those asking about the database issue of deploying
> from dev/staging to live. Three solutions I have tried and know work:
> 1. Duplicator plugin http://wordpress.org/plugins/duplicator/
> 2. ICIT's DB search and replace script
> https://interconnectit.com/products/search-and-replace-for-wordpress-databases/
> 3. WP CLI (that I talked about the other month) has search and replace
> http://wp-cli.org/commands/search-replace/ -- Note you can do the search
> and replace in vagrant/mamp/wamp/xampp *before* you upload to live! (as
> you can with 2 above)
>
> Mike
> --
> Mike Little
> *WordPress Specialist*
>
> Web: mikelittle.org <http://mikelittle.org>
> Skype: mike.little.zed1
> Twitter: @mikelittlezed1
> LinkedIn: linkedin.com/in/mikelittle <http://linkedin.com/in/mikelittle>
> Newsletter: http://mikelittle.org/subscribe
>
> Founder and Director
> *Zed1.com Limited*
> http://zed1.com/
> Registered in England & Wales, no. 6745562
>

Ian Anderson Gray

unread,
Mar 21, 2014, 9:11:26 AM3/21/14
to manchester-word...@googlegroups.com
Hi Rob,

That's funny- I've followed you on the Roots forum too. Some great guys
there! Great to know there are some local Roots fans.

I should probably take another look at Bedrock. Presumably it's not too
difficult to install it on a Vagrant set up, I'll have a look.

WP DB Migrate pro looks good. I'm wanting a system that allows me to
quickly and easily push changes to a staging and production server. I
may need to push changes fairly frequently at the start so I don't want
to have to do multiple search and replace stuff every time.

What are the concerns about how this would affect maintenance mode?

Ian

Rob Blake

unread,
Mar 21, 2014, 9:31:33 AM3/21/14
to manchester-word...@googlegroups.com
Hi Ian,

WP DB Migrate Pro is perfect because it handles the find and replace
during the migration, and then it remembers the settings as a profile so
you only need to configure it the first time you use it on a project.
After that, it's one click to pull and push the DB, including the find
and replace and the media files.

It even works on serialized data!

Although I do tinker with VVV, I use a vanilla Virtualbox setup running
Debian for most of my development work, mainly because I usually deploy
to Debian too.

In my experience, getting bedrock setup for the first time is a serious
challenge, but once up and running it gets easier, particularly when you
know how to get the remote servers configured.

I've managed to get it going so please feel free to drop me a line if
you have any questions.

Maybe I should do a talk about it at MWUG - I'd be a bit nervous though ;-).

The questions about maintenance mode arise when you start doing clever
stuff with the DB - if you take a copy of the production DB so you can
work on your local dev box, it may be that somebody leaves a comment or
a client posts some new content before you deploy back to production. In
which case, those changes would be lost.

I've been doing a lot of thinking about this recently, and I don't think
it's really practical to merge databases. I've come to the conclusion
that the best approach is to agree a weekly slot with the client for
scheduled down time. That way you can put WP into maintenance mode and
take a copy of the DB safe in the knowledge that nobody is going to be
able to add anything while you're working on it. Once the changes have
been deployed and the DB migrated, you can take the site out of
maintenance mode.

This approach seems to work well and the clients get a sense that they
are actually getting something for their money, if they pay for maintenance!

Hope that makes sense!

Regards,

Rob

Rob Blake

unread,
Mar 21, 2014, 9:45:19 AM3/21/14
to manchester-word...@googlegroups.com
Hi Ian,

..and I forgot to mention that it is possible to select which MySQL
tables get migrated, so it is possible to update just what you need and
forget about the maintenance mode stuff. That approach makes me nervous
though.

Rob

Perry

unread,
Mar 21, 2014, 9:58:15 AM3/21/14
to manchester-word...@googlegroups.com
Wow, Roots and WordPress Stack look great.

Thanks for sharing - can't believe I haven't come across these before (I've been faffing around with a DIY Boostrap parent theme and using Varying Vagrant Vagrants to date).

Perry
>>>>>>    For more options, visit this group at
>>>>>> http://groups.google.com/group/manchester-wordpress-user-group
>>>>>> ---
>>>>>> You received this message because you are subscribed to the Google
>>>>>> Groups "Manchester WordPress User Group" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>> send
>>>>>> an email to
>>>>>>
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>> --
>>>>> Rob Blake
>>>>> Director
>>>>> Losource Ltd
>>>>> The Town Hall
>>>>> St George's Street
>>>>> Hebden Bridge
>>>>> HX7 7BY
>>>>> United Kingdom
>>>>> www.losource.net
>>>>> +44 (0)7951 081480
>>>>>
>>>>> Registered in England and Wales No. 4450521
>>>>>
>>>>> VAT No. 843 0039 57
>>>>>
>>>>> The information in this email is confidential.  If you are not the
>>>>> intended recipient, you must not read,  use, disclose or disseminate
>>>>> that information.
>>>>>
>>>>> --
>>>>> See the group blog at http://mwug.info
>>>>>    You received this message because you are subscribed to the Google
>>>>> Group "Manchester WordPress User Group".
>>>>>    To post to this group, send email to
>>>>>    For more options, visit this group at
>>>>> http://groups.google.com/group/manchester-wordpress-user-group
>>>>> ---
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Manchester WordPress User Group" group.
>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>> send
>>>>> an email to

Ian Anderson Gray

unread,
Mar 23, 2014, 5:42:12 PM3/23/14
to manchester-word...@googlegroups.com
Hi Rob,

Responding inline...

On 21/03/2014 13:31, Rob Blake wrote:
> Hi Ian,
>
> WP DB Migrate Pro is perfect because it handles the find and replace
> during the migration, and then it remembers the settings as a profile so
> you only need to configure it the first time you use it on a project.
> After that, it's one click to pull and push the DB, including the find
> and replace and the media files.
>
> It even works on serialized data!

Just looked at the video walkthrough and I'm excited- it looks perfect.
I've used the tools with InfiniteWP, but this looks so simple and great
that it just works with the database. I'm still relying on FTP at the
moment, but the next stage is to use Git or Capistrano to push local
changes to a staging/production site. I'll have to look at the screen
cast from Roots on that again. Just one question on this- does WP DB
Migrate Pro also migrate media files? I think you said it did and that
would make sense. Would that work with Roots since the media files are
in a different folder?

>
> Although I do tinker with VVV, I use a vanilla Virtualbox setup running
> Debian for most of my development work, mainly because I usually deploy
> to Debian too.
>
Sounds like you're comfortable with server management. I've
traditionally left it to my host (they offer a fab fully managed service
for our virtual server) basically because I don't have the time or
expertise for that. I'd love to learn though- but is a case of focussing
on the priorities. My host uses CENTOS, which makes we wonder (since you
mention Debian), does the specific flavour of the OS matter hugely when
it comes to local development? I was looking to try and have exactly the
same environment locally as my server, but that's going to be tricky I
think. Ubuntu is probably ok is it not?

> In my experience, getting bedrock setup for the first time is a serious
> challenge, but once up and running it gets easier, particularly when you
> know how to get the remote servers configured.
>
Oh dear, that doesn't sound good. I've already spent many many wasted
days trying to sort Vagrant out and I don't think I can cope with any
more failures! Sounds like it has been worth it for you. My concern with
Vagrant is that it doesn't always sound robust and bug free. It seems to
take ages to do the first Vagrant Up and then I worry about something
going wrong a few weeks down the line and me losing everything.

> I've managed to get it going so please feel free to drop me a line if
> you have any questions.
>
Thanks, would be great. Do you come to MWUG regularly? I think you're
based North of Manchester, but if you ever find yourself south on the
last Friday of a month, then you'd be really welcome at a co-workers
event I organise- Cheadle Jelly- http://cheadlegeeks.org/jelly/ - we
have one this Friday!

> Maybe I should do a talk about it at MWUG - I'd be a bit nervous though
> ;-).
>

Please, please do! A bit of nerves is a good thing- keeps you on the
ball! But you needn't be, because I am sure we'd all be really
interested in hearing you talk about all this!


> The questions about maintenance mode arise when you start doing clever
> stuff with the DB - if you take a copy of the production DB so you can
> work on your local dev box, it may be that somebody leaves a comment or
> a client posts some new content before you deploy back to production. In
> which case, those changes would be lost.
>
Ah, I get you! Makes sense.

> I've been doing a lot of thinking about this recently, and I don't think
> it's really practical to merge databases. I've come to the conclusion
> that the best approach is to agree a weekly slot with the client for
> scheduled down time. That way you can put WP into maintenance mode and
> take a copy of the DB safe in the knowledge that nobody is going to be
> able to add anything while you're working on it. Once the changes have
> been deployed and the DB migrated, you can take the site out of
> maintenance mode.
>
> This approach seems to work well and the clients get a sense that they
> are actually getting something for their money, if they pay for
> maintenance!
>

This is really interesting. What type of "maintenance" are you talking
about? It comes down to semantics, but we offer 3 services for our
clients' WordPress websites- fully managed hosting (basically what it
says), WordPress WebSite Management (manage/update WordPress, core,
theme, plugins, security) and maintenance (provide updates on behalf of
client eg adding/editing/deleting content etc). Would you update
plugins/themes on your local set up and then push changes to the
production site? Or do you tend to do updates locally first and then do
updates separately on the production site? As far as maintenance goes
(i.e. adding/editing posts/pages etc) I can definitely see migrating the
database being the easiest way.


Sorry, that was a bit long!

Best wishes,

Ian

ange...@gmail.com

unread,
Mar 23, 2014, 6:43:15 PM3/23/14
to manchester-word...@googlegroups.com
Hi all, long time no visit.  Hope you are all well
 
Following on from a conversation a little while ago about the most wonderful Wordpress SEO by Yoast I made the huge mistake of allowing guest posts from MyBlogGuest
 
All was cool for a while but I started getting more and more spam posts and so gave that up
 
I am now getting inundated by requests to remove links or add nofollow
 
It is actually really annoying, as it is every day.  Anyway, the long and short is I am using the above plugin to make the posts nofollow
 
I am worried I am not doing it properly though
 
Under Meta Robots Follow I am changing that to NOFOLLOW
 
However, what, if anything, do I do under Meta Robots Advanced:?
 
Also I still want Google to index the page don't I?
 
PLUS finally.... does anyone know of a plugin or way to make all my links nofollow automatically?  i.e. future and existing?
 
Isabella
 
 
 
 

Rob Blake

unread,
Mar 24, 2014, 6:19:43 AM3/24/14
to manchester-word...@googlegroups.com
Hi Ian,

On 23/03/14 21:42, Ian Anderson Gray wrote:
> Hi Rob,
>
> Responding inline...
>
> On 21/03/2014 13:31, Rob Blake wrote:
>> Hi Ian,
>>
>> WP DB Migrate Pro is perfect because it handles the find and replace
>> during the migration, and then it remembers the settings as a profile so
>> you only need to configure it the first time you use it on a project.
>> After that, it's one click to pull and push the DB, including the find
>> and replace and the media files.
>>
>> It even works on serialized data!
> Just looked at the video walkthrough and I'm excited- it looks perfect.
> I've used the tools with InfiniteWP, but this looks so simple and great
> that it just works with the database. I'm still relying on FTP at the
> moment, but the next stage is to use Git or Capistrano to push local
> changes to a staging/production site. I'll have to look at the screen
> cast from Roots on that again. Just one question on this- does WP DB
> Migrate Pro also migrate media files? I think you said it did and that
> would make sense. Would that work with Roots since the media files are
> in a different folder?
>
Yes it does media files, and it works with roots and bedrock. I've had
no problems in that department at all.

>> Although I do tinker with VVV, I use a vanilla Virtualbox setup running
>> Debian for most of my development work, mainly because I usually deploy
>> to Debian too.
>>
> Sounds like you're comfortable with server management. I've
> traditionally left it to my host (they offer a fab fully managed service
> for our virtual server) basically because I don't have the time or
> expertise for that. I'd love to learn though- but is a case of focussing
> on the priorities. My host uses CENTOS, which makes we wonder (since you
> mention Debian), does the specific flavour of the OS matter hugely when
> it comes to local development? I was looking to try and have exactly the
> same environment locally as my server, but that's going to be tricky I
> think. Ubuntu is probably ok is it not?
Although you can probably get away with it most of the time, using
different distros for dev and production is not a good idea. Like you, I
always go for exactly the same distro and version across dev stage and
production. I've been using Debian to host websites for over 15 years
and it has not let me down even once. Having said that, I think Ubuntu
is slowly emerging as the reference platform for Wordpress, and I'm
considering making the change. The next version (14.04) has Nginx in the
main repo and I'm thinking of changing over to that too. If only to keep
up with the cool kids ;-).

>> In my experience, getting bedrock setup for the first time is a serious
>> challenge, but once up and running it gets easier, particularly when you
>> know how to get the remote servers configured.
>>
> Oh dear, that doesn't sound good. I've already spent many many wasted
> days trying to sort Vagrant out and I don't think I can cope with any
> more failures! Sounds like it has been worth it for you. My concern with
> Vagrant is that it doesn't always sound robust and bug free. It seems to
> take ages to do the first Vagrant Up and then I worry about something
> going wrong a few weeks down the line and me losing everything.

I think Vagrant comes in to it's own when you have larger teams who need
to be able to provision VMs quickly. I prefer just to get a single copy
of Debian running in plain old Virtualbox. I use dnsmasq to point *.dev
at the Virtualbox IP on the host only network and then have an Apache
virtualhost set up for each project. Works a treat.

>
>> I've managed to get it going so please feel free to drop me a line if
>> you have any questions.
>>
> Thanks, would be great. Do you come to MWUG regularly? I think you're
> based North of Manchester, but if you ever find yourself south on the
> last Friday of a month, then you'd be really welcome at a co-workers
> event I organise- Cheadle Jelly- http://cheadlegeeks.org/jelly/ - we
> have one this Friday!
I've been to a few MWUGs and intend on coming to lots more. To be honest
it was trip to MWUG that finally opened my eyes to the wonder of
WordPress. I have a young child so it's not always possible to get out.
I'm off away this Friday but it would be nice to come over sometime.

>> Maybe I should do a talk about it at MWUG - I'd be a bit nervous though
>> ;-).
>>
> Please, please do! A bit of nerves is a good thing- keeps you on the
> ball! But you needn't be, because I am sure we'd all be really
> interested in hearing you talk about all this!

Well, we'll see what Mike thinks. I might do it.
By maintenance I mean upgrading core and plug-ins, and making changes as
required. This is where bedrock really shines. I upgrade locally and
test it, then deploy to stage and test it. When happy it works properly,
I deploy to production, safe in the knowledge I can always rollback if
necessary.

> Sorry, that was a bit long!

No worries!

Regards,

Rob

Andrew Disley

unread,
Mar 25, 2014, 6:16:13 AM3/25/14
to manchester-word...@googlegroups.com
Hey Isabella

Sounds like it’s hyperlinks you’ll need to apply the rel attribute not on the page meta.

You’ll want to add rel="nofollow" on external links.



Andrew Disley
Freelance Front-end Web Developer

07921040857

http://needhq.com/ Need helps companies find freelancers fast
Reply all
Reply to author
Forward
0 new messages