Plugin Directory

Automatic Post Tagger

This plugin uses keywords provided by the user to automatically add tags to posts according to their title, content and excerpt.


New features:

  • APT can process posts inserted to the database using the function "wp_insert_post"
  • HTML entities in analyzed content, word separators and related words can be converted to their applicable characters
  • Specified post statuses are now always being taken into account, not just when using the Bulk tagging tool
  • The time delay between cycles when using the Bulk tagging tool is now configurable
  • Terms imported from taxonomies can be saved as related words (with term IDs saved as their keyword names)


  • Install and update notices now disappear (and install and update notes appear) after visiting the options page even if the notice link isn't visited
  • Problems with non-comma sring separators
  • Numbers in certain options are being converted to integers before being saved to the database
  • Number of posts tagged per cycle must be non-zero
  • Some of the unnecessary executions of the tagging function (when posts are being trashed etc.) removed; further improvement still required


  • Suboptions "apt_run_apt_publish_post", "apt_run_apt_save_post", "apt_run_apt_wp_insert_post", "apt_post_statuses", "apt_bulk_tagging_delay", "apt_decode_html_entities_word_separators", "apt_decode_html_entities_analyzed_content", "apt_decode_html_entities_related_words"
  • New stats for the Bulk tagging tool
  • Confirm dialog displayed when the user wants to hide warning messages


  • Suboptions "apt_tagging_hook_type", "apt_bulk_tagging_statuses"
  • Widget with links to other plugins
  • Install and update nonces

Other changes:

  • When a string separator is changed to a character that is used as a word separator, this word separator will be removed
  • Ignored post statuses removed from the Bulk tagging tool
  • APT now updates itself after the user visits the options page if the automatic update fails
  • Suboptions "apt_handling_current_tags" and "apt_keyword_management_mode" renamed to "apt_old_tags_handling" and "apt_keyword_editor_mode"
  • Minor appearance changes


New features:

  • UTF-8 support
  • Custom taxonomy and post types
  • Customizable wildcard regex pattern
  • Multicharacter word separators; a space is not automatically treated as a separator anymore (HTML entities can be used to avoid problems if some word separators use characters identical to the delimiter)
  • New keyword management mode
  • Old tags can be removed from posts even if no new tags are found and added by the plugin
  • Automatic backup of keywords when updating the plugin
  • Users can choose not to search for keyword names in post content
  • Automatic input adjustment can be turned off


  • Multiple whitespace characters are being replaced with spaces also in the needles - not just in the haystack
  • Multiple whitespace characters are being replaced with multiple spaces now (only one space was used before - it turns out that it causes problems when finding needles with wildcards)
  • Function replacing non-alphanumeric characters replaces also whitespace characters now
  • All relevant variables that are being printed now use the htmlspecialchars functions to make sure that submitted HTML code is displayed as plain text and doesn't mess up the displayed page
  • Character limit removed from fgetcsv functions
  • Keywords and related words are now being processed with the function htmlspecialchars before displaying in (confirmation) messages
  • Duplicite keywords are being ignored when importing, stats fixed
  • Wildcards match ANY characters in related words by default, not just alphanumeric characters
  • Searching for related words (with appropriate word separators) when wildcard support is disabled
  • Finding keywords/related words with special (regex) characters should work just fine; preg_match "Unknown modifier" warnings should no longear appear
  • Undefined indexes


  • New option automatic_post_tagger_keywords
  • New CSS rule for warning and note messages
  • Widget with links to my other plugins


  • Table "wp_apt_tags" and several suboptions
  • Message encouraging users to rate the plugin (annoying and unnecessary)
  • The "Contributors" widget
  • Function apply_filters (no longer necessary)

Other changes:

  • APT now uses the word "keyword" to distinguish the WP tags taxonomy from user-defined tags ("keywords") - many variables and names were changed
  • Maxlength values increased from 255 to 5000
  • The default number of stored backups is 10
  • If multiple keywords with the same names are being saved, the one processed later will be removed
  • The "Import keywords from the database" tool now imports any taxonomy that happens to be specified in settings
  • If a keyword name is missing when saving all keywords, this particular keyword will be removed
  • If the user wants to ignore non-alphanumeric characters, the script automatically ignores currently set word separators and only a space is regarded as one (this should make the searching process sligthly faster)
  • The input "#apt_box_keyword_name" will remain active after creating a new keyword via the metabox (which allows faster adding of new keywords from the post editor)
  • The APT meta box is displayed and the post can be tagged only if the current post type is allowed by the user
  • Names of backup files now use unique IDs instead of timestamps
  • If the backup folder doesn't exist or has insufficient permissions, the plugin attempts to fix that
  • Exported keywords are now alphabetically sorted in the CSV file
  • The update algorithm (backward compatibility among other things - updating from older versions to the newest one instead of the following one)
  • User-defined $apt_post_types and $apt_post_statuses are now being prepared via WP API
  • The Bulk tagging tool now shows the total number of added tags and remaining post IDs in the queue
  • New function for changing visibility of widgets
  • Values of suboptions "apt_word_separators", "apt_bulk_tagging_statuses", "apt_hidden_widgets" were reset
  • Suboptions "apt_bulk_tagging_statuses", "apt_hidden_widgets", "apt_bulk_tagging_queue", "apt_word_separators" changed from string type to array (no need to automatically change string separators in these options when the user changes it anymore)
  • Update and installation admin notices are now being dismissed when the plugin verifies that the user actually visited the options page
  • Special function for conditions that use the global $pagenow variable
  • CSS, JS and the sprite image are now being called with the version parameter to prevent caching of old files
  • Underscores in all file names were replaced with dashes (that includes also backup files)
  • Minor appearance changes

Requires: 3.0 or higher
Compatible up to: 4.2.2
Last Updated: 2015-2-15
Active Installs: 5,000+


4.8 out of 5 stars


3 of 4 support threads in the last two months have been resolved.

Got something to say? Need help?


Not enough data

1 person says it works.
0 people say it's broken.

50,2,1 100,1,1 100,1,1 100,2,2 100,1,1
100,1,1 100,1,1
100,2,2 100,1,1
100,3,3 50,2,1
100,1,1 50,2,1