Icons
Developed by azurecurve
Plugin Description
Easily add an icon using the [icon] shortcode.
Easily add an icon to a post, page or other post type using the [icon] shortcode.
For example, to display the note icon, shortcode usage is [icon id="note"] (the shorthand [icon=note] is also supported); 1,001 icons from the famfamfam Silk collection are included, as PNGs.
A width attribute can be used to override the default width for that icon, e.g. [icon id="note" width="24px"]; if not specified, width defaults to a value configured separately for PNG and SVG icons on the Settings tab. A border attribute is also supported, e.g. [icon id="note" border="1px solid black"].
Custom icons can be added, as PNG or SVG; if a custom icon has the same name as a standard icon, the custom icon will be used. If both a PNG and an SVG custom icon share the same name, the SVG will be used.
Shortcodes In Comments can be used to allow flags in comments and Shortcodes In Widgets can allow them in widgets.
This plugin is multisite compatible.
- Download the latest release of the plugin from GitHub.
- Upload the entire zip file using the Plugins upload function in your ClassicPress admin panel.
- Activate the plugin.
- Configure relevant settings via the configuration page in the admin control panel (azurecurve menu).
Yes, the .pot file is in the plugins languages folder/; if you do translate this plugin, please sent the .po and .mo files to [email protected] for inclusion in the next version (full credit will be given).
This plugin is developed for ClassicPress, but will likely work on WordPress.
- Update plugin list.
- Update plugin list.
- Security: custom icon SVG uploads are now sanitised before being saved (previously SVG uploads were not supported at all).
- Fix: custom icon upload was completely broken (a malformed move_uploaded_file/wp_unslash call caused a fatal error on every upload attempt).
- Fix: uploaded image height was never actually validated (an index bug meant the height check silently re-checked width instead).
- Fix: shortcode rendering no longer makes a live HTTP request to check whether an icon exists on every page load; it now checks the local filesystem, matching the Flags plugin.
- Fix: uninstall.php referenced an undefined constant, so plugin options were never removed on uninstall; uninstall is now also multisite-aware.
- Fix: prevent direct access to plugin include files that were missing the standard guard.
- Fix: sanitise the shortcode id attribute to prevent path traversal when resolving an icon’s file.
- Fix: remove unused/unrelated jQuery admin script; update the shared admin tab script to the current version.
- New: custom icons can now be uploaded as SVG as well as PNG; the standard icon set can support SVGs in future without further code changes.
- New: shortcode now supports id, width, and border attributes, matching the Flags plugin. Default width can be set separately for PNG and SVG icons.
- New: Available Icons tab redesigned as a responsive grid (each icon capped at 48×48, never enlarged past its natural size) with a live filter and click-to-copy of the shortcode.
- Update: settings save and image upload unified into a single handler (previously two separate forms/nonces/hooks), matching the Flags plugin.
- Update:
Requires PHPraised to 8.2 (7.4 is end-of-life). - Update: internal code brought in line with the current azurecurve plugin pattern (constants, guards, admin JS, naming, code style).
- Update plugin header for compatibility with ClasssicPress v2.
- Update plugin header and readme for compatibility with ClassicPress Directory v2.
- Update Update Manager to version 2.5.0.
- Update readme file for compatibility with ClassicPress Directory.
- Fix backward compatibility bug with get_icons function.
- Fix Update Manager View Details link (contributed by xxsimoxx).
- Standardise handling of developer name and url.
- Update language template.
- Update Update Manager to version 2.4.3.
- Update instructions and other plugins tabs.
- Refactor code to use namespace, improve security and improve maintainability.
- Update language file.
- Update readme txt and md files.
- Fix upload of custom flags.
- Update azurecurve menu.
- Update readme files.
- Tidy up code on settings page.
- Remove jQuery UI tabs and add tabs using aria.
- Add uninstall.
- Update azurecurve menu and logo.
- Refactor settings page to be accessible using jQuery UI Tabs.
- Fix version number bug.
- Add functionality for custom icons, including upload of custom icons.
- Add function to build list of icons.
- Fix bug to prevent non-existent icon being used.
- Update azurecurve plugin menu.
- Fix plugin action link to use admin_url() function.
- Add plugin icon and banner.
- Update azurecurve plugin menu.
- Fix bug with plugin menu.
- Update plugin menu css.
- Upgrade azurecurve plugin to store available plugins in options.
- Update Update Manager class to v2.0.0.
- Update action link.
- Update azurecurve menu icon with compressed image.
- Update icons with compressed images.
- Fix bug with incorrect language load text domain.
- Add integration with Update Manager for automatic updates.
- Fix issue with display of azurecurve menu.
- Change settings page heading.
- Add load_plugin_textdomain to handle translations.
- Fix issue with flags not displaying correctly on admin page.
- Exclude index.php from image listing on admin page.
- Fix link in localized string and rebuild .pot.
- Amend sort order of icons to alphabetical order on admin page.
- Update azurecurve menu for easier maintenance.
- Move require of azurecurve menu below security check.
- Localization fixes.
- Initial release for ClassicPress forked from azurecurve Icons WordPress Plugin.
azurecurve was one of the first plugin developers to start developing for ClassicPress; all plugins are available from azurecurve Development and are integrated with the Update Manager plugin for fully integrated, no hassle, updates.
The plugins available from azurecurve are:
- Add Open Graph Tags – details / download
- Add Twitter Cards – details / download
- Avatars – details / download
- BBCode – details / download
- Breadcrumbs – details / download
- Broken Links – details / download
- Call-out Boxes – details / download
- Chroma – details / download
- Code – details / download
- Comment Validator – details / download
- Conditional Links – details / download
- Contact Forms – details / download
- Disable FLoC – details / download
- Display After Post Content – details / download
- Estimated Read Time – details / download
- Events – details / download
- Feed to Post – details / download
- Filtered Categories – details / download
- Flags – details / download
- Floating Featured Image – details / download
- Get GitHub File – details / download
- Icons – details / download
- Image Optimiser – details / download
- Images – details / download
- Insult Generator – details / download
- Load Admin CSS – details / download
- Loop Injection – details / download
- Lorem Ipsum Generator – details / download
- Maintenance Mode – details / download
- Markdown – details / download
- Nearby – details / download
- Page Index – details / download
- Post Archive – details / download
- Quiz Engine – details / download
- Read GitHub File – details / download
- Redirect – details / download
- Remove Revisions – details / download
- RSS Feed – details / download
- RSS Suffix – details / download
- Series Index – details / download
- Shortcodes in Comments – details / download
- Shortcodes in Widgets – details / download
- SMTP – details / download
- Snippets – details / download
- String Inspector – details / download
- Strong Password Generator – details / download
- Tag Cloud – details / download
- Taxonomy Index – details / download
- Taxonomy Order – details / download
- Theme Switcher – details / download
- Timelines – details / download
- Toggle Show/Hide – details / download
- Update Admin Menu – details / download
- URL Shortener – details / download
- Username Protection – details / download
- View Counter – details / download
- Widget Announcements – details / download