azurecurve ClassicPress Plugins: Conditional Links

ClassicPress PluginsThis is part of the azurecurve ClassicPress Plugins which introduces the plugins I have available for ClassicPress.

The plugin I am going to cover in this post, is an existing one which has been brought up to standard; Conditional Links.

Functionality

This plugin allows use of the cpl (conditional-links#download page link cbl (conditional blog link) shortcode with a slug parameter to link to a page whether it exists or not; the content between the opening and closing shortcode tags will be the text visible to visitors. If the page exists it will be linked, otherwise standard unlinked text will be displayed.

This allows you to publish pages while the site is being build without having broken links, but as soon as the page, or post, is published, the link will immediately be present and working without the need to go back and edit a page).

Download

The plugin can be downloaded via my Development site.

azurecurve ClassicPress Plugins: Comment Validator

ClassicPress PluginsThis is part of the azurecurve ClassicPress Plugins which introduces the plugins I have available for ClassicPress.

The plugin I am going to cover in this post, is an existing one which has been standardised; Comment Validator.

Functionality

This plugin is a fairly simple one which prevents comment shorter or longer than admin defined lengths being submitted. There is also an option to prevent unregistered users using the name of a registered user when posting.

Demo

To try this comment, try leaving a comment on this post which is shorter than 10 characters.

Download

The plugin can be downloaded via my Development site.

azurecurve ClassicPress Plugins: Code

ClassicPress PluginsThis is part of the azurecurve ClassicPress Plugins which introduces the plugins I have available for ClassicPress.

The plugin I am going to cover in this post, is a brand new plugin; Code.

Functionality

I’ve never found a code formatting plugin which I liked so I’ve been manually formatting code to post for a while; this plugin is still manually formatting, but provides a set of shortcodes which can be sued to colour text for SQL and PHP.

A copyright message can be set via the plugins settings page and output using a shortcode.

Download

The plugin can be downloaded via my Development site.

azurecurve ClassicPress Plugins: Call-out Boxes

ClassicPress PluginsThis is part of the azurecurve ClassicPress Plugins which introduces the plugins I have available for ClassicPress.

The plugin I am going to cover in this post, is a brand new one; Call-out Boxes.

Functionality

The Call-out Boxes plugin allows easy creation of a call-out box on a post or page using a shortcode for placement; this allows you to highlight a certain piece of information.

In the plugin Settings page, the default appearance of the Call-out Boxes can be defined, but parameters allow these to be overridden on usage.

lightbulb Call-out boxes integrate with the azurecurve Icons plugin for the icon

Demo

Functionality section of this post contains a call-out box.

Download

The plugin can be downloaded via my Development site.

azurecurve ClassicPress Plugins: Breadcrumbs

ClassicPress PluginsThis is part of the azurecurve ClassicPress Plugins which introduces the plugins I have available for ClassicPress.

The plugin I am going to cover in this post, is one which has been standardised; Breadcrumbs.

Functionality

The Breadcrumbs plugin allows pages to have breadcrumbs added at the top or bottom; this shows the navigation route through the site to the current from the homepage allowing users to easily navigate back any numbers of levels they choose.

Demo

I use this plugin on the azurecurve|GP Tables Reference website where it has been placed at the top and bottom of every page to facilitate navigation; it is also used on coppr|Distilleries to Visit.

Download

The plugin can be downloaded via my Development site.

azurecurve ClassicPress Plugins: BBCode

ClassicPress PluginsThis is part of the azurecurve ClassicPress Plugins which introduces the plugins I have available for ClassicPress.

The plugin I am going to cover in this post, is an existing one which has been standardised; BBCode.

Functionality

This plugin allows the use of bbcode to format posts and pages rather than HTML. BBCode may not be as popular as it was, but it is a fairly friendly way of formatting text.

Standard bbcodes are supported (full list of supported bbcodes can be found here).

You can combine this plugin with Shortcodes in Comments to allow your readers to use BBCodes when they leave a comment.

Download

The plugin can be downloaded via my Development site.

azurecurve ClassicPress Plugins: Avatars

ClassicPress PluginsThis is part of the azurecurve ClassicPress Plugins which introduces the plugins I have available for ClassicPress.

The plugin I am going to cover in this post, is a brand new one; Avatars.

Functionality

The Avatars plugin has three key pieces of functionality:

  • Upload an image file using an FTP client, to the plugins images folder, called CustomAvatar.png and, via the Discussion settings page, set this as the default avatar to replace the Gravatars used by default.
  • The admin can, via the plugin Settings page, set an option to allow only local avatars which will use the default avatar rather than any Gravatar a user might be using.
  • Users can upload their own avatar which is stored in the media library.

Demo

This site is using the Avatars plugin; you can see this in the first comment of this post where you can see my IG avatar.

Download

The plugin can be downloaded via my Development site.

azurecurve ClassicPress Plugins: Series Index

ClassicPress PluginsI’ve been involved with the ClassicPress project for a while now in a few different ways (such as writing FAQs and drafting plugin directory rules).

One of the things I have been working on is rewriting my plugins, to both improve the functionality and also to improve their adherence to coding standards and best practice. There was quite a few ways where I was not following best practice or where I had code which was not very secure.

Some plugins have had a near total rewrite while others have just been updated to do things in a more standardised and recommend way. Part of the reason I have done this, in fact been able to do this, is how welcoming and willing to offer advice the people in the ClassicPress community have been.

I have also written a number of new plugins which are all available for ClassicPress (they will also work with WordPress, but I have not submitted them to the WordPress Plugin Repository.

There have been quite a few people who have been willing to answer questions and offer assistance, but I will single out John Alarcon, known in the ClassicPress Community as Code Potent, who has gone out of his way to be of great help.

In this series of posts, I am going to give a brief introduction to each of the plugins I have available, along with links to plugin demos or examples and to my Development site where further details, download and support links are available.

Continue reading “azurecurve ClassicPress Plugins: Series Index”

WordPress/ClassicPress Plugin Development: Checking If Function Exists In Namespace

WordPress PluginI’ve been developing my own plugins for WordPress and, more reently, ClassicPress. At times it’s been necessary to check if a function exists.

It’s fairly straightforward to do this check:

if (!function_exists('azrcrv_get_breadrumbs')){
	// code here
}

I also use a few plugins developed by other people. One of the ones I’ve been reviewing recently is Estimated Read Time by CodePotent.

John uses namespaces in his plugins which means the check also needs to include the namespace. You can check for this using the following syntax (the highlighted section is the namespace defined in the plugin):

if (function_exists('CodePotent\EstimatedReadTime\process_shortcode')){
	// code here
}

I’m posting this as a reminder to myself as it took me a few minutes of searching before I found the right answer.

GitHub Announces New Unlimited Repos & Unitifed Enterprise Offering

GitHubI’ve recently been taking a look at ClassicPress and one of the subjects that came up was that it might, for the plugin directory, use GutHub instead of SVN like WordPress.

I create an account and started looking into creating repositories for my plugins. Hot all of my plugins are on that site however, as not all have been released to the public. Some of them are only going to be usable to me (for example plugins drive both the GP Table Reference and my distilleries website) and you were limited on GitHub to a certain number of private repositories.

However, GitHub yesterday announced the following:

  • GitHub Free now includes unlimited private repositories. For the first time, developers can use GitHub for their private projects with up to three collaborators per repository for free. Many developers want to use private repos to apply for a job, work on a side project, or try something out in private before releasing it publicly. Starting today, those scenarios, and many more, are possible on GitHub at no cost. Public repositories are still free (of course—no changes there) and include unlimited collaborators.
  • GitHub Enterprise is the new unified product for Enterprise Cloud (formerly GitHub Business Cloud) and Enterprise Server (formerly GitHub Enterprise). Organizations that want the flexibility to use GitHub in a cloud or self-hosted configuration can now access both at one per-seat price. And with GitHub Connect, these products can be securely linked, providing a hybrid option so developers can work seamlessly across both environments.

The second point isn’t relevant to me, but the first might be useful as it will allow me to store both my public and private plugins in the same place.

More details are available from the GitHub blog.