Slide 1

Slide 1 text

Moving to WordPress Michael C. Neel [email protected] @vinull

Slide 2

Slide 2 text

GameMarx.com • Video Game News & Reviews • Xbox Indies Game Database • Multiple Podcasts • Videos (hosted at Blip.TV)

Slide 3

Slide 3 text

New Focus • Developer Content Focused • No Reviews • Game Database moved: xboxindies.com • Videos Hosted at Youtube • Single Podcast • Easy to update!

Slide 4

Slide 4 text

Design #1 • Looks nice if your content fits • Sliders and Thumbnails = more work • Design is easy to break • Better suited for mostly static company website • So we’ll use it at funcworks.com!

Slide 5

Slide 5 text

Design #2 • Long page format better for our content to fit • Support for reviews in WP • Still a need for images and a slider • Customizing turned out to be time consuming

Slide 6

Slide 6 text

Design #3 • No need for post thumbnails, but can use them • Simple, mostly text design • Focus on the content • Customizations not too hard • Total spent on designs < $100 • ThemeForest.net

Slide 7

Slide 7 text

Logo Problems

Slide 8

Slide 8 text

Final Design • No special need for content formatting • Simple, flat navigation • Works with infinite scrolling • Easy access to social links and RSS • Changes made via Child Theme • Took so long, WP now supports YT!

Slide 9

Slide 9 text

Moving Content • Simplest is the Best: RSS Importer • Provided by WordPress: Tools -> Import • Keeps Date • Urls Reset (that’s a good thing) • Easy (to me with a basic WP API understanding) to modify: • Single File • Added Import to Author • Added Import to Category • Added Import Podcasts • All were dirty hacks then deleted! • Setup .htaccess 301 Redirects Redirect 301 /reviews/63/home-run-challenged.aspx http://www.gamemarx.com/2011/01/931/home-run-challenged/

Slide 10

Slide 10 text

Moving Comments Or how I screwed up something that should have been simple • Already Used Disqus • Disqus Migration File – list of urls old -> new • Disqus WordPress Plugin does the rest • Or it would have if I didn’t mess up the .htaccess: http://www.gamemarx.com/2011/01/931/home-run-challenged/ http://www.gamemarx.com/2011/1/931/home-run-challenged/ • WordPress is okay with either! Not good for SEO • Rewrite rule to enforce standard: RewriteRule ([0-9][0-9][0-9][0-9])/([0-9])/(.*)$ /$1/0$2/$3 [R=301,L] • Disqus also suggests other content on your site • You can opt in to ads or related content on other sites • Social [Share This] Links

Slide 11

Slide 11 text

Goodbye Feedburner • Step 1: Set Feedburner URL to New Feed • Step 2: Delete Feedburner Feed • Step 3: When asked, select “30 Day Redirection” • A 301 Redirect will be sent to the new feed for 30 days • After 30 days, a “This Feed Has Moved” post will show for 30 more days

Slide 12

Slide 12 text

Plugins: Jetpack • WordPress.com features for self hosted WordPress • Auto post to social media: twitter, facebook • Infinite Scrolling (required theme modification) • Basic Stats • Not Using (but cool) • VaultPress – Site Backups (Paid Service) • Email Subscriptions to Posts and Comments • Social Sharing (done by Disqus for GameMarx) • Contact Form (will set this up) • Much More!

Slide 13

Slide 13 text

Plugins: Blubrry PowerPress • Only option for podcasts (trust me) • Supports multiple podcasts, by category • Free Stats (provided you host ads from Blubrry, and only Blubrry) • Paid Services $5/mo or $50/yr • Best Ever Podcast Comment: “I'm sorry you were not please with the level of support I provided you, but I believe I did my best to answer the questions based on the information you gave me. I'm not a Microsoft services user, so I was unaware of Microsoft Azure includes a CDN service. Sorry. My wife is a C# developer and has explained the Azure service to me, I now understand it is Microsoft's answer to Amazon Web Services. I'm quite aware of how Amazon services work and it works quite well with media podcast hosting. Again, sorry your not pleased with the support I provided you on the forum. The fix you provided will be included in the next release of PowerPress, possibly released tonight.”

Slide 14

Slide 14 text

Plugins: Other • Google Analytics (not used, added to theme customization) • Google XML Sitemaps – generates XML sitemap for search engines • WP No Category Base – removes “/category/” prefix: “/category/videos/lets-play” -> “/videos/lets-play” • Cache Images / Bulk Move / Bulk Delete – good for migration tasks • KISS! Plugins can hurt performance (page load times)! • Delete (don’t just deactivate) unused plugins

Slide 15

Slide 15 text

Plugins: Custom • YouTube Sink – Import YouTube Videos as Posts • The Old Reader – Import Shared Stories as Draft Post • Custom Social Widget – Avoid Theme Styling Icons from fontello.com • Setup “real” Cron Job for scheduled posts and imports • wp-config.php define('DISABLE_WP_CRON', true); • Ping Feature in Hosting Control Panel (Bluehost) • Ping the url www.sitename.com/wp-cron.php?doing_wp_cron

Slide 16

Slide 16 text

Code: Simple Plugin & Widget

Slide 17

Slide 17 text

Surprise! • Jetpack plugin breaks if you change the domain name dev.gamemarx.com -> www.gamemarx.com • Getting rid of all references to “dev” required manual MySQL • WP_Query has different post_status defaults when used as a logged in user versus called during a cron job, resulting in different posts returned for the same query

Slide 18

Slide 18 text

Other Tools & Resources • Web IDE: c9.io • Project Management: Trello.com • Professional WordPress Design and Development 2nd Edition Brad Williams, David Damstra, Hal Stern Wrox Press • Codex • WordPress StackExchange