WordPress Security (upto WordPress 2.6)

Hi Everyone,

I had the opportunity to present “Safety First!,” a presentation about security for WordPress at the WordCamp Fraser Valley event on Wednesday, July 16th.

Thank you to OpenOffice and SlideShare, you can view my slides below.

And thank you to Gary from BlueFur for this video of my presentation. The audio is a little poor and my voice is pretty monotone (sorry!) so I kind of got a headache after watching the video again. I wouldn’t suggest watching the full 30 minutes in one shot. BUT it’s good for you (like medicine), so check it out and let me know your thoughts!

To be completely honest, my life leading up to the event was a little busy, I wasn’t able to fully prepare the delivery. Otherwise I would have been more interactive and summarized some points in order to make time for Q&A. On the flipside, I am glad a lot of people took notes throughout the presentation and are implementing the tips on their blogs.

If you have any questions please feel free to post in the comments here.

-k.s.

WordPress Weekly Roundup - June 13, 2008

Hey Everyone,

Here’s what I found to be interesting in the world of WordPress this week:

CanadaPlanet WordPress Canada
To showcase Canada’s variety of knowledgeable and enthusiastic WordPress bloggers and developers, Peter Keung has launched Planet WordPress Canada, which is an aggregation of posts from various blogs (this one included) on the topic of WP and all things related.

Draft Posts Widget
How cool is this? Website developers and bloggers are always looking for ways to keep their audiences anticipating for more. With the Draft Posts Widget, you can do just that. It will show a list of your draft posts so that people can see what’s coming up on your blog and they can anticipate your upcoming writings. I really like this idea and will start using it on a few sites I own.

WordPress Security Issues
According to TechCrunch, WordPress has a tonne of vulnerabilities and has been the object of attack by numerous hackers, especially in the last few weeks. Some people have responded in the comments that the current (2.5+) version is not affected, but still something to be checked out for those rocking the old versions.

BuddyPress

BuddyPress Theme Previews
BuddyPress is the upcoming social network platform based on WordPress Mu. Developer Andy Peatling has provided a preview of how it will look on his website. I’m really excited about this product because it will integrate WordPress blogs, BuddyPress discussion forum, and social networking.

LyndaWordPress Essential Training
For those of you who are new to WordPress and would like to start a blog on WordPress.com, you can take advantage of new WordPress.com blog tutorials on Lynda.com. There are a few preview tutorials, but in order to view the whole collection you have to be a member.

ComicPress - WordPress theme for Artists, Cartoonists, etc.
A great new theme has been released by Tyler Martin called Comic Press, which, combined with the ComicPress Manager plugin, allows you to maintain a WordPress blog that exclusively showcases your comics, artwork, or any other type of images. It is a very nice tool for people who want to have a blog along with a daily illustration or comic.

God FTW!
Apparently, God (the Christian version at least) has a blog, and S/he’s using WordPress.

That’s all for now - have a great weekend :D

-k.s.

WordPress Camp Fraser Valley

WordPress

Hey Everyone,

So after the success of WordCamp Vancouver hosted at the Network Hub in Downtown Vancouver by Tazzu Networking Forums, somebody somewhere was thinking, “if Vancouver can pull this off, why not Langley?” Well if you missed out last time, or want to learn and network with fellow WordPress bloggers and developers, join us on July 16th for WordCamp Fraser Valley, hosted by BlueFur Web Hosting at the Cascades Casino in Langley. Like WordCamp Vancouver, this is a mini-version of WordCamps held in other major cities (spanning over a day or two), but it still promises to be a fun evening of learning and inspiration.

Here’s the shortlist of cool presenters: Dr. Raul Pacheco, Rebecca Bollwitt, John Chow, and Yours Truly. At WordPress Vancouver I presented on how to use WordPress as a CMS and create catalogues and mashups with the help of custom fields, and the feedback from the audience was great. However, I do think it was a little advanced for some of the blogging audience and so I’ve got a simpler (but still technical) presentation planned for WP Fraser Valley. I’ll be posting more details about my presentations in the coming weeks but in the meanwhile, click here to register for the event!-

**********
UPDATE

WordPress Fraser Valley was a success! You can read all about it at these links:

http://www.miss604.com/2008/07/wordcamp … eblog.html
http://www.johnchow.com/wordcamp-fraser-valley/
http://hummingbird604.com/2008/07/17/wo … aftermath/
http://www.thomasso.com/?p=738
http://sixty4media.com/2008/07/16/hangi … er-valley/
http://purpledragonfly.playaparadise.co … word-camp/
http://www.savings-naturally.com/wordpress/?p=168


Photo: 4EverYoung

Question: Will WordPress Bring Me Traffic?

My Answer:
Well, it is not only the content management system or blogging platform that will bring you traffic. However, WordPress will make your posts have better links, and with the tagging and category links it will probably give you better ranking in the search engines. Also, everytime you post, WP will send notifications (pings) to search engines and blog trackers, which will notify them you have new content and give better ranking to your “fresh” content. If you have better ranking for terms that are searched often in the search engines, you will get more traffic. WP alone is not going to drive people to your site - the content of your site will do that - but if you’re asking me “is WordPress the best tool for me to use to make a search engine optimized site?” I would say yes. Definitely.

There are many factors in bringing your site traffic and keeping the traffic. This includes having great search engine ranking, having links to your site from reputable websites, having unique content that is valuable to your visitors, and creating a social buzz about your site through social media and bookmarking channels. WP can help you with these to various extents, but none of it is automated (at least not yet!). You need to get the links, make and promote the unique content, join and be active on the social networks, etc.

—-
Thanks to Taylor for the question.

Related: 11 Most Important WordPress Plugins to Build Traffic [FinancialJesus.com]

WordPress 2.5.1 Admin Panel CSS Fix

Hi Everyone,

You’ve probably noticed that in the new WordPress 2.5 series Admin Panel, the navigation menu items (Write, Manage, Design, Comments) are split from the option / settings menus (Settings, Plugins, Users). Personally I don’t like it separated, but I haven’t yet had time to fix it.

What I’ve done in the meanwhile is make the sizes same of the links on the left and the links on the right. The way to do this is:

In your wp-admin/wp-admin.css file, replace:

#wphead a, #dashmenu a, #adminmenu a, #submenu a, #sidemenu a {
text-decoration: none;
}

with

#wphead a, #dashmenu a {
text-decoration: none; }

#adminmenu a, #submenu a, #sidemenu a {
text-decoration: none;
font-size: 12pt;
}

That’s it - now the links on the left and right will be the same size. I like it better because I check the “Settings” and “Plugins” almost as often as I write a post or manage comments.

Also if you want to make the sub-navigation links (the ones in the white, below the navigation links) a different size, like maybe 11pt, use this:

#wphead a, #dashmenu a, #adminmenu a, #submenu a {
text-decoration: none; }

#submenu a {
font-size: 11pt; }

#sidemenu a {
text-decoration: none;
font-size: 12pt; }

-k.s.

WordPress 2.5/2.5.1 Post Write Panel Hack - Categories Box

Hi Everyone,

— read the updates below —

If you’re using WordPress 2.5.1, and you don’t like the Categories box being underneath the post write box, and you want the box back in the sidebar, this is for you!

Screenshot:

—-

Before you start, backup your wp-admin/edit-form-advanced.php file.

After backing it up, locate the file and open it in your code/text editor and follow these steps:

Step 1) Find and delete this:

<div id="categorydiv" class="postbox <?php echo postbox_classes('categorydiv', 'post'); ?>">
<h3><?php _e('Categories') ?></h3>
<div class="inside">
 
<div id="category-adder" class="wp-hidden-children">
	<h4><a id="category-add-toggle" href="#category-add" class="hide-if-no-js" tabindex="3"><?php _e( '+ Add New Category' ); ?></a></h4>
	<p id="category-add" class="wp-hidden-child">
		<input type="text" name="newcat" id="newcat" class="form-required form-input-tip" value="<?php _e( 'New category name' ); ?>" tabindex="3" />
		<?php wp_dropdown_categories( array( 'hide_empty' => 0, 'name' => 'newcat_parent', 'orderby' => 'name', 'hierarchical' => 1, 'show_option_none' => __('Parent category'), 'tab_index' => 3 ) ); ?>
		<input type="button" id="category-add-sumbit" class="add:categorychecklist:categorydiv button" value="<?php _e( 'Add' ); ?>" tabindex="3" />
		<?php wp_nonce_field( 'add-category', '_ajax_nonce', false ); ?>
		<span id="category-ajax-response"></span>
	</p>
</div>
 
<ul id="category-tabs">
	<li class="ui-tabs-selected"><a href="#categories-all" tabindex="3"><?php _e( 'All Categories' ); ?></a></li>
	<li class="wp-no-js-hidden"><a href="#categories-pop" tabindex="3"><?php _e( 'Most Used' ); ?></a></li>
</ul>
 
<div id="categories-all" class="ui-tabs-panel">
	<ul id="categorychecklist" class="list:category categorychecklist form-no-clear">
		<?php dropdown_categories(); ?>
	</ul>
</div>
 
<div id="categories-pop" class="ui-tabs-panel" style="display: none;">
	<ul id="categorychecklist-pop" class="categorychecklist form-no-clear" >
		<?php wp_popular_terms_checklist('category'); ?>
	</ul>
</div>
 
</div>
</div>


Step 2) Find and delete this:

<div class="side-info">
<h5><?php _e('Related') ?></h5>
 
<ul>
<?php if ($post_ID): ?>
<li><a href="edit.php?p=<?php echo $post_ID ?>"><?php _e('See Comments on this Post') ?></a></li>
<?php endif; ?>
<li><a href="edit-comments.php"><?php _e('Manage All Comments') ?></a></li>
<li><a href="edit.php"><?php _e('Manage All Posts') ?></a></li>
<li><a href="categories.php"><?php _e('Manage All Categories') ?></a></li>
<li><a href="edit-tags.php"><?php _e('Manage All Tags') ?></a></li>
<li><a href="edit.php?post_status=draft"><?php _e('View Drafts'); ?></a></li>
<?php do_action('post_relatedlinks_list'); ?>
</ul>
</div>

Step 3) Find this (Don’t delete it - just find it):

<span id="autosave"></span>
</p>

Step 4) Paste this underneath:

<div class="side-info" style="margin-left: -15px;  ">
 
<div id="categorydiv" class="postbox <?php echo postbox_classes('categorydiv', 'post'); ?>" style="width: 260px;">
<h3>Categories</h3>
<div class="inside">
 
<div id="category-adder" class="wp-hidden-children" style="margin-left: -5px; ">
<h4>	<a id="category-add-toggle" href="#category-add" class="hide-if-no-js" tabindex="3"><?php _e( '+ Add New Category' ); ?></a></h4>
	<p id="category-add" class="wp-hidden-child" style="width: 250px; " >
		<input type="text" name="newcat" id="newcat" class="form-required form-input-tip" value="<?php _e( 'New category name' ); ?>" tabindex="3" style="width: 150px; " /><br />
		<?php wp_dropdown_categories( array( 'hide_empty' => 0, 'name' => 'newcat_parent', 'orderby' => 'name', 'hierarchical' => 1, 'show_option_none' => __('Parent category'), 'tab_index' => 3 ) ); ?>
		<input type="button" id="category-add-sumbit" class="add:categorychecklist:categorydiv button" value="<?php _e( 'Add' ); ?>" tabindex="3"  />
		<?php wp_nonce_field( 'add-category', '_ajax_nonce', false ); ?>
		<span id="category-ajax-response"></span>
	</p>
</div>
 
<ul id="category-tabs" style="width: 2px; ">
 
</ul>
 
<div id="categories-all" class="ui-tabs-panel"  style="height: 400px; margin: 2px; ">
	<ul id="categorychecklist" class="list:category categorychecklist form-no-clear">
		<?php dropdown_categories(); ?>
	</ul>
</div>
 
 
 
</div>
</div>
</div>

Step 5) Save (make sure your old copy was backed up).

Step 6) Login to your WP Admin and go to “Write > Post” and check it out. If you like it let me know that it worked. If not, I cannot provide support but you can still contact me at info [at] kulpreetsingh [dot] com.

Disclaimer:
This has been tested on WP 2.5.1. I am not responsible for your WP installation or for this fix. Please backup your edit-form-advanced.php file and restore it if this doesn’t work.

—-

Update:

Screencast by Rebecca Bollwitt (Miss604) on how to do the above:

—-

Update 2:

It turns out there’s a plugin that does this as well! Probably easier to manage for the non-coding population, especially because it will / should extend regardless of your version updates. It is a little different from my method, but the concept is the same. The website’s in Turkish but the plugin page is in English: http://beyn.org/sidecat/

—-

Update 3:

Peter Keung took this fix and the plugin above and made a new plugin. Thank you Peter! You can download it here: http://www.theblog.ca/wp-content/uploads/2008/05/sidecat_reloaded.txt

WordPress Suite 2009: WP Basic, WP CMS, & BuddyPress.

Hi Everyone,

The Tazzu Wordpress Camp on Wednesday was a great event, and I’ll be discussing it in detail in a day or two. However I just wanted to post a few thoughts that I had during and after the event.

I thought it was kind of ironic that originally WordPress had been built as a blogging platform, and the majority of WP users only know it from that angle. However, I have been using WP for the last two or more years for everything but blogging. I’ve been using it to design websites, make catalogues, create mashups, and I’m currently planning a WPMu Social Network (God help me if BuddyPress doesn’t come out soon!).

I think WP is supreme for blogging, but my experience highlights the uniqueness of WP as a CMS application. There are many content management systems out there. I’ve used Microsoft CMS, Drupal, Joomla, and Wordpress. I found WP to be quick to set up, easy to manipulate, and very flexible depending upon the developer’s goals. Some of the larger applications have more powerful engines that can do great things out of the box. However I think WP is so flexible and light-weight that using it has been irresistable for me.

The point of this post is to hint at the future. Over the next two years, I know WP and WPMu will start competing more head-on with the mainstream solutions out there. However, I wonder, will the concerns of the blogging community outweight the concerns of CMS developers who use WP? To whom will Automattic and the WP community give preference? At some point, for the community and for the application core, there is a fork in the road. Both paths leading out from there are great and worthy, but they are different and will be interesting to different types of audiences.

What I’d like to see is the WordPress core product splitting into two editions: WP for Blogs, and WP CMS. This way, we could grow out of the “posts” and “blogroll” terminology, and start using more website/content specific terminology. We could allow developers to not only custom sites for clients, but also custom dashboards and admin panels.  I know Matt Mullenweg hinted at his interest in the growing use of WP as a CMS during the recent WordCamp in Dallas (video), but how serious are they about it? I would love to see “WordPress Suite 2009″ of unique products, some of which are already available, each with its own focus: BBPress (forum), BuddyPress (social network), WordPress Mu (multiple blog hosting), WP CMS (websites & mashups), and the original WP Basic (blogs). I think it would help expand the WordPress brand, and provide unique solutions for all types of content developers and managers.

stay in high spirits

-k.s.

Top 5 Wordpress Wish List

Hi Everyone,

I’d encourage you to do this on your blog if you’ve got some wishes for Wordpress. They have a section on the Wordpress site called Ideas, and the community ranks them. The Automattic team works on the highest ranked ideas, but for the programmers out there who love a challenge, you can check out some of the brilliant ideas and work on them as projects for plugins. So the things below are both a wish-list and a to-do list. These can be done by a programmer and WP professional, but the product would be more solid if the community and Automattic worked on them together. Here’s my list:

1) Importing & Exporting not just by author, but by category, or time range, or tag. Today there was a an interesting post by Jeff Chandler on the long way to export by category. However, a simple plugin would be awesome. This one’s obvious and it’s already on the list… and someday it WILL be a part of WP.

2) Really custom write panel. A write panel that works like NetVibes, PageFlakes, and iGoogle. There is a plugin called Custom Write Panel, and other similar ones, but none that goes the distance (without some modifying of your own). If you could, out of the box, define templates for types of posts you write, such as Post, Announcement, Review, Update, etc. Then based on those defined templates, you can define custom form fields that you would like to fill out for each type of post. I mean this can be done with modifications, but if it came ready to go out of the box, that would rock. (Clarification: this is not the same as a page template, which defines the markup/code/design of the page. This is about the input fields and the write panel).

3) BuddyPress. This wish is coming true some day. I can’t wait. Basically it will allow you to use WP Mu with some plugins and modifications to launch a social network. It can be (and has been) done with your own mods, but BuddyPress will probably have the checks and balances someone couldn’t achieve on their own.

4) WP linked to BBPress via comments. Basic functionality: you make a post, it is posted in your BBPress-powered forum (the first post will just have the title and link to avoid duplicate content). Then, all comments on the post are made as replies to that thread in your forum. People have been working on many WP bridges with VBulletin, phpBB, IPB, SMF, etc. but you’d think the easiest to bridge would be another Automattic product. This is more on the to-do list than the wishlist because I think it’s not that complicated, just need time to do it.

5) Post Macros. Maybe there is a plugin for this I haven’t found, but basically being able to set up posting of certain content at certain intervals; being able to schedule posts; and being able to perform specific actions on posts at certain times.

What is your wishlist? :)

stay in high spirits,

-k.s.

Wordpress 2.5 / 2.5.1

This will be a short review of Wordpress, the next generation.

First of all, WP is free, simple, flexible, and scalable; and I use it for almost every website I develop. So if I have any complaints, they are far and few between. I’d have to say that there are many new features of WP that I really like, but I was surprised at the way they’ve rearranged the interface. Although I’ve always modified WP, I think many more people will start modifying it now to keep the new features but restore the old interface. Especially for someone who uses WordPress everyday, I was a little annoyed with some of the changes to the Write Panel sidebar, and the navigation all over. I can understand though, because the majority of WordPress users are not web developers or programmers, and perhaps the previous layout was overwhelming, especially for a first time blogger or even a convert from LiveJournal or Blogger. Naturally, most people resist change, but for anyone out there who was already customizing WP, you can restore most of the previous interface and functionality issues with some modifications.

I’ve started to use WP 2.5.1 on this blog, but I am still using 2.3.3 on my other sites until I have time to customize the new version, which leads me to an idea: It would be great if future WP updates were released with more details as to which are “necessary” updates (e.g. security issues, bugs) and which updates would change functions and function references throughout the product. With this information, a developer could update certain sections and keep their modifications intact.

That’s all for now. :)

stay in high spirits,

-k.s.

—————

P.S. - A few recommended posts on the topic:

10 Things You Need to Know About Wordpress (TechnoSailer)

Wordpress 2.5 Blog (Matt Mullenweg)

Why I Love Wordpress (Performancing) - Also read his previous post, “Why I Hate Wordpress 2.5″

Tazzu Wordpress Camp

Hi Everyone,

Tazzu is hosting its first Wordpress Camp on Wednesday, from 5:30 to 8:30pm at the Network Hub and I’m very happy to say I’ll be presenting on how to build a catalog or mashup site with WordPress. There are a variety of cool presentations including blogging, website development, typography, photo management, social media, and how to make money - all using WordPress.

I was very happy to see that so many people jumped on board and started to support the event with their sponsorships and promotions. I hope this is a first of many WordPress events.

stay in high spirits,

-k.s.