WordPress Plug-ins

Introduction

This article lists and reviews the WordPress plug-ins that are currently in use, or have been used in previous releases of the NAWG web site.

It also documents the plug-ins policy for the site.

Current Status

Here is the current status with the site's WordPress plug-ins. The information was last updated on Wed-13-Jul-2016.

Active Plug-ins

The following plug-ins are currently in use:

Name Version Applied Purpose
Akismet 3.1.11 13-Jul-2016 Comment spam filtering.
All In One SEO Pack 2.3.8 13-Jul-2016 Search engine optimisation.
Breadcrumb NavXT 5.4.0 18-Apr-2016 Navigation using "breadcrumb trail".
Contact Form 7 4.4.2 10-May-2016 Visitor enquiry and feedback messages.
Previous Plug-ins

The following plug-ins are no longer installed but have been used in previous releases:

Name Version Retired Notes
Advanced Excerpt 4.1.1 04-Apr-2014 Discontinued, therefore no updates nor support.
Google XML Sitemaps 4.0.5 12-Aug-2014 Search engine assistance. Similar features now provided by All in One SEO Pack (see above).
Lightbox 2 2.9.2 31-Mar-2014 Discontinued, therefore no updates nor support.
MM Forms 0.9.7b 31-Mar-2014 No available info, therefore presumed discontinued.
Really Simple CAPTCHA 1.5.0 31-Mar-2014 Not used by forms, therefore superfluous.
Redirection 2.2.13 31-Mar-2014 Removed due to technical design considerations.
WordPress Backup 2.2.3 04-Apr-2014 Removed due to technical design considerations.
WP Polls 2.6.8 14-May-2015 Removed as it was no longer providing useful information.

Breadcrumb NavXT ↓ Review

The plug-in provides a "breadcrumb trail" style navigation menu, in formats similar to the following examples:

  • Home > Category > Sub-category > Page Name
  • Home > Archive > Year & Month > Article
Breadcrumb NavXT – Settings
##### General #####

+----+-----+-----+
|Name|Value|Notes|
+----+-----+-----+
|Breadcrumb separator|" > "|Without quotes.|
|Limit title length|No||
|Max title length|1||
|Link current item|No||
|Paged breadcrumb|No||
|Paged template|%htitle%||
|Home breadcrumb|Yes||
|Home template|<a title="Go to the %title% home page…" href="%link%">Home</a>||
|Home template (unlinked)|Home||
|Blog breadcrumb|No||
|Blog template|<a title="Go to %title%…" href="%link%">%htitle%</a>||
|Blog template (unlinked)|%htitle%||
|Main site breadcrumb|Disabled|Due to multi-site not being enabled.|
+----+-----+-----+

##### Post Types #####

+----+-----+-----+
|Name|Value|Notes|
+----+-----+-----+
|Post template|<a title="Go to %title%…" href="%link%" class="%type%">%htitle%</a>||
|Post template (unlinked)|%htitle%||
|Post hierarchy display|Yes||
|Post hierarchy|Categories||
|Page template|<a title="Go to %title%…" href="%link%" class="%type%">%htitle%</a>||
|Page template (unlinked)|%htitle%||
|Attachment template|<a title="Go to %title%…" href="%link%" class="%type%">%htitle%</a>||
|Attachment template (unlinked)|%htitle%||
+----+-----+-----+

##### Taxonomies #####

+----+-----+-----+
|Name|Value|Notes|
+----+-----+-----+
|Category template|<a title="Articles in category: %title%…" href="%link%">%htitle%</a>||
|Category template (unlinked)|%htitle%||
|Tag template|<a title="Articles with tag: %title%…" href="%link%" class="%type%">%htitle%</a>||
|Tag template (unlinked)|%htitle%||
|Post format template|<a title="Go to %title%…" href="%link%" class="%type%">%htitle%</a>||
|Post format template (unlinked)|%htitle%||
+----+-----+-----+

##### Miscellaneous #####

+----+-----+-----+
|Name|Value|Notes|
+----+-----+-----+
|Author template|<a title="Articles posted by: %title%…" href="%link%">%htitle%</a>||
|Author template (unlinked)|Articles posted by: %htitle%||
|Author display format|display_name||
|Date template|<a title="Articles posted in %title%…" href="%link%">%htitle%</a>||
|Date template (unlinked)|%htitle%||
|Search template|<a title="Search results: %title%…" href="%link%">%htitle%</a>||
|Search template (unlinked)|Search results: %htitle%||
|404 title|404||
|404 template|%htitle%||
+----+-----+-----+

The remainder of this section will be filled in at a later date…


Policy

This section outlines the policy for the use of WordPress plug-ins.

Strategy

The following strategy should be used.

  1. Keep the number of plug-ins to an absolute minimum.
  2. Only use up-to-date and well-maintained plug-ins.

In addition, the following guidelines are provided:

  1. Never apply untested new plug-ins directly to the live site. Always test them first, using a development site or staging area.
  2. Never apply untested plug-in updates directly to the live site. Always test them first, using a development site or staging area.
Justification

Plug-ins can add functionality to the core software. However, they can also be a source of many different kinds of problems. Some examples are given below.

Lack of Support

It's quite common for plug-in authors to lose interest in their creations and move on to other things. This leaves the plug-in users without support and without the possibility of upgrades to fix bugs.

Core Dependencies

In order to upgrade many of the plug-ins, the core version of WordPress also needs to be upgraded. This has knock-on implications for development and testing.

In addition, many plug-ins are developed and tested against older versions of the WordPress core, but not re-tested when later core releases become available. This can lead to problems, sometimes serious ones, when a web site upgrades their WordPress core.

For example: plug-in version a.b.c may work correctly with WordPress version u.v.w, but the same plug-in version may stop working when WordPress is upgraded to version x.y.z. Upgraded plug-in version d.e.f may resolve this, but who's to say when or if version d.e.f will become available.

Of course, the WordPress core could be kept at the earlier version, but failure to upgrade can lead to other serious problems, such as security vulnerabilities.

Inter-Dependencies

Some of the more complex plug-ins rely on other plug-ins being installed and activated. The relative versions of these plug-ins may be important in terms of which combinations work correctly and which ones don't.

Added to the core dependency issue, this can lead to a nightmare of maintenance, due to the "spaghetti" relationships between the components.

Unnecessary Plug-ins

Plug-ins can end up being used when they are not strictly needed. This can happen in a number of scenarios:

  • Their functionality becomes available in a later version of the WordPress core, making the plug-in redundant.
  • An administrator may install a plug-in to resolve an issue, when a better solution might have been used.
  • An administrator may install a plug-in without fully understanding the longer term implications.

Using unnecessary plug-ins can lead to knock-on problems, such as the following:

  • Writing content in a way to suit a particular plug-in, rather than keeping it simple.
  • Extra complexity of code in the web site's software, leading to maintenance overheads and increased development time.

Reviews

This section contains descriptive (and probably subjective) reviews of some of the plug-ins.

Rationale

The NAWG web site prior to release 2.4.1 used around twelve WordPress plug-ins. These were reviewed, in order to make decisions about what actions to take. In each case, it was decided to do one of the following:

  1. Keep the plug-in as it is.
  2. Upgrade the plug-in, if a newer version is available.
  3. Replace the plug-in with a different one, which could be:
    1. Another third-party plug-in.
    2. A plug-in to be developed in-house.
  4. Remove the plug-in.
Advanced Excerpt
Slug: advanced-excerpt
Version: 4.1.1
Reviewed: 05-Mar-2014
Purpose: Fine control over articles' excerpts.
Description

The following features are listed in the plug-in directory:

  1. Keeps HTML mark-up in the excerpt (and you get to choose which tags are included).
  2. Trims the excerpt to a given length using either character count or word count.
  3. Only the "real" text is counted (HTML is ignored but kept).
  4. Customizes the excerpt length and the ellipsis character that are used.
  5. Completes the last word or sentence in an excerpt (no weird cuts).
  6. Adds a read-more link to the text.
  7. Ignores custom excerpts and use the generated one instead.
  8. Theme developers can use the_advanced_excerpt() for even more control (see the FAQ).
Impressions

The first thing that stands out is that, despite the usefulness of the features, the plug-in has not been updated for over two years (at the time of writing). This is a strong indication that the plug-in has been abandoned by the author. The fact that the given plug-in web site is no longer present and its domain is for sale, supports this assertion.


Akismet
Slug: akismet
Version: 2.6.0
Reviewed: 10-Mar-2014
Purpose: Comment spam filtering.
Description

The plug-in works by calling a web service to determine whether comments are spam. Spam are placed in the appropriate "spam" state, whereas good comments are processed as normal. Borderline cases go into the "moderate" state, so that they can be reviewed by a moderator.

Impressions

Judging from the sheer volume of spam comments*, we cannot do without this plug-in, unless additional measures are taken.

* At the time of writing (09-Apr-2014), there are 152 comments marked as genuine and 3,301 marked as spam.


All in One SEO Pack
Slug: all-in-one-seo-pack
Version: 2.1.3
Reviewed: 10-Mar-2014
Purpose: Search engine optimisation.
Description

Provides search engine optimisation (SEO) by adding keywords using <meta> tags in the output mark-up. This can improve the web site's ranking in search results, when using a popular search engine such as Google.

Impressions

This seems like a reasonable idea, though I'm personally not always convinced that SEO is worth the effort. Since the plug-in does it automatically, there is probably nothing to lose.

I once heard a "golden rule" of SEO, that simply said:

Write good content!


Breadcrumb NavXT
Slug: breadcrumb-navxt
Version: 5.0.0
Reviewed: 05-Mar-2014
Purpose: Breadcrumb trail navigation.
Description

The plug-in provides a "breadcrumb trail" style navigation menu.

Impressions

This plug-in will only be useful if we decide to keep this method of navigation. Otherwise it will serve no purpose.


Contact Form 7
Slug: contact-form-7
Version: 3.8.0
Reviewed: 10-Mar-2014
Purpose: Providing visitor feedback contact forms.
Description

The plug-in allows you to place contact forms on a page, using shortcodes such as in the following example:

[‍contact-form-7 id="1234" title="Contact form"]

You design the actual form using the plug-in's settings page. The form is then rendered when the assigned page is displayed.

Impressions

It seems to work as advertised with no problems.


Google XML Sitemaps
Slug: google-sitemap-generator
Version: 4.0.0
Reviewed: 05-Mar-2014
Purpose: Generate sitemap files for robots, assisting search engines.
Description

This plug-in generates sitemap files, based on the page and post structure plus other content. Sitemaps help search engines to index the site more efficiently, but they have no immediate benefit to human visitors. These sitemap files should not be confused with a "sitemap" style for navigation menus (although the latter could be derived from the former, for practical purposes).

Although search engines benefit from sitemaps, they have no effect on search rankings, since they don't provide any kind of search engine optimisation (SEO).

Impressions

Seems helpful and harmless enough, though testing will be required to ascertain its impact on performance and other things.


Lightbox 2
Slug: lightbox-2
Version: 2.9.2
Reviewed: 05-Mar-2014
Purpose: Visual effects for images.
Description

This plug-in has been discontinued and is no longer available.

Provided visual effects for images.

Impressions

Such visual effects, should we want them, can easily be provided by the following alternatives:

  • Standard style sheets (CSS) and JavaScript code.
  • PHP code in the WordPress theme.

MM Forms
Slug: mm-forms
Version: 0.9.7b
Reviewed: 05-Mar-2014
Purpose: Unknown – possibly contact forms provider.
Description

No information could be found about this plug-in, which was disabled anyway.


Really Simple CAPTCHA
Slug: really-simple-captcha
Version: 1.7.0
Reviewed: 05-Mar-2014
Purpose: Provide CAPTCHA for contact forms.
Description

This is a plug-in which provides additional functionality to the Contact Form 7 plug-in. It provides the ability to include a CAPTCHA anti-spam measure in contact forms.

Impressions

In the web site configuration at the time of review, this feature did not appear to be used. The contact form did not include a CAPTCHA.

In any case, CAPTCHAs are problematic for many reasons, including:

  • They can be notoriously difficult to satisfy.
  • They cause user frustration.
  • For these reasons, they are a deterrent to genuine users. This surely outweighs any anti-spam benefits.
  • There are other, probably more effective ways to block spam, e.g.:
    • "Honey pot" fields, hidden from humans using (separate) CSS.
    • Verification fields, produced by client-side JavaScript code.
    • Very simple challenge-response questions, e.g. "what is 2 + 3 ?"

Redirection
Slug: redirection
Version: 2.3.4
Reviewed: 10-Mar-2014
Purpose: Automatic URI redirection.
Description

The plug-in provides redirection, that is: converting an incoming request for a page to a different URI. It also keeps logs of these redirections and of requests for pages that are not found (404 errors).

Impressions

My first thought was that this was implemented as a stop-gap solution to solve broken link problems. It would surely have been better to fix the broken links.

Having said that, I saw a number of other possible uses:

  1. Patching temporarily broken links when resources are moved internally.
  2. Keeping site visitors' out-of-date links working. URIs may change for a number of reasons, including:
    • The URI mechanism may change (e.g. "permalinks" setting in WordPress).
    • Article titles may change after an edit.
    • Category and tag names may be altered.
    • Article dates may be edited, leading to broken archive links.
  3. Monitoring requests to see what people are looking for but not finding.

I believe that 1 and 2 should only be temporary situations and do not warrant permanent use of the plug-in. In case 3, there are other, probably more reliable tools that can be used to determine visitor statistics.

An important thing to consider is that using a WordPress plug-in to provide redirection may be too expensive in terms of performance, though this has not been tested. This is for a number of reasons:

  • The whole of the WordPress core must be loaded before redirection takes place, after which time, another page is loaded from scratch.
  • The web server can handle redirection much more efficiently. In this case, via the Apache "redirect" module. The rules can simply be placed in the override file (usually .htaccess).
Testing

An initial investigation revealed the following facts:

  • The administrative user interface did not seem to work correctly. Details of the redirection rules were not presented in the way that the instructions suggest. Whether this is a bug or my own misunderstanding is not yet clear.
  • The redirection logs can take up a lot of space in the database.
    • There were nearly 95,000 records at the time of writing.
    • In terms of storage, this was, at the time of writing, 38% of the whole database.
    • Judging from the time stamps, these records had been present since the plug-in was first installed. Their number would only increase over time, unless manually deleted.

WordPress Backup
Slug: wp-db-backup
Version: 2.2.3
Reviewed: 10-Mar-2014
Purpose: Database backups.
Description

The plug-in allows you to back up the SQL database behind WordPress. It works by performing an SQL dump and then saving this to a directory on the server, or e-mailing the result to a specified address. You can schedule this action to take place at regular intervals (e-mail option only). Alternatively you can do an immediate backup from the dashboard and save the file to your computer.

Testing

Immediate backups were performed on a local test site (nawg.dev) and on the live site. These appeared to work successfully, though the browser (Opera Presto) hung at the end of the operation. Upgrading to version 2.2.4 did not solve this issue.

The live data were then restored into the local test site and this appeared to work successfully too.

A subsequent full backup from the live site, including all database tables, resulted in the dump file being saved to a server directory, despite the request being for a client download. This may have been due to the size of the file (~70 MB), though no message to this effect was given.

Impressions

The plug-in appears functional, though the browser hang issue may be cause for concern.

There is a question mark over how useful it actually is, though. It does not do anything that cannot be achieved via phpMyAdmin on the web host's control panels, other than the ability to e-mail the data.


WP Polls
Slug: wp-polls
Version: 2.6.3
Reviewed: 05-Mar-2014
Purpose: Presenting polls to get user feedback.
Description

Allows the presentation of one or more voting polls, to get answers to questions from site users and visitors. The results are stored in the database, and can also be viewed using the voting widget(s).

Impressions

The plug-in seems to work correctly.

Article Actions
Article Information
Author: Kevin Machin Date: April 4, 2014 5:32 pm
Categories: Website Tags: None
Responses: 0 – open Article: 2789 – published
Submit a New Comment
Alternatively, you can use your account, if you have one – Log in
Cancel

article as:

Pages
Archives
Logo: Get Creative
Image: hissac.logo-t.png

Competition & Mentorships

We are proud to be associated with the Highlands & Islands Short Story Association.