Recently I published the One-Time Password WordPress plugin to be able to login more safely into my weblog to write my travel stories in internet cafés. I wanted something similar to access my e-mail. I considered using my weblog URL as OpenID, but most e-mail providers support OpenID only as provider, not as consumer (meaning that you cannot login with an OpenID). But suddenly I thought why not access my e-mail directly from my WordPress dashboard using a pre-stored password? This is exactly what the Mini Mail Dashboard Widget plugin offers, with the option to receive SMS messages when new e-mail messages arrive (using the services of VoipBuster or one of its clones).
For various reasons it is sometimes handy to have short URLs to my posts. After reading this post and some surfing around I selected Cli.gs as short URL service.
I couldn’t find a simple WordPress plugin to create and display Cli.gs short URLs, so I wrote Cli.gs and Tweet. As the name suggests this plugin can send a customizable Twitter message containing the created short URL too. This plugin can also inserts code into the page header for short url auto-discovery.
There is no setup required if you only want to automatically create short URLs when saving posts and display them above your posts. If you want to send Twitter messages, you just have to enter your Twitter user name and password. The appearance can be modified by some settings and/or by modifying a style sheet.
This plugin requires PHP 4.3.0 only.
I my attempt to write my travel stories in internet cafés without worries I wrote the Login Virtual Keyboard plugin sometime ago. However, using a virtual keyboard to prevent keylogging is somewhat clumsy and is still not entirely safe.
To improve safety I recently wrote the One-Time Password plugin that enables me to login to my weblog using passwords which are valid for one session only, so my main WordPress password cannot be stolen. The plugin is simple to use, just install it, generate a password list and you can start logging-in using one-time passwords.
For even more safety, I added the possibility to protect administrative actions with one-time passwords in version 2.
If you find this plugin useful, please vote for it on the WordPress Competition Blog.
Update: this plugin is one of the 11 12 13 Vital Tips and Hacks to Protect Your WordPress Admin Area.
I wanted to show the number of visits per post using the statistics recorded by the CyStat plugin. This appeared to be quite simple, because there exists a suitable template function. I just added the following line to my WordPress theme to make it working:
<div><span><?php cystats_getPostVisitsByID($post->ID, $showmode=TRUE); ?> Visits</span></div> |
When I am traveling I frequently publish my travel stories from internet cafés on this weblog. However, these places are not the safest computing places. I have seen a lot of worrying messages from virus scanners nobody pays attention to.
Because of this I have been searching for ways to improve security. One measure I took was installing the Semisecure Login Reimagined plugin to send the WordPress password encrypted from the browser to the server (a better way is to use SSL, but my hosting provider doesn’t support that).
However, sending the password encrypted doesn’t prevent keylogging. A possible solution is to use a virtual keyboard (on-screen keyboard). Because I don’t want to search for or install a virtual keyboard each time, I wanted a virtual keyboard integrated in my login screen. I couldn’t find something existing, so I decided to write a new WordPress plugin to accomplish this. The short name of this plugin is WP-Login-Vkb.
After pressing the keyboard icon next to the password box, my login screen looks like this now:
Installation of the plugin is straightforward:
- Download and unzip the plugin
- Upload the entire wp-login-vkb/ directory to the /wp-content/plugins/ directory
- Activate the plugin through the ‘Plugins’ menu in WordPress
- Optionally change the default settings on the options page
The plugin was tested with WordPress version 2.7 on a standard (not customized) login screen. Please let me know if the plugin does work with other WordPress versions (especially older versions).
Please note that I cannot guarantee this plugin will prevent keylogging in all cases.
The plugin is licensed under the GNU General Public License version 3. The plugin uses the Javascript Virtual Keyboard downloaded from The Code Project. The keyboard icon was downloaded from Wikimedia Commons.
Remarks, comments and questions are as always very welcome.
For developing the website leren.arabisch.nu, I wanted to display the last date and time any page was updated. Because currently no plugin exists that can do this, I used the following shortcode definition:
add_shortcode('mb_last_modified', 'mb_last_modified_func'); function mb_last_modified_func($atts) { global $wpdb; $last_modified = $wpdb->get_var("SELECT MAX($wpdb->posts.post_modified) FROM $wpdb->posts WHERE $wpdb->posts.post_status = 'publish'"); return date(get_option("date_format") . " " . get_option("time_format"), strtotime($last_modified)); } |
If you want to use this shortcode, put the code in the file functions.php of your theme. Create this file if it does not exist; WordPress will automatically find and use it. After that you can use the shortcode [mb_last_modified] anywhere in your posts and/or pages. If you want to use the shortcode in a widget just like I did, you have to add the following line of code too:
add_filter('widget_text', 'do_shortcode'); |
Op dit moment zijn de volgende WordPress PlugIns op deze weblog geïnstalleerd:
- Advanced Search voor een verbeterde zoekfunctie
- Akismet om commentaar spam te voorkomen
- All in One SEO Pack voor zoekmachine optimalisatie
- Automatic Timezone voor automatische overgang zomer/wintertijd
- Auto Thickbox
- Bad behavior voor het weren van ongewenste bezoekers
- Comment Reply Notification om gebruikers op de hoogte te stellen van nieuw commentaar
- Canonical URL’s voor het voorkomen van dubbele inhoud
- Countdown Timer voor het aftellen naar een datum
- CyStat voor bezoekersstatistieken
- Dashboard Google Page Rank
- Enhanced WP-ContactForm voor een contactpagina
- Exclude pages from Navigation voor experimentele pagina’s
- Executable PHP widget voor o.a. landing sites
- Google Analytics for WordPress voor integratie met Google Analytics
- Google XML Sitemaps voor het automatisch genereren van een sitemap
- http:BL voor het tegengaan van ongewenste bezoekers (gebaseerd op Project Honey Pot)
- Landing sites voor het tonen van related posts na een search
- Link Indication voor het tonen van iconen bij links
- MaxBlogPress Ping Optimizer
- NextGEN Gallery voor het tonen van foto’s
- OpenID om met OpenID in te kunnen loggen
- Pagebar2 voor een beter pagina navigatie
- Permalink Redirect wegens een wijziging in de permalink-structuur
- Piwik Analytics als alternatief voor Google Analytics
- Post-Plugin Library voor de Similar Posts PlugIn
- Public Post Review voor het laten reviewen van niet gepubliceerde posts
- Robots Meta voor Google, Yahoo! en Live verificatie
- Semisecure Login Reimagined voor veiliger inloggen in internetcafés
- Shockingly Big IE6 Warning
- Similar Posts voor het tonen van gerelateerde posts
- SwfObj voor flash content
- TimeZoneCalulator voor het tonen van tijden
- TinyMCE Advanced voor een uitgebreidere editor
- WP-DBManager voor het maken van backups
- WP-Print voor het afdrukken van posts
- WP-Syntax voor het tonen van codefragmenten
- XML Google Maps om (satelliet)kaarten te tonen
- XRDS-Simple voor OpenID provider functionaliteit
De laatste versies van deze Plugins werken goed met WordPress versie 2.7.1
After uploading an image to WordPress (version 2.3.3) the thumbnail of the image was not displaying. This was because the thumbnail had the wrong permissions (660). More people seem to have this problem. I fixed this problem by setting the permissions of the thumbnail after it has been move to its target.
The file to fix is wp-admin/includes/image.php. After inserting the following code at line 93 the problem is solved:
if (!chmod($thumbpath, 0644)) $error = __( "Setting thumbnail permissions failed" ); |
Update: This problem has been solved in WordPress 2.5










