WordPress

It has become mandatory to use Facebook and Twitter as part of your website marketing strategy.  The development environment for both Facebook and Twitter is finally getting to a point to allow good integration among the various platforms.

This can be a formidable task for the developer/consultant as well as the client to understand how the platforms all tie into a marketing strategy.

Except for large project, we develop exclusively on WordPress for websites, and fortunately there are some great plugins to easily (almost) set up a way to PUSH or PULL content between your website and FaceBook Page and Twitter account.  The client may want to post their content on all platforms separately, but this is burdensome for most.  It is more likely they will want to post on one platform primarily and have it disseminate to the others automatically.

The first question is to ask where the client feels most comfortable publishing content.  If the spend their day on Facebook, then the solution is better to pull content from Facebook to the website.  A good plugin for this is Facebook Like Box.  This will add a like button, photo gallery and the posts as a widget.

To pull tweets I depend on Genesis – Latest Tweets.  We develop all our sites on the Genesis Framework and this is one of many great plugins included.

If the client wants to publish on their website, they will want to PUSH their data to both FB and Twitter.  I recommend WP-To-Twitter and Facebook-page-publish for these tasks (also Wordbooker).  To accomplish both of these tasks, you will need to establish an application.

If images are float left on a listing/blog page and the next item doesn’t break below the image but continues to wrap around it, you need to add a float:left and clear: both to a class in the style.css.

 

See below

 

#featured-bottom .featuredpost .post, #featured-bottom .featuredpage .page {
margin: 0 0 10px 0;
padding: 10px 0 15px 0;
border-bottom: 1px solid #333333;
    float: left;
    clear: both;
}

Gravity forms is a plugin for WordPress to build forms for surveys and mailings.  It isn’t free, but well worth the price as a very well designed product.   If  you are in the business of building websites, you inevitably will be needing to have at least a contact form on each of your sites, and having a consistent plugin on all your sites is invaluable.

Gravity will create a couple tables and allows you to easily view all form submissions and export to Excel.  You can very quickly build forms with pull down menus, radio buttons, CAPTCHA, auto responders and many other advanced features.

The developer’s version will cost you $199, which is a bit pricey, but allows you to use it on unlimited sites.

Although WordPress is the undisputed leader as a website CMS (yes, it is a CMS), “real” developers snub their noses at WordPress because it is just a “blog” and doesn’t have all the power of Drupal or Joomla.

Enter the Genesis Framework and the StudioPress suite of child themes.  I have built dozens of sites with StudioPress, and am incredibly impressed.  It is JUST what I needed to add power and consistency to my sites.

By using Genesis/StudioPress for WordPress, I get the best of both worlds, the ease of use  of the most popular platform (and there is a good reason it is), and the power and scalability of more “advanced” CMS platforms.

It isn’t free, but if you are in the business of building websites, then the nominal life-time fee for support from solid programmers, dozens of super high quality child themes, and the powerful framework and suite of plugins is well worth the price.

There are other frameworks, but Genesis has the advantage of being late in the game and building from the ground up a extremely powerful set of hooks and functions that is tightly integrated in the WordPress 3.0+ way of doing things.   The fact that it uses child themes in itself makes it far superior to frameworks such as Thesis.

Non-programmers will find the modularized structure hard to understand, but if you get over the learning curve, you’ll see the incredible power it provides.  I now build ALL my websites in Genesis, even custom sites, and am even converting my old projects to the framework so all my sites have a consistent grounding.

 

WordPress seems limited with the way it handles images (media).  I don’t see why it can’t be part of the taxonomy like posts and pages since it is stored in the wp_posts table. 

A media item is “attached” to a post if it has a value in the post_parent field.  It can only be attached to one post. 

If you have a gallery in a post and need to move them the only way to do it is via sql in the MySQL db. 

Here is the sql to update in bulk media records to a new “parent.”  You need the post ID for both the post you are moving from to the one you are moving to….

update wp_posts t1 set t1.post_parent = 713 where post_parent = 444 and post_type = ‘attachment’

This was an email posted in the wwwac.org listserv.  It’s a nice overview of the pros and cons of the “big three” open source CMSs.

WordPress is wonderful for a basic content site, especially for blogs and personal stuff. Lots of plugins to add functionality, fairly easy to use right out of the box for a person with minor technical skills. With a bit of study, one can learn how to customize it and personalize it.

I used to use Joomla, and its predecessor Mambo, after years of building custom PHP-based CMS sites.

If you need to migrate WordPress to another server, sometimes it will have a different URL. That will break all the image links in the content of the pages.

The best thing to do is do a bulk replace in MySQL.  The command is as follows

update wp_posts set post_content = replace(post_content, ‘searchURL’, ‘replaceURL’);

Sometimes you want to show future posts, likely when you have posts that are events.

<?php
// ———— added for events to show future
if(is_category(‘events’))
query_posts($query_string . ‘&order=ASC&post_status=future’);

while (have_posts()) : the_post();

if(is_category(‘events’)) {
if(strtotime($post->post_date) < time())
continue;
}
?>

Thanks Matt Varone on this function to check if the current page is a subpage.  WP should have made this a core function

http://www.mattvarone.com/wordpress/is_subpage-function/

A useful companion item is to create a template for a parent page where you only want to redirect it to the first subpage.  Sometimes you don’t want a page for the parent at all, just the children.

From WPRecipes:

http://www.wprecipes.com/wordpress-page-template-to-redirect-to-first-child-page

WordPress is an amazing product, and Fantastico Deluxe helps with the install, but there are some issues and best practices.

When installing WP using Fantastico, make sure the permissions are secure after installation.  Fantastico usually sets permissions on the public_html directory to an incorrect “755″.  Make sure they are “750.”

Make sure the wp-config.php file permissions are set to “400.”

I’ve had two sites hacked into soon after installation so this is not just an academic exercise.

Settings

  • Definitely change the permalinks.  I don’t know why they default it with a URL (?p=123) format.  You want smart names for your links. If you are going to add lots of posts, you may want to select the “Month and name” format.  If not, go to custom Structure and put in /%postname%/
  • Under media, you will likely want to uncheck the “Organize my uploads into month- and year-based folders”, unless you will have messloads of images you’ll be uploading.  Definitely check the settings for sizes of images in medium and large.  You will likely want to reduce the large to something like 800 px max.
  • Reading — Unless this is a straight blog, you’ll probably want to create a page called “home” and one called “blog” and then go to the reading panel and set the front page display to static and set the home and blog pages.


Here are some must-have plugins:

  • My Page Order — Great for setting order of pages in menu.
  • All in One SEO Pack — Most popular and robust plugin for SEO
  • Google XML Sitemaps — Will keep your sitemaps xml file up to date
  • WP Show IDs — This replaces “Reveal IDs for WP Admin” because it shows ids for custom post types also
  • List category posts — Useful if post categories are used as a taxonomy, and you want to get a list of specific categories.
  • Theme My Login — Creates a nice login page based on the active theme.
  • NextGen Gallery — The best in managing pic galleries
  • Exclude Pages from Navigation — Excludes pages if desired
  • Theme Switcher Reloaded — Great for development, allowing clients to view various themes.
  • Custom Post Type UI — This takes advantage of WP 2.9+ custom post types.
  • Members — This plugin allow the admin to manage roles for different levels of users.
  • White Label CMS –This customized the admin section.  You can minimize to the items you want the user to see.
  • CMS Tree Page View — This will insert a new menu item under page which gives a tree view of the pages.  For sites with lots of pages and subpages, this is a better way to navigate pages in the admin section.
  • Google Analyticator– There are several Google Analytics plugins, but this seems the best, which includes a nice dashboard widget/panel to view analytics from WordPress.
  • Simple CMS — This is a basic plugin that simplifies the admin page for Editors and below.  There is no way to change the settings, but it is a quick way to reduce the clutter for clients.