PHPackages                             mmikkel/incognito-field - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. mmikkel/incognito-field

ActiveCraft-plugin[Utility &amp; Helpers](/categories/utility)

mmikkel/incognito-field
=======================

PlainText drop-in replacement that can be set to disabled, hidden or readonly.

2.0.1(1y ago)11196.4k↓40%7[2 issues](https://github.com/mmikkel/IncognitoField-Craft3/issues)MITPHPPHP ^8.2

Since Dec 9Pushed 1y ago2 watchersCompare

[ Source](https://github.com/mmikkel/IncognitoField-Craft3)[ Packagist](https://packagist.org/packages/mmikkel/incognito-field)[ RSS](/packages/mmikkel-incognito-field/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (9)Dependencies (1)Versions (13)Used By (0)

Incognito Field plugin for Craft CMS
====================================

[](#incognito-field-plugin-for-craft-cms)

PlainText drop-in replacement that can be set to `disabled`, `hidden` or `readonly`.

Requirements
------------

[](#requirements)

This plugin requires Craft CMS 5.0 or later.

What is it?
-----------

[](#what-is-it)

Incognito Field adds a custom fieldType to Craft CMS called Incognito. Incognito fields work exactly like regular PlainText fields, except that they can be configured to be `disabled`, `readonly` or `hidden` for element edit forms.

A good example use case for Incognito is whenever you need a field that shouldn't be editable via the CP – e.g. if you want to save some data from a feed or external API on your element model.

*Incognito Field works both standalone and inside Matrix blocks.*

Configuring Incognito Field
---------------------------

[](#configuring-incognito-field)

Create a new field (or convert an existing Plain Text field) as *Incognito Field*. Select the rendering mode you want in the *Mode* setting to make the field `hidden`, `readonly`, `disabled` (or a regular, visible and editable PlainText field). Optionally, override the mode in *Mode Override* which you can find in the advanced field settings.

### Overriding the rendering mode with Twig logic

[](#overriding-the-rendering-mode-with-twig-logic)

You can use Twig in the `Mode Override` setting field to optionally override the rendering mode. **A good use case example is to have the field render as an editable PlainText field for admin users, but be hidden, read only or disabled for everyone else.**

#### Mode Override examples

[](#mode-override-examples)

Render as an editable PlainText field if the element is an unsaved draft:

```
{{ element.getIsUnsavedDraft() ? 'plain' }}
```

Render as an editable PlainText field for admin users:

```
{{ currentUser.admin ? 'plain' }}
```

Render as a visible, read-only field for users in a particular user group:

```
{{ currentUser.isInGroup('editors') ? 'readonly' }}
```

Render as an editable PlainText field for users that have *edit site permissions* for a particular site:

```
{% set site = craft.app.sites.getSiteByHandle('germany') %}
{{ currentUser.can('editSite:' ~ site.uid) ? 'plain' }}
```

Disclaimer
----------

[](#disclaimer)

Please report any bugs, feature requests or other issues [here](https://github.com/mmikkel/IncognitoField-Craft3/issues).

###  Health Score

49

—

FairBetter than 95% of packages

Maintenance38

Infrequent updates — may be unmaintained

Popularity41

Moderate usage in the ecosystem

Community14

Small or concentrated contributor base

Maturity83

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 69.8% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~260 days

Total

11

Last Release

477d ago

Major Versions

1.3.0 → 2.0.0-beta.12024-03-25

PHP version history (2 changes)1.3.0PHP ^7.2.5|^8.0.2

2.0.0-beta.1PHP ^8.2

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/298510?v=4)[M. Mikkel Rummelhoff](/maintainers/mmikkel)[@mmikkel](https://github.com/mmikkel)

---

Top Contributors

[![mmikkel](https://avatars.githubusercontent.com/u/298510?v=4)](https://github.com/mmikkel "mmikkel (30 commits)")[![carlcs](https://avatars.githubusercontent.com/u/7516543?v=4)](https://github.com/carlcs "carlcs (12 commits)")[![kennethormandy](https://avatars.githubusercontent.com/u/1581276?v=4)](https://github.com/kennethormandy "kennethormandy (1 commits)")

---

Tags

cmsCraftcraftcmscraft-pluginincognito field

### Embed Badge

![Health badge](/badges/mmikkel-incognito-field/health.svg)

```
[![Health](https://phpackages.com/badges/mmikkel-incognito-field/health.svg)](https://phpackages.com/packages/mmikkel-incognito-field)
```

###  Alternatives

[verbb/navigation

Create navigation menus for your site.

90683.7k17](/packages/verbb-navigation)[verbb/formie

The most user-friendly forms plugin for Craft.

101372.9k40](/packages/verbb-formie)[verbb/comments

Add comments to your site.

13753.1k](/packages/verbb-comments)[verbb/tablemaker

Create customizable and user-defined table fields.

40168.8k1](/packages/verbb-tablemaker)[supercool/tablemaker

Create customizable and user-defined table fields.

40141.7k](/packages/supercool-tablemaker)[pennebaker/craft-architect

CraftCMS plugin to generate content models from JSON/YAML data.

72148.5k5](/packages/pennebaker-craft-architect)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
