Title: OZY Custom Fields
Author: idanishrangaiz
Published: <strong>July 29, 2026</strong>
Last modified: July 29, 2026

---

Search plugins

![](https://ps.w.org/ozy-custom-fields/assets/banner-772x250.png?rev=3627139)

![](https://ps.w.org/ozy-custom-fields/assets/icon-256x256.png?rev=3627139)

# OZY Custom Fields

 By [idanishrangaiz](https://profiles.wordpress.org/idanishrangaiz/)

[Download](https://downloads.wordpress.org/plugin/ozy-custom-fields.1.2.2.zip)

 * [Details](https://wordpress.org/plugins/ozy-custom-fields/#description)
 * [Reviews](https://wordpress.org/plugins/ozy-custom-fields/#reviews)
 *  [Installation](https://wordpress.org/plugins/ozy-custom-fields/#installation)
 * [Development](https://wordpress.org/plugins/ozy-custom-fields/#developers)

 [Support](https://wordpress.org/support/plugin/ozy-custom-fields/)

## Description

OZY Custom Fields is a beginner-friendly way to add custom fields to any WordPress
site, with every advanced feature included for free. Build field groups visually,
decide where they appear with flexible location rules, and read your data on the
front end with a clean template API.

**Everything free.** No paywall for the features that matter — repeater, group, 
and clone fields are in the box, alongside 24 field types.

**AI Field Generator.** Describe what you need in plain language — English or Urdu—
and the plugin drafts a whole field group for you. On WordPress 7.0+ it uses the
AI Client built into WordPress, so whichever provider you have connected under **
Settings  Connectors** is used automatically and no key is stored by this plugin.
On older versions, or if you prefer, you can supply _your own_ provider key (free-
tier options like Groq and Google Gemini are supported). Either way nothing is sent
anywhere without your explicit action. See the **External Services** section below
for exactly what is transmitted.

**Beginner-first.** A Quick Start wizard sets up your first fields in a few clicks—
no need to know what a “custom post type” is. It can even create a matching content
type for you, if you want one.

**Developer friendly.** A full template API, shortcodes, block editor blocks, a 
REST API, and dozens of action and filter hooks to extend everything.

#### Field types

Text, Textarea, Number, Email, URL, Password, Select, Multi-Select, Checkbox, Radio,
Toggle, True/False, Image, File, Gallery, WYSIWYG, Date, Date & Time, Time, Color,
Link, Post Object, Taxonomy, User — plus the advanced **Repeater**, **Group**, and**
Clone** fields.

#### Where fields can appear

Attach field groups by post type, post status, post format, page template, or user
role — with multiple rule groups combined using AND/OR logic. Fields render on post,
term, and user edit screens and save to standard WordPress meta.

#### Template API

    ```
    ozycf_get_field( 'price' ) returns a value, `ozycf_the_field( 'price' )` prints it, and repeaters loop cleanly:

    if ( ozycf_have_rows( 'slides' ) ) { while ( ozycf_have_rows( 'slides' ) ) { ozycf_the_row(); ozycf_the_sub_field( 'title' ); } }
    ```

Also available: `ozycf_get_fields()`, `ozycf_has_field()`, `ozycf_get_sub_field()`,
the `[ozycf_field]` and `[ozycf_repeater]` shortcodes, and the “OZY Field” and “
OZY Repeater” blocks.

#### Built by OZY Solutions

Learn more at [ozysolutions.com](https://ozysolutions.com).

### External Services

This plugin does not contact any external service as part of its normal operation.
Creating field groups, saving values, and displaying fields on your site are entirely
local to your WordPress installation.

The plugin’s **optional** AI features are the only functionality that transmits 
data off your server. They are disabled until an AI provider is available, and a
request is made only at the moment you click an AI action in the admin (for example“
Generate”, “Improve group”, or “Test connection”). No AI request is ever made on
the front end, on a schedule, or in the background.

#### Which service is contacted

You choose the provider, in one of two ways.

**Preferred, on WordPress 7.0 and later:** the plugin calls the AI Client bundled
with WordPress core. WordPress routes the request to whichever provider you connected
under **Settings  Connectors**, and WordPress — not this plugin — holds the credentials.
Which company receives the data therefore depends on that connector; consult its
own terms and privacy policy.

**Fallback, or by choice:** if you paste a provider key under **Custom Fields  Settings**,
the plugin calls that provider directly using the WordPress HTTP API. Depending 
on your selection, requests go to one of the following:

 * **OpenAI** — endpoint `https://api.openai.com/v1/chat/completions` — [Terms of Use](https://openai.com/policies/terms-of-use/)—
   [Privacy Policy](https://openai.com/policies/privacy-policy/)
 * **Anthropic (Claude)** — endpoint `https://api.anthropic.com/v1/messages` — [Terms](https://www.anthropic.com/legal/consumer-terms)—
   [Privacy Policy](https://www.anthropic.com/legal/privacy)
 * **Google (Gemini)** — endpoint `https://generativelanguage.googleapis.com/v1beta/
   models/` — [Terms](https://ai.google.dev/gemini-api/terms) — [Privacy Policy](https://policies.google.com/privacy)
 * **Groq** — endpoint `https://api.groq.com/openai/v1/chat/completions` — [Terms of Use](https://groq.com/terms-of-use/)—
   [Privacy Policy](https://groq.com/privacy-policy/)
 * **Mistral AI** — endpoint `https://api.mistral.ai/v1/chat/completions` — [Terms](https://mistral.ai/terms/)—
   [Privacy Policy](https://mistral.ai/terms/#privacy-policy)

#### What data is sent

Only what the AI feature needs to do its job, plus your API key for authentication:

 * The description you type into the AI prompt box.
 * For helpers that operate on an existing field group (improve, generate location
   rules, generate conditional logic, suggest field types, bulk rename), the structure
   of that field group: field names, labels, types, and settings.
 * For the schema converter, the field definition text you paste in.
 * For the content-model generator, the site type or description you provide.

No post content, no field _values_, no user data, and no site visitor data are transmitted.
If no AI provider is connected in WordPress and you never enter an API key, no external
request is possible.

Because the site owner supplies the API key and triggers each request, the site 
owner is responsible for disclosing this third-party processing in their own privacy
policy where required.

## Screenshots

[⌊The drag-and-drop field group builder.⌉⌊The drag-and-drop field group builder.⌉[

The drag-and-drop field group builder.

[⌊Location rules — decide exactly where a field group appears.⌉⌊Location rules —
decide exactly where a field group appears.⌉[

Location rules — decide exactly where a field group appears.

[⌊The AI Field Generator: describe your fields, get a field group.⌉⌊The AI Field
Generator: describe your fields, get a field group.⌉[

The AI Field Generator: describe your fields, get a field group.

[⌊The Quick Start wizard for first-time setup.⌉⌊The Quick Start wizard for first-
time setup.⌉[

The Quick Start wizard for first-time setup.

[⌊Custom fields on the post edit screen.⌉⌊Custom fields on the post edit screen.⌉[

Custom fields on the post edit screen.

[⌊Settings — bring your own AI provider keys.⌉⌊Settings — bring your own AI provider
keys.⌉[

Settings — bring your own AI provider keys.

## Blocks

This plugin provides 4 blocks.

 *   OZY Field
 *   OZY Repeater
 *   OZY Gallery
 *   OZY Relationship

## Installation

 1. Upload the `ozy-custom-fields` folder to `/wp-content/plugins/`, or install through
    the Plugins screen in WordPress.
 2. Activate the plugin.
 3. Follow the Quick Start wizard, or open **Custom Fields  Add New** to build a group
    by hand.
 4. (Optional) To use the AI Field Generator, add a provider key under **Custom Fields
    Settings**.

## FAQ

### Does this send my content to any external service?

Not on its own. The plugin makes no external request of any kind until you explicitly
use the optional AI features, which call the AI provider you configured with your
own API key. Nothing is sent in the background, and there is no telemetry, tracking,
or update check. The **External Services** section documents precisely what is sent,
when, and to whom.

### Do I need to pay for AI?

No. The AI features are entirely optional — the plugin is fully functional without
them. On WordPress 7.0+ they use whatever provider you have connected to WordPress
itself, so there is nothing extra to configure here. Otherwise you can use free-
tier providers such as Groq or Google Gemini with your own key. Paid providers (
OpenAI, Anthropic, Mistral) are also supported if you prefer them.

### Where are my field values stored?

In standard WordPress meta tables (post, term, and user meta) and in the options
table for Options Pages, so they remain accessible via the REST API, WP-CLI, and
normal backups. Field group definitions are stored in a dedicated plugin table.

### Will my data be deleted if I uninstall?

No, unless you explicitly opt in. Deleting the plugin keeps your data by default;
a setting under **Settings** lets you request full cleanup on uninstall.

### Can I move field groups between sites?

Yes. Use **Tools** to export groups as JSON and import them elsewhere, or sync all
groups with a local file for version control and staging workflows.

### Is it translation ready?

Yes. All strings are translation-ready with the `ozy-custom-fields` text domain.
Translations are contributed and delivered through translate.wordpress.org, so no
translation files are bundled with the plugin.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“OZY Custom Fields” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ idanishrangaiz ](https://profiles.wordpress.org/idanishrangaiz/)

[Translate “OZY Custom Fields” into your language.](https://translate.wordpress.org/projects/wp-plugins/ozy-custom-fields)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/ozy-custom-fields/),
check out the [SVN repository](https://plugins.svn.wordpress.org/ozy-custom-fields/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/ozy-custom-fields/)
by [RSS](https://plugins.trac.wordpress.org/log/ozy-custom-fields/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.2.2

 * Fixed: a field added in the builder kept the machine name `new_field`, `new_field_2`
   and so on, because the name stopped following the Field Label as soon as the 
   row was created. New fields now take their name from the label until you edit
   the name yourself.
 * Fixed: the `wp ozycf` WP-CLI commands were defined but never registered, so `
   wp ozycf list`, `export`, `import` and `generate` were unavailable. They now 
   work, and the Documentation screen shows the correct flags for them.
 * All rendered markup now passes through a shared wp_kses() allowlist at the point
   of output, including the values returned by shortcode and block render callbacks.
 * Submitted arrays are unslashed and normalised on input before the per-field-type
   sanitisers run.
 * JSON folder sync now defaults to a folder inside the uploads directory instead
   of wp-content.
 * WP-CLI export writes through the WordPress filesystem API and validates the target
   path.

#### 1.2.1

 * AI now uses the AI Client built into WordPress 7.0 by default, so the provider
   and its credentials are managed by WordPress under Settings  Connectors. The 
   existing bring-your-own-key providers remain available as a fallback on older
   versions.
 * Shortcodes are now prefixed `ozycf_` (`[ozycf_field]`, `[ozycf_repeater]`, `[
   ozycf_image]`, `[ozycf_gallery]`, `[ozycf_relationship]`).
 * Translations are delivered through translate.wordpress.org; no translation files
   are bundled.

#### 1.2.0

 * Redesigned admin UI: a clean top navigation bar (Field Groups, Post Types, Taxonomies,
   More), a lighter page header with the primary action, and single-column, full-
   width field settings.
 * Fixed: the “Add Field” button could do nothing on sites where another plugin 
   had deregistered jQuery UI — the builder now loads independently, and drag-to-
   reorder degrades gracefully when jQuery UI Sortable is unavailable.
 * Quick Start now builds complete setups: the matching post type, its taxonomies,
   and multiple field groups (with repeaters and galleries) for Real Estate, Portfolio,
   Hospital, Services, Agency, Events, Products, and more.
 * New in-app Documentation screen (More  Documentation), organised into topic tabs
   instead of one long page — Getting started, Field types, Show a field, Repeater&
   Group, Images & galleries, Relationships, Post types & taxonomies, Options pages,
   Shortcodes, Page builders, AI helpers, and Import/export & sync.
 * Documentation now also covers a full field-type reference (what every type gives
   you back), creating post types and taxonomies, and the import/export/JSON-sync
   workflow.
 * Translations: the bundled `.pot` template now covers all translatable strings,
   and the Urdu translation ships compiled so it actually loads.

#### 1.1.0

 * New field group edit experience: group-level tabs (Fields, Location, Presentation,
   Settings, AI) with full-width settings panels.
 * Field rows now have their own tabs: General, Validation, Presentation, Conditional
   Logic, and Advanced.
 * Group presentation controls: style, position, label and instruction placement,
   menu order, description, and “hide on screen” for standard editor panels.
 * Field-level additions: placeholder, prepend/append text, min/max length, min/
   max value, pattern, custom error message, width, wrapper class/ID, REST visibility,
   and REST field name.
 * Visual choices editor (value / label rows) for Select, Multi-Select, Radio, and
   Checkbox, with backward-compatible loading of the old text format.
 * Expanded field-type options across text, number, choice, media, date, relationship,
   and structural field types.
 * More location rules — Specific Post, Attachment, Taxonomy, Taxonomy Term, Current
   User, User Form, and Block — plus a natural-language rule builder.
 * Field groups can now attach to taxonomy term screens (add and edit) and the add-
   new-user form, saving to term and user meta.
 * Field-group blocks: enable “Show in block editor” on a group to insert it as 
   a block, edit its fields in the sidebar with a live preview, and store the values
   in the block itself.
 * Options Pages: register settings screens and read their values with ozycf_get_field(‘
   name’, ‘option’ ).
 * AI helpers on the new AI tab: improve a group, generate location rules, generate
   conditional logic, suggest better field types, bulk rename, design an options
   page, and convert a pasted field schema.
 * Tools: export a group as a PHP registration file; register groups from code with
   ozycf_add_local_field_group().
 * Optional JSON folder sync for version control and staging workflows.
 * WP-CLI: wp ozycf list, export, import, and generate.
 * Admin-bar field search that jumps straight to any field.

#### 1.0.2

 * Post Types: the full breadth of register_post_type() options — description, menu
   position, custom archive slug, visibility (publicly queryable, exclude from search,
   admin UI/menu/nav/admin bar, parent menu), permalinks (rewrite slug, with-front,
   feeds, pagination, query var), REST base & namespace, capabilities (capability
   type, map meta cap, export, delete with user), extra supports (trackbacks, post
   formats), and custom label overrides.
 * Taxonomies: matching advanced options — description, visibility, permalinks, 
   REST, sort, and custom label overrides.
 * Advanced options are grouped into collapsible sections (Visibility, Permalinks,
   REST API, Capabilities, Custom labels).
 * AI content-model generator now sets an appropriate menu icon and can emit the
   new post type / taxonomy options.

#### 1.0.1

 * Fixed the AI Field Generator modal not closing when clicking the close (×) button
   or the overlay.
 * Added Escape-key support to close the AI Field Generator modal.

#### 1.0.0

 * Initial release.
 * 24 field types plus Repeater, Group, and Clone.
 * Visual field group builder with drag-and-drop reordering.
 * Location rules (post type, status, format, template, user role) with AND/OR logic.
 * Template API, shortcodes, and dynamic block editor blocks.
 * REST API: field values on core endpoints and a field-group CRUD API.
 * AI Field Generator with multi-provider support and automatic fallback.
 * Quick Start wizard with optional custom post type creation.
 * Import, export, and local file sync.

## Meta

 *  Version **1.2.2**
 *  Last updated **7 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 5.9 or higher **
 *  Tested up to **7.0.2**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [custom fields](https://wordpress.org/plugins/tags/custom-fields/)[custom post type](https://wordpress.org/plugins/tags/custom-post-type/)
   [field builder](https://wordpress.org/plugins/tags/field-builder/)[metadata](https://wordpress.org/plugins/tags/metadata/)
   [repeater](https://wordpress.org/plugins/tags/repeater/)
 *  [Advanced View](https://wordpress.org/plugins/ozy-custom-fields/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/ozy-custom-fields/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/ozy-custom-fields/reviews/)

## Contributors

 *   [ idanishrangaiz ](https://profiles.wordpress.org/idanishrangaiz/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/ozy-custom-fields/)