Categories
WordPress

Decoding a WordPress Post Title

By default, get_the_title and the_title will return the title of the current post. It’s stored in the database in plain text, however, when returned using the aforementioned functions if appears to be encoded. This means that characters such as ampersands and apostrophes will be converted to equivalents that are more HTML friendly.

Unfortunately, passing, say, this title to Twitter, via the URL, causes problems. First you have to URL encode and the mixture of the HTML encoding and the URL encoding produces a mess that Twitter simply doesn’t cope with very well.

However, the standard HTML decoding in PHP didn’t seem to work 100% with, for example, apostrophes not being decoded. After much head scratching and some frustration I found that this was due to the parameters that I was using.

The following line will correctly decode the post title to plain text…

html_entity_decode(get_the_title($post->ID),ENT_QUOTES,'UTF-8');

To then encode is to be passed via URL, then simply use this…

urlencode(html_entity_decode(get_the_title($post->ID),ENT_QUOTES,'UTF-8'));

It seems obvious now 😉

Categories
WordPress

Displaying Code in WordPress

I often have the need to display code within this blog – whether it’s JavaScript, PHP, XHTML or something else.

There are many plugins available that will display any such code in a nice manner – usually with syntax highlighting – but, as yet, I’ve been unable to find one that doesn’t fulfil my requirements. And personally, I don’t think my requirements are that much.

Showing the code in a fixed font, with a decent line wrapping facility and the ability to display spaces and/or tabs, I don’t think, is a big list of needs. That list doesn’t even include the ubiquitous syntax highlighting.

In the end I created a half-arsed version of my own. In fact, it’s not even a plugin – just simply some CSS for displaying the code in reasonable manner. Unfortunately, it doesn’t get around the line wrapping problem.

So, imagine my surprise to come across a plugin the other day that seemed to resolve all these problems. And it does Syntax Highlighting. I had some initial problems, which involved me having to move my aforementioned CSS, and then, with no further testing, I started busily converting my posts to the new system. Note, me specifically mentioning my lack of testing. Because, yes, after changing lots of pages and posts, I realised that it wouldn’t work with spaced or tabs, so all lines of code were aligned down the left hand side of the screen. Bah. And I can’t find a solution, so I’m in the process of putting it all back to how it was.

If ANYBODY knows a plugin that will do what I’m after, then please let me know!

Categories
WordPress

WordPress Plugins and File Fetching

A number of my recent plugins have provided a facility to read files from other sites. However, errors were being reported by some users and so I attempted a change in one such plugin to address this.

Unfortunately, that didn’t quite work as I intended. Kind of. In this case, I swapped to using a different file routine, but one which now only works with PHP 5. So I’ve now published a newer version of the same plugin using another new method, and one that should now be compatible with PHP 4.

The problem here is that there are security implications with reading files externally, so there is a way for hosts to turn this ability off.

My new plugin, I suspect, doesn’t actually resolve this and there isn’t a great amount I can do about this – if your host has decided to prevent you from reading external files then, well, you’re stuffed. My host doesn’t, which might explain why I didn’t recognise the problem at first.

The file system I’ve used now, however, should allow you to specify local file names – at least that way files hosted by yourself should be readable. I’ve not tested it though, so feel free to provide feedback.

I’m now going to upgrade my other plugins with the same code process.

Categories
WordPress

Change logs for WordPress plugins

The standard readme.txt for WordPress plugins has been updated to allow for changelogs. This is excellent news and has happened at just the right time – I’m currently updating my readme.txt files to reflect that my plugins are compatible with WordPress 2.8!

Therefore, and slowly for now, I’m updating all my plugin readme.txt files. The appropriate pages for each plugin on this site, however, will change only if/when a new release of a plugin is released.

Categories
WordPress

Further WordPress upgrade issues

Since upgrading to 2.8 I’ve come across another issue. However, I’ve seen numerous people reporting the same problem after upgrades to previous WordPress versions, so I don’t think this is 2.8 specific.

Anyway, I couldn’t automatically update any of my plugins. I was getting an error along the lines of…

Could not copy file: /public_html/wp-content/upgrade/.....

This was also the error that stopped me from automatically updating WordPress as well. Anyway, the fix was simple – I used my FTP application to change the permissions on the upgrade folder. This seemed to cure it.