Postcards From My Life

Lint I find in my mind's belly-button.
  • EPK
  • Consulting
  • Resume
  • Nerd Herding
  • Talks
  • How to Plan a Website
  • Zend Framework

Archive for the ‘wordpress’ Category

« Older Entries

Setting Up a (FREE) WordPress Development Site

Wednesday, June 27th, 2012

Dear Reader,

The Problem

Most of you who read this blog are software developers. You know the importance of separate DTAP (Development, Testing, Acceptance, and Production) environments. However, not everyone understands this. I was recently at the WordPress Nashville meetup when someone mentioned having a development environment for their blog and you could here the crickets chirping. A lot of the attendees of that – and many other WordPress meetups – are not developers and may have never considered the need for a development area, after all, they don’t develop, right?

Everyone however, experiments. Whether it’s a new theme or a new plugin, you really, really need someplace to test things. one of the worst thing you can do is what I do with this blog, just install things and play with them in production. You need someplace where you can try out new plugins, new ideas, new themes. Not necessarily someplace where you post all your content, WordPress does a great job of allowing you to test things out content-wise before committing.

Development systems used to mean having your own server; as a matter of fact, I still do have one running here at the house. I do not recommend this though. It’s a gross waste of resources if you are just testing out a single blog, or even a few. You could also load WordPress on your laptop or desktop but I don’t recommend this either. To make it work though, you have to install and maintain a complete “web stack” (Apache, PHP, MySQL) This is just more software on your machine that has to be kept up to date.

There is a solution though, actually, I’ll present you with two. One for PHP developers who know what they are doing and want control, and one for regular bloggers who just want someplace to test plugins and themes before pushing them live. In both cases though, the services are free.

The Developer’s Solution

If you know what an ssh key is, and you understand source code control systems, then the solution you want is phpcloud.com. it’s a free service from Zend that is specifically designed for developers. phpcloud.com is a cloud-based development hosting. They host your project that you are working on, not the ones in production. You can’t use phpcloud.com for production systems. (and by can’t I don’t mean it’s against their ToS, I mean it won’t work. it’s not designed for that.)

Getting setup is easy.

  • Create an account. Find me on twitter if you need a beta invite and don’t know how to get one.
  • Create a Container.
  • Create an application inside that container. At this point, you have the option of selecting what kind of application, select WordPress.
  • Using git, clone the application to your local machine.
  • Code or experiment, commit, push, test, rinse repeat.

Again, this is a developer solution. I left out a lot of small details like setting up keys, etc. The docs tell you how to do that but if you aren’t familiar with the concepts, . You wouldn’t play with a jackhammer just because you thought ti was pretty, don’t play with tools like phpcloud.com unless you understand them.

Using phpcloud.com you can install themes, plugins, hack the core, (don’t you dare) or do just about anything else. To install plugins, you unpack them locally in the plugins directory, commit them to the repo and push. Then go into your test area and activate them. It’s not quite as simple as using the built-in installer but you know the saying “with great power…”.

Once you have tested a plugin, theme, widget or idea and know that it works properly, feel free to install in production knowing that you’ve done your due diligence.

I will mention one downside of phpcloud.com for WordPress developers. The automatic install and upgrade system will not work. You can try, you can fiddle with permissions all you want but at the end of the day, it’s just not going to work. Boaz and the team are aware of this shortcoming and it’s on their roadmap to fix.

The Blogger’s Solution

Ok, if you aren’t a developer, there’s still a way for you to get a free development area and it’s still important for you to test thing before you start mucking around with your production system. For you non-developers, use the free offering from my friends over at phpfog.com. Like phpcloud.com, there are limits to what you can do with the free offering but you should be able to get up and running with the free offering. The main limit you will hit is the 20MB space limit on your database. If you like phpfog.com, you may want to consider either setting up a pay account or moving all your hosting over to them. If you do the latter though, don’t just use your testing area as your new production area. If you do, you are really missing the point of this post.

  • Create an account at phpfog.com
  • Once in, select your “Shared Cloud”. (There is a button for it.)
  • Create an app in your shared cloud.
  • Select WordPress
  • Answer the questions.
    One of the questions is what domain name to use. If you are not familiar with DNS settings, use a phpfog.com subdomain. It’s easier that way. If you do understand DNS and know what you are doing, you can setup test.yourdomain.com or beta.yourdomain.com or something like that.
  • Be patient. No matter what it says, it can take up to five minutes for your app to be created.

Now you can begin installing plugins, themes, and widgets. If you are working with a developer, they can setup their ssh keys and get to the source code. Unlike phpcloud.com you can use WordPress’ automatic install and update tools to keep your test site up to date.

Wrap-Up

No matter which way you go – phpcloud.com, phpfog.com, or some other solution – every WordPress blogger needs to have a development area that is wholly separate from your production environment. This means don’t just install another instance of WordPress on your production server and call it test. It needs to be separate from your production server.

In this post we’ve discussed two solutions that you can use to get a test system up and running for free but there are other ways to accomplish this. The takeaway is not to use one of these services but to get a test system setup and use that for all your experimenting.

Until next time,
I <3 |<
=C=

Photo Credit: Huasonic
Released under a Creative Commons license.

Tags: Blogging, PHP, phpcloud.com, phpfog.com, wordpress, zend
Posted in wordpress | 1 Comment »

 

Ecommerce in WordPress

Monday, December 20th, 2010

Dear Reader,

The Problem

Regular readers know that back in November I put on a one day virtual conference titled Day Camp 4 Developers. Part of the deal was that all ticket holders got free copies of the recordings. It sounds like such a simple thing; just put them up for download, right? Not really. Let’s look at the actual requirements.

  1. Shopping cart to allow me to eventually sell the videos.
  2. A way to let my existing ticket holders “buy” them for free. (Coupon codes)
  3. A way to keep the real location of the files hidden so people don’t just go download them.

Those were the biggest items. Beyond that I was willing to either sacrifice or code it myself.

The Solution

I looked at a lot of shopping cart solutions ranging from the horrible to the expensive. I really wanted to go the open source route, not because I’m cheap or don’t believe in paying people for their work but I knew there would be needs I had that I would have to code myself. In that case, I wanted to be able to contribute back to the project. (Assuming they wanted the code, I wrote)

I ended up with eShop. It’s good, not great. It meets all 3 requirements, although I did have to help it along in a couple of places. I looked at the code, again, good, not great. It amazes me that after watching the PHP community scream “filter input, escape output!” so much that some developers still don’t. I had to add some filtering and a lot of escaping to get the results I wanted.

In the end though, it did the job. Like the other tools I used for DC4D, I could have written a more tailored solution myself, however, it would have take me a lot longer to get the job done and get the video’s up.

Side Note: I am so used to community projects being the norm that it surprises me when I find a project that is not community based. eShop is a single developer building a project. There is no repo for eShop and no way to submit patches other than just email them to the author. He has a forum for the project and it’s active enough to let me know people are using the product but there is no developer community working with him to mantain and enhance the project. It makes me sad. For those interested, no, he did not accept my patches but only because he didn’t want to take the project in that direction. I eventually forked it for my own use because I’ve modified it enough now that upgrading to future versions is a pain.

Conclusion

WordPress (“The word press” as one of the lovely and talented Kathy’s bosses used to call it) was never designed for ecommerce. Any solution is a bolt-on and feels like it. However, eShop is a good solution if your needs are modest.

Until next time,
I <3 |<
=C=

Tags: daycamp4developers, ecommerce, eshop, opensource, wordpress
Posted in wordpress | 3 Comments »

 

WordPress Training. Who needs it?

Friday, March 19th, 2010

Dear Reader,

[DISCLOSURE: I work with php|architect. php|architect has a WordPress Essentials class]

I’ve been using WordPress since 2005 when I started blogging. I used to write plugins for it back in the 1.5/1.6 days and just recently stepped back into that role and wrote a plugin that should be announced soon. (Super secret, can’t talk about it yet, etc.) As a side note, writing a plugin has come a long way! the new way hooks and options page stuff is pretty cool and once you understand it, makes simple plugins real easy.

Is training on WordPress necessary?

Has WordPress become so simple that it requires no training? Honestly, if you are a PHP developer already, yes, it is that simple. Ok, so the code isn’t OO and that drives a lot of purists up the wall but at the end of the day, it’s functional and that’s what is important. Like PHP itself, WordPress is a tool that lets you get the job done.

In 5 years of blogging I can’t remember not being able to bend WordPress to my will. The problem I have as a developer these days is that there are so many plugins for it that it’s hard to come up with an idea that has not been done and done well. (Again, I just finished one that I’m real proud of but can’t talk about it yet…squeeeeeeeeee)

However, I do have a lot of friends who blog but are not PHP programmers. Answering for those people, I would say, yes, it does require a bit of training and assistance to really get the most out of WordPress. As I mentioned before there are a lot of extensions to choose from. Currently wordpress.org lists 8,792 plugins available and not all authors put their plugins in that repository. For any given idea, a developer should be able to easily flip through the available plugins, select one or two, review the code and make sure it’s well written and get the best extension for the job up and running. Non-developers however, don’t always have the knowledge to select the best. WordPress.org tries to help with ratings and telling you what version it was developed for and tested on but those don’t always ensure a smooth install.

So where do you get help with WordPress?

Even though I’ve had my hands deep insides the bowels of WordPress many times in the past five years, even so, there are times I still have to turn to people for help. There are also times when people I know turn to me for help and I just don’t have the bandwidth to help. In both of these situations, I usually end up turning to a short list of friends.

Mitch Canter
Mitch “studionashvegas” Canter has been my WordPress go-to guy for a few years now for non-coding issues. He’s a wealth of knowledge on things like the best plugins to use, themeing issues and jsut about anything WordPress related.
Aaron Brazell
I will admit that Aaron and I only know each other online and have only recently met. However, his depth of technical knowledge on WordPress is fast making him one of my regulars to bug with questions. He is also the author of WordPress Bible, an essential tome if you are serious about programming for WordPress.

What about WordPress training courses?

Honestly, there are only two places I can recommend for training. Which one you choose depends largely on how you learn.

If you learn best by watching videos, you will want to check out lynda.com. I’ve never used them but the lovely and talented Kathy has had an account there for a while and likes their content. Their courses are well put together and informative.

If you learn best by live instruction, php|architect has a course, “WordPress Essentials” taught by Steve Fisher. I helped design this course so I am partial to it. It’s for non-PHP developers who want to squeeze the most out of their blogs.

Wrapping it up

So to answer the question I started with, is training on WordPress really necessary, the answer has to be “It depends”. WordPress is a great platform and for the most part, a forgiving platform. So if you have the time and are willing to make the mistakes and recover, no training is not necessary. However, if your passion is your blog and not tinkering with your blog then yes, a training course will help you get going quickly, avoid the potholes and spend more time on what is important to you.

Until next time,
I <3 |<

=C=

Tags: aaron brazell, affiliate program, mitch canter, plugins, steve fisher, wordpress
Posted in wordpress | 6 Comments »

 

Upgrading WordPress

Sunday, September 28th, 2008

Dear Reader,

This is really a note for me because I keep forgetting things.

  1. Unpack latest copy of wordpress in a work directory
  2. Rename wordpress directory to blog
  3. Rename blog directory to blog.original
  4. Move work/blog to main directory
  5. Copy blog.original/wp-content/plugins to blog/wp-content/plugins
  6. Copy blog.original/wp-content/themes to blog/wp-content/themes
  7. Copy blog.original/wp-content/uploads to blog/wp-content/uploads
  8. Copy blog.original/wp-config.php to blog/wp-config.php
  9. Copy blog.original/.htaccess to blog/.htaccess (this is the step I keep forgetting
  10. Go to blog admin page and check for database upgrade
  11. Check site for working theme and internal links

Until next time,
(l)(k)(bunny)
=C=

Tags: upgrade, wordpress
Posted in wordpress | 10 Comments »

 

Join me on Small Business Trends Radio

Saturday, May 3rd, 2008

Dear Reader,

Tuesday, May 6th, 2008 at 12:30 CT, I will be the guest on Small Business Trends Radio. You can listen live or download the episode for later listening.

I’ll be discussion all things WordPress.

It should be a rocking good time and I’d love to see both of my readers tune in. So drop by and give us a listen.

=C=

Tags: Cal Evans, podcasting, wordpress
Posted in Me, elsewhere on the Web, podcasting, wordpress | Comments Off

 
« Older Entries
  • Friends of mine

  • My Latest Book


    Avoiding a Goat Rodeo

  • Follow me on twitter!

  • RSS PHP Podcasts

    • Episode 7: Web Sockets Are Fast
    • Better Documentation for PHP internals – Lately in PHP podcast episode 35
    • Episode 31: Feline Tooth Extraction
    • Episode #2 – Adam Culp
    • Episode 6: PSR-X and the Mexican Standoff
    • Episode 109: Typescript and a bit more…
    • A Better PHP Feature Voting Process – Lately in PHP podcast episode 34
    • Episode 30: It’s Episode 30, you guys
    • PHP Innovation Award Winner of 2012 – Lately in PHP podcast episode 33
    • Episode 29: Snappy Answers to Stupid Questions

  • Me, elsewhere on the Web

    • Best web design company
    • Cal Evans Dot Com
    • Cyrano’s Apprentice
    • Evans Internet Construction Company
    • My Life as a Child
    • PHP Podcasts

  • Categories

    • Apache
    • BlogBling
    • Blogging
    • Book Review
    • codeworks
    • Entertainment
    • Entrepreneurship
    • Flex
    • Humor
    • JavaScript
    • Long Form
    • Management
    • Marketing
    • Me, elsewhere on the Web
    • PHP
    • podcasting
    • Programming
    • SQL
    • Technology
    • Web 2.0
    • wordpress
    • WordPress Plugins
    • writing
    • zend framework


Postcards From My Life is proudly powered by WordPress
Entries (RSS) and Comments (RSS).