=== Clouddy ===
Contributors: jaclas
Tags: tag cloud, tags, post_tag, taxonomy
Requires at least: 6.3
Tested up to: 7.0
Requires PHP: 8.0
Stable tag: 0.5.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

A visual tag cloud for WordPress — fast, configured globally, and fully stylable.

== Description ==

Clouddy renders a visual tag cloud (`post_tag` or any other taxonomy) with dynamic sizing
and a smooth color transition based on tag popularity. Configuration is global; embed the
cloud with a block, a widget, or a shortcode.

Sizing and color are computed in PHP only as a normalized weight; the actual font size and
color are produced in CSS (custom properties + `calc()` + `color-mix()`), so you can override
everything with plain CSS — no `!important` needed.

Features:

* Selection modes: most popular, rarest, random, and hybrid (some popular + some rare).
* Display orders independent of selection: by count, alphabetical, random, and "lens" orders
  (longest / most popular / rarest in the center).
* Exclusion blocklist, configurable taxonomy, adjustable size range and colors.
* Server-side cache (Transients) with invalidation on content and term changes.
* Clean, override-friendly HTML; accessible navigation container with an aria-label.

== Installation ==

1. Upload the `clouddy` folder to `/wp-content/plugins/`, or install the plugin through the
   WordPress "Plugins" screen.
2. Activate the plugin through the "Plugins" screen in WordPress.
3. Go to Settings → Clouddy to configure the cloud (the configuration is global).
4. Place the cloud with the `[clouddy]` shortcode, the Clouddy block, or the widget.

== Frequently Asked Questions ==

= How do I change the tag sizes? =

In Settings → Clouddy set the minimum and maximum text size and the unit (rem/em/px). Each
tag's size is interpolated between those values based on the tag's popularity.

= Can I style the cloud with my own CSS? =

Yes. The default stylesheet only sets custom properties on the container; every value can be
overridden with regular CSS, and the default stylesheet can be dequeued entirely.

== Changelog ==

= 0.5.4 =
* Fixed: the block editor preview is now styled correctly (tags are spaced and sized) — the stylesheet is also loaded in the editor, not only on the front end.

= 0.5.3 =
* Lowered the minimum requirements to WordPress 6.3 and PHP 8.0.
* Documentation, readme and metadata cleanup in preparation for the WordPress.org plugin directory.

= 0.5.2 =
* Hybrid mode fix: when the rare share is 0 (or equals the total number of tags), the cloud now respects the limit instead of fetching all tags.

= 0.5.1 =
* The minimum and maximum text size fields now accept two decimal places (step 0.01).

= 0.5.0 =
* Internationalization: the interface base language is now English, with bundled Polish (pl_PL), French (fr_FR), German (de_DE) and Spanish (es_ES) translations. Added the Domain Path header.

= 0.4.0 =
* Three new "lens" display orders: "Longest in the center" (by name length), "Most popular in the center" and "Rarest in the center" (by post count) — the chosen ranking in the middle, the rest toward both ends.
* Panel: the "Random" order option moved to the end of the list.

= 0.3.0 =
* Settings panel: clearer field names and a hint for each option.
* Tag source (taxonomy) as a dropdown of registered taxonomies — no need to type the name from memory.
* Exclusion blocklist as a tag search by name with chips — no manual IDs.
* Cache lifetime given in minutes; the setting actually affects the cache TTL.

= 0.2.0 =
* Split tag selection and display order into two independent settings (new "Order" field: by count, alphabetical, random).

= 0.1.0 =
* Plugin skeleton: bootstrap, autoload, lifecycle hooks.

== Upgrade Notice ==

= 0.5.4 =
Fixes the unstyled tag cloud preview in the block editor.

= 0.5.3 =
Lowered the minimum requirements to WordPress 6.3 and PHP 8.0. Recommended for all users.
