Terms descriptions


This plugin allows you to create list of terms and assign links to them. Plugin replaces terms occurrences in your posts with appropriate links.

The main purpose of this plugin is easy link building.

For example, you can create a page or post with detail description of some term. Most likely, this term is used in other posts and it would be appropriate to put a links from that posts to you page. But doing this operation manually is very time consuming task.

This WordPress plugin allow you to maintain a list of terms and assign links to them. Plugin automatically replaces terms occurrences in posts with appropriate links. You can control the number of terms replacements.

This plugin allows.

  • Create, update and delete terms through admin interface (Terms menu). Each term can contain one or several word forms (e.g. pear, pears).
  • Assign a link to a term. This link can point to your blog post, page, custom post type or to a page on another site.
  • Control how many terms will be converted to links in each post.
  • Select where you want to replace terms, in posts content, in posts comments or both.
  • Set several word forms for each term. For example, «apple|apples». Word forms should be separated with a «|» symbol.
  • Search for terms in posts content and convert them to appropriate links. This task is performed automatically when plugin is activated.
  • Disable terms to links conversion for individual posts.
  • Wrap links with arbitrary text (for example, you can wrap link with strong tag)
  • Export and import terms and plugin options.
  • Export terms in CSV format.
  • Packet terms creation.
  • Permalinks update function (use it after permalinks structure updates).

Please, note that terms will not be replaced with links in following cases.

  • If the term is already inside the link. E.g. if the link was created manually. So the plugin will not change any links that already exists in the post.
  • If the term is located inside html tag. For example, inside alt attribute of img tag.
  • If the term is located in h1h6 tags.
  • If the term is part of another word. E.g. term = car and the word is carrot.
  • If you checked «Disable Terms Descriptions plugin for this post» checkbox (at the bottom of post edit screen).


Huge terms lists with hundreds of terms can increase page creation time. In such cases, consider to use caching plugin.

Detail description of this plugin is available in English.

Detail description of this plugin is available in Russian.

Serbo-Croatian translations were created by Borisa Djuraskovic.

Spanish translations were created by Juan.


If you want to participate in the plugin development, create a pull request to the official GutHub repository.

The plugin built with PhpStorm


  • Terms creation page
  • Page selection autocomplete field
  • Options page
  • Tools page
  • The plugin built with PhpStorm


  1. Download the zip file
  2. Extract terms-descriptions folder
  3. Upload terms-descriptions folder to yourwp-content/plugins directory
  4. Log in to your WordPress blog
  5. Click on «Plugins»
  6. Locate the «Terms Descriptions» plugin and click «Activate»
  7. Go to «Term» > «Terms» to create your list of terms
  8. Update DB message may appear after plugin upgrade at the top of admin pages. In this case backup you database and press «Update DB» button.
  9. Go to «Terms» > «Options» and select parser type. Simple parser will search for exact terms. Simple parser with quotes support will search for terms that may be surrounded with quotes.
  10. If you change permalinks structure go to «Term» > «Terms» page and press «Update permalinks» button
  11. If you want to disable the plugin for individual posts check «Disable Terms Descriptions plugin for this post» checkbox (at the bottom of post edit screen)


Огромное Вам спасибо за прекрасный плагин, работой которого на моих сайтах наслаждаюсь уже 10 лет!
Пользуюсь давно. Что хотелось бы видеть, это автодобавление терминов с различными окончаниями по шаблону. Например, добавив термин — магазин*, плагин автоматом добавит все окончания — магазинов, магазинами и т.д. Было бы очень удобно.
Хорошее решение и реализация. Если без фанатизма с числом терминов, то сайт не грузит. Работает корректно.
На данный момент, самый лучший из бесплатных плагинов и даст фору многим платным. Остается надеяться на продолжительную поддержку плагина. Владимир, удачи.
Посмотреть все 9 отзывов

Участники и разработчики

«Terms descriptions» — проект с открытым исходным кодом. В развитие плагина внесли свой вклад следующие участники:


«Terms descriptions» переведён на 2 языка. Благодарим переводчиков за их работу.

Перевести «Terms descriptions» на ваш язык.

Заинтересованы в разработке?

Посмотрите код, проверьте SVN репозиторий, или подпишитесь на журнал разработки по RSS.

Журнал изменений


  • WordPress 6.5 support


  • Bug fixes: reflected XSS vulnerability fixed
  • WordPress 6.2 support


  • New option added: skip_noindex_nofollow_for_internal
  • Tests for apostrophe (https://wordpress.org/support/topic/cant-include-a-in-terms/)
  • WordPress 6.2 support


  • Bug fixes: variable type check added (https://github.com/vladimir-s/terms-descriptions/issues/5)


  • New feature: support of additional filters added (https://github.com/vladimir-s/terms-descriptions/issues/1)
  • Bug fixes: support of widgets in the sidebar, hooks above the loop added (https://github.com/vladimir-s/terms-descriptions/issues/4)
  • WordPress 6.0 support


  • New feature: [terms-descriptions] shortcode added
  • New feature: convert in archive descriptions option added
  • New feature: support of t_use_in_post_types column added to packet upload and export to CSV
  • New feature: support of t_use_in_post_types column added to export and import
  • Improvement: PHPUnit 9.5 support
  • Bug fix: «www.» subdomain removed from SERVER_NAME in is_current_url function
  • WordPress 5.9.3 support


  • New feature: terms can be associated with post types
  • WordPress 5.9.2 support


  • WordPress 5.7.1 support




  • Spanish translations by Juan the Wizard (https://profiles.wordpress.org/juanwizard/)


  • New feature: Custom timeout between requests for permalinks updates
  • WordPress 5.4.1 support


  • WordPress 5.4 support


  • WordPress 5.3 support


  • WordPress 5.1 support
  • CSS Styles updated
  • Search term form updated


  • WordPress 5.0 support
  • PHP 7.3 support


  • Text domain fixed


  • Support for the translations import mechanism


  • New feature: Same URLs with different anchors are not treated as unique
  • WP 4.9.8 support


  • New feature: Custom title tag added for external links
  • Bug fix: in SCO_TD_Long_Terms_First_Parser::compare_terms method
  • WP 4.9.5 support


  • WP 4.9.1 support
  • The plugin classes renamed for compatibility with third-party themes


  • Bug fix: in add_skip_tags method


  • WP 4.7.4 support
  • New feature: «Skip tags» options added


  • WP 4.5.1 support
  • Pagination update


  • Bug fix: in setting disable_terms_descriptions option


  • Bug fix: in setting cur_url variable


  • Bug fix: in compare terms links with page link function


  • WP 4.2 support
  • Bug fix: form revert to add new term state after term update


  • New feature: «Convert in custom posts types» options added
  • New feature: shortcodes support added
  • New feature: wptexturize support added
  • New feature: word forms support added to CSV export
  • Bug fix: edit term with post_id link type bug fixed


  • Bug fix: empty nofollow and nofollow attributes notice fixed


  • Bug fix: mistakes in links counting method fixed
  • Mockpress updated


  • Serbo-Croatian translations were added (thanks to Borisa Djuraskovic, http://www.webhostinghub.com)


  • Interface updated in accordance to WP 3.8 requirements
  • New feature: batch terms removal added
  • New feature: nofollow attribute support added
  • New feature: noindex tag support added


  • Bug fix: Undefined index notice for text_before and text_after variables fixed
  • Description updated


  • «convert unlimited terms» with «consider existing links» option bug fixed
  • Mockpress added to the plugin


  • New feature: consider existing links option added
  • Bug fix: parse single quotes in terms bug fixed


  • Bug fix: empty word forms check is added


  • New feature: CVS export is added
  • New feature: Long terms first parser is added


  • Additional checks added for external links to prevent self-linking
  • Quotation marks are not included in the links when using the Simple quotes parser


  • New feature: additional quotes type added to «Simple parser with quotes support»


  • New feature: two additional quotes types added to «Simple parser with quotes support»
  • Bug fix: number of post titles in autocomplete list increased


  • New feature: terms search
  • New option: open link in a new tab
  • Bug fix: replacements in h{1..6} tags are fixed


  • New option: wrap links with arbitrary text
  • Bug fix: the plugin now uses default database charset and collation during table creation
  • The plugin version updated according with very old releases


  • New feature: disable plugin for individual post
  • New option: maximum transformations number
  • New option: add title attribute to links
  • Bug fix: «Link to itself» in posts with non-latin URLs


  • «Link to itself» bug fix


  • Administration interface updated
  • Database structure updated
  • Export / import functions are added
  • Packet terms upload function is added
  • Different parsers support is added
  • Simple parser is added
  • Simple parser with quotes support is added
  • Permalinks update function is added
  • Bug fixes


  • «Convert terms only on single pages» option is added.
  • Custom posts types partial support is added.
  • Bug fix: Convert first «-1» term occurrences means «no limit».


  • Generation of terms links is optimized


  • « » quotes support is added


  • Now you can use quotes in terms


  • Custom permalinks structure support added. Now when you change permalinks structure all links will be updated automatically.


  • Bug fix: the plugins JS code was loaded on every admin page


  • Bug fix: post titles with quotes was not properly escaped


  • Term input field replaced with textarea (entering word forms will be more comfortable)
  • Bug fixes


  • Links Class attribute support added.
  • Mistakes in Russian translated corrected


  • Automated terms-to-links convertion in posts and/or coments.
  • Limitation of terms-to-links convertion for one post.
  • Support of several word forms.
  • Terms CRUD operations.