The WordPress Post Editor Is Limited

I’m getting to like WordPress. It requires a minimal learning curve and comes with a butt-load of extensions, templates and upgrade features. But one thing I really don’t like is trying to write lengthy posts in the WordPress Editor It’s okay for small posts but doesn’t have the features I’m used to for longer posts. So, with it, I end up spending time formatting and proofreading content rather than creating it. Okay, to be fair, proofreading is something I still have to do but it just seems easier in a familiar environment.

The builtin editor has two modes: visual and standard. Both modes lack features of a common editor like split-screen, bookmarks, and spell checking. Additionally good editors (I use emacs) will validate XHTML and suggest possible elements. The visual mode has the same problem as all WYSIWIG editors; it gives you a set of buttons to insert SGML elements, in this case XHTML, but doing something intricate still requires one to traverse a menu hierachy for the feature or a deeper understanding of XHTML or both.

And, while not necessary, it is useful to have some understanding of CSS to create/tune style sheet of the theme. I just started using WP 3.0 and love the Twenty Ten theme. But I always tweak something for my personal preferences.

The standard mode is more what I’m used to but doesn’t do SGML syntax checking. So you just have to hit Update and, in another browser tab/window, refresh to see the rendering. If the page renders okay, you’re done. If not then you need to visually inspect the lines in the editor to diagnose the problem.

When I first wrote a long post, I ended up cut-and-pasting it into a text file, using emacs to debug the problem, and then pasting back into the builtin editor. The problem with that is the builtin editor cooks the input with several proprietary enhancements, including wptexturizing and automatic paragraphs, so valid XHTML is not rendered correctly.

To get around this, I found Raw HTML that allows me to disable these extensions. All XHTML is rendered as XHTML.

I create the posting using emacs and then use the one of the WordPress Importers to load the post. I like using ATOM RSS format, which is what Google uses, but the closest importer is a basic RSS/Dublin Core Metadata parser. It works for what I need.

Update: I just saw a typo in the post and used the built-in editor to fix it. Add search-and-replace to the list of desirable editor functions.

Leave a Reply