Title: Simple SEO Noindex Toggle
Author: Saidul Islam Bokul
Published: <strong>2026 年 5 月 22 日</strong>
Last modified: 2026 年 8 月 6 日

---

搜尋外掛

![](https://ps.w.org/simple-seo-noindex-toggle/assets/banner-772x250.png?rev=3555611)

![](https://ps.w.org/simple-seo-noindex-toggle/assets/icon-256x256.png?rev=3544427)

# Simple SEO Noindex Toggle

 由 [Saidul Islam Bokul](https://profiles.wordpress.org/sibokul/) 開發

[下載](https://downloads.wordpress.org/plugin/simple-seo-noindex-toggle.1.1.0.zip)

 * [詳細資料](https://tw.wordpress.org/plugins/simple-seo-noindex-toggle/#description)
 * [使用者評論](https://tw.wordpress.org/plugins/simple-seo-noindex-toggle/#reviews)
 *  [安裝方式](https://tw.wordpress.org/plugins/simple-seo-noindex-toggle/#installation)
 * [開發資訊](https://tw.wordpress.org/plugins/simple-seo-noindex-toggle/#developers)

 [技術支援](https://wordpress.org/support/plugin/simple-seo-noindex-toggle/)

## 外掛說明

**Simple SEO Noindex Toggle** does one job properly: it keeps chosen content out
of search engine indexes. No meta descriptions, no schema, no redirects, no dashboard
widgets you did not ask for — just precise noindex control with a clean interface.

Most site owners do not need a full SEO suite. They need to stop a thank-you page,
a duplicate landing page, or a wall of empty tag archives from showing up in Google.
That is exactly what this plugin covers.

#### Why This Plugin Exists

Every major SEO plugin includes a noindex setting, buried three tabs deep inside
a suite of features you may never touch. If indexing control is the only thing you
need, installing a hundred-file plugin to get it is a poor trade.

This plugin is deliberately narrow. It adds noindex. It never claims to make anything
rank, and it never touches settings outside its own scope. That narrowness is the
point — it means you can read the entire codebase in an afternoon, and it means 
an update is unlikely to change anything you were not expecting.

#### Core Features

**Per-Post Noindex Toggle**

A clean “SEO Settings” meta box appears in the post and page editor sidebar, containing:

 * A smooth CSS toggle switch
 * A live status badge that updates instantly, with no page reload
 * A tag preview showing the exact meta tag that will be output
 * A Tag Verifier button on published posts

**Archive Noindex Controls (new in 1.1.0)**

Individual posts are only half the problem. The pages that most often clutter a 
search index are the ones WordPress generates automatically, and you never wrote
a word of them. Under **SEO Noindex  Settings  Archive Pages** you can exclude:

 * **Author archives** — on a single-author site, this page is a near-copy of your
   blog listing
 * **Date archives** — year, month, and day listings that duplicate content already
   indexed elsewhere
 * **Category archives** — worth excluding when categories are structural rather
   than editorial
 * **Tag archives** — the usual culprit on sites with dozens of tags applied to 
   two posts each
 * **Search results** — internal search pages, which should never be indexed
 * **Paginated pages** — page 2 and beyond of any archive, while page 1 stays indexed

Every one of these is **off by default**. Updating the plugin will never deindex
a page you had not explicitly chosen to exclude.

Archive pages receive `noindex, follow` rather than `noindex, nofollow`. This is
intentional: search engines are told not to list the archive itself, but to keep
following the links on it through to your individual posts. Blocking those links
would waste the internal linking your archives provide.

**Built-in Tag Verifier**

Most noindex tools ask you to trust that the setting worked. This one proves it.

Clicking “Verify Tag in Source” makes a live server-side request to the post’s public
URL and parses the returned HTML with PHP’s DOMDocument, checking whether the robots
tag is genuinely present in the page your visitors receive. Results appear inline:

 * ✓ **Confirmed** — the noindex tag is live, with the exact tag shown as found
 * ⚠ **Not Found** — no noindex in the source, most often a caching issue
 * ✕ **Error** — the page could not be fetched, with the reason given

This catches the failure mode that silently costs people months: a caching layer
or CDN serving a stale copy of the page without the tag, while the admin screen 
cheerfully reports everything is fine.

**Admin Bar Indicator**

A live status badge in the WordPress admin bar shows whether the current post carries
a noindex flag. Visible on the frontend while browsing any singular post or page,
and inside the post editor. Clicking it opens the editor.

**Post List Table Column**

A sortable “SEO” column on the Posts and Pages list tables, so you can audit your
whole site at a glance instead of opening posts one by one.

**Bulk Actions**

Two bulk actions on the Posts and Pages list tables — **SEO: Add Noindex** and **
SEO: Remove Noindex** — with a dismissible notice confirming how many posts were
updated.

**Quick Edit Support**

A “Noindex this post” checkbox inside the Quick Edit row, pre-populated with the
post’s current state. Toggle without opening the full editor.

#### What Gets Output

On a singular post or page with the toggle enabled, this tag is added near the top
of `<head>`:

    ```
    <meta name="robots" content="noindex, nofollow" />
    ```

On an archive page matching an enabled setting, the directive is merged into WordPress
core’s own robots tag rather than added separately, producing something along these
lines:

    ```
    <meta name="robots" content="noindex, follow, max-image-preview:large" />
    ```

The exact contents vary depending on what else your site adds to the robots tag.
Filtering the core tag rather than printing a second one means you never end up 
with two competing robots tags on the same page.

#### Technical Highlights

 * **OOP architecture** — singleton classes with an `SSNIT_` prefix throughout
 * **No jQuery** — 100% vanilla JavaScript using the Fetch API
 * **DOMDocument parsing** — the Tag Verifier uses real HTML parsing, not fragile
   regex
 * **Secure** — nonce verification and capability checks on every write operation,
   with output escaped throughout
 * **Clean uninstall** — all options and post meta removed on deletion, multisite
   included
 * **Near-zero frontend footprint** — no scripts or stylesheets loaded on the public
   site

#### Who Is This For?

Site owners, developers, and content teams who want precise indexing control without
adopting a full SEO platform. It works standalone, and it works alongside Yoast,
Rank Math, or AIOSEO if you already have one installed.

### How to Verify the Plugin Is Working

**Method 1 — Built-in Tag Verifier (recommended)**

 1. Enable the Noindex toggle on a published post and save.
 2. Click **Verify Tag in Source** in the SEO Settings meta box.
 3. A green ✓ Confirmed result appears, showing the exact tag found in the live page
    source.

**Method 2 — View Page Source**

 1. Visit the published post on the frontend.
 2. Right-click  **View Page Source** (or press `Ctrl+U` / `Cmd+U`).
 3. Press `Ctrl+F` and search for `noindex`.
 4. The robots tag appears near the top of `<head>`.

For archive pages, visit the archive itself — an author or tag listing, for example—
and search the source the same way.

**Method 3 — Google Search Console**

 1. Open **URL Inspection** in Google Search Console.
 2. Paste the URL and click **Test Live URL**.
 3. Under **Page Indexing**, Google reports that a noindex tag was detected.
 4. Under **HTTP response  Detected meta tags**, the robots tag is listed explicitly.

**Method 4 — site: Search Operator**

After Google recrawls the page, typically within 24 to 72 hours, searching `site:
yourdomain.com/post-slug` returns no result.

## 螢幕擷圖

[⌊Main settings page⌉⌊Main settings page⌉[

Main settings page

[⌊First appearance after activating the plugin on the post editor⌉⌊First appearance
after activating the plugin on the post editor⌉[

First appearance after activating the plugin on the post editor

[⌊Noindex a post from the Quick Edit option⌉⌊Noindex a post from the Quick Edit 
option⌉[

Noindex a post from the Quick Edit option

[⌊Noindex status displayed on the post editor⌉⌊Noindex status displayed on the post
editor⌉[

Noindex status displayed on the post editor

[⌊Bulk actions in the post list⌉⌊Bulk actions in the post list⌉[

Bulk actions in the post list

[⌊Noindex toggle on the post editing page⌉⌊Noindex toggle on the post editing page⌉[

Noindex toggle on the post editing page

[⌊Tag verifier in action⌉⌊Tag verifier in action⌉[

Tag verifier in action

## 安裝方式

**From the WordPress Admin (recommended):**

 1. Go to **Plugins  Add New**.
 2. Search for **Simple SEO Noindex Toggle**.
 3. Click **Install Now**, then **Activate Plugin**.

**Manual Upload:**

 1. Download the plugin ZIP file.
 2. Go to **Plugins  Add New  Upload Plugin**.
 3. Select the ZIP file and click **Install Now**.
 4. Click **Activate Plugin**.

**Manual FTP:**

 1. Extract the ZIP file.
 2. Upload the `simple-seo-noindex-toggle/` folder to `/wp-content/plugins/`.
 3. Go to **Plugins  Installed Plugins** and activate.

**First-Time Setup:**

 1. Go to **SEO Noindex** in the admin sidebar.
 2. Confirm **Enable Plugin**, **Enable for Posts**, and **Enable for Pages** are checked.
 3. Review the **Archive Pages** section and enable the archive types you want excluded.
    All are off by default.
 4. Click **Save Settings**.
 5. Open any Post or Page — the **SEO Settings** meta box appears in the sidebar.
 6. Toggle **Noindex this page** and save.
 7. Click **Verify Tag in Source** to confirm the tag is live.

## 常見問題集

### Can this plugin make a page indexed again?

It can stop excluding a page, which is not quite the same thing. Removing the noindex
flag means this plugin no longer asks search engines to skip the page — but indexing
is still Google’s decision, and other factors on your site may keep the page out.
The green “Indexed” badge means “no noindex flag from this plugin,” not a guarantee
the page sits in Google’s index. Use URL Inspection in Search Console for a definitive
answer.

### Which archive settings should I turn on?

There is no universal answer, but some common patterns hold.

Single-author blogs almost always benefit from noindexing author archives, since
that page duplicates the main blog listing. Date archives are rarely useful to anyone
and are safe to exclude on most sites. Paginated pages are a reasonable default 
to enable.

Category and tag archives need more thought. If your categories carry written descriptions
and pull in search traffic, leave them indexed. If they exist purely to organise
the admin side, exclude them. Check your Search Console performance report before
deciding — if an archive is already earning clicks, leave it alone.

### Why do archive pages get “noindex, follow” instead of “noindex, nofollow”?

Because the two directives answer different questions. `noindex` says “do not list
this page in results.” `nofollow` says “do not follow the links on this page.” On
an archive, the links are the whole point — they lead to the posts you do want indexed.
Adding `nofollow` would tell search engines to stop crawling through to your own
content, which is almost never what anyone wants.

### The Tag Verifier shows “Not Found” even though the toggle is enabled.

This is nearly always caching. The verifier sends a fresh request with a cache-busting
query string and no-cache headers, but some caching plugins and CDNs will still 
serve a stored copy. Purge your cache and verify again. If it still fails, check
the page source manually using Method 2.

### The Tag Verifier says “Could not fetch page source”.

The verifier uses `wp_remote_get()`, which asks your server to make an HTTP request
back to itself. Some local development environments and locked-down hosts block 
this. The plugin still works correctly in these cases — only the verifier is unavailable.
Use Method 2 to check the source directly.

### Does this conflict with Yoast SEO, Rank Math, or AIOSEO?

For archive pages, no. The archive feature filters WordPress core’s robots tag rather
than printing its own, so directives merge cleanly.

For individual posts, the per-post toggle writes its own tag into `wp_head`. If 
another SEO plugin also outputs a robots tag for that post, both will appear in 
the source. Search engines honour the most restrictive instruction, so the result
is still correct — it just looks untidy. To keep things clean, use one plugin’s 
noindex feature per post rather than both.

### Does it support custom post types?

Not yet. Posts and Pages are supported. Custom post type support is planned for 
a future release.

### Will enabling the archive settings deindex pages that currently rank?

It can, which is why every archive option ships turned off and requires you to enable
it deliberately. Before switching one on, open Search Console and check whether 
that archive type is receiving impressions or clicks. If it is, leave it indexed.
Noindex is quick to apply and slow to undo — recovering a deindexed page can take
weeks.

### Does the plugin add custom database tables?

No. Settings live in `wp_options` and per-post flags in `wp_postmeta`, both WordPress
core tables.

### What happens to my data if I delete the plugin?

The `uninstall.php` routine removes all plugin settings (`ssnit_settings` from `
wp_options`) and all per-post noindex flags (`_ssnit_noindex` from `wp_postmeta`).
No orphaned data remains, and the routine is multisite-aware.

Worth noting: deleting the plugin removes the noindex tags too, so any page you 
had excluded becomes eligible for indexing again.

### Does this work with the block editor?

Yes. The meta box renders in the block editor sidebar, and every feature behaves
identically in both the block editor and Classic Editor.

### Does Quick Edit save the noindex setting?

Yes. Quick Edit submits through WordPress’s own AJAX handler, and the checkbox is
processed via the standard `save_post` hook — no custom endpoint involved.

### Can I use this on Multisite?

Yes. Each subsite keeps its own independent settings, and the uninstall routine 
cleans up every subsite.

### Does the plugin slow down my site?

No. Nothing is enqueued on the frontend. Singular pages incur one `get_post_meta()`
call, and archive pages a single options lookup that WordPress has already cached.

## 使用者評論

這個外掛目前沒有任何使用者評論。

## 參與者及開發者

以下人員參與了開源軟體〈Simple SEO Noindex Toggle〉的開發相關工作。

參與者

 *   [ Saidul Islam Bokul ](https://profiles.wordpress.org/sibokul/)
 *   [ SerpTale ](https://profiles.wordpress.org/serptale/)

〈Simple SEO Noindex Toggle〉外掛目前已有 1 個本地化語言版本。 感謝[全部譯者](https://translate.wordpress.org/projects/wp-plugins/simple-seo-noindex-toggle/contributors)
為這個外掛做出的貢獻。

[將〈Simple SEO Noindex Toggle〉外掛本地化為台灣繁體中文版](https://translate.wordpress.org/projects/wp-plugins/simple-seo-noindex-toggle)

### 對開發相關資訊感興趣？

任何人均可[瀏覽程式碼](https://plugins.trac.wordpress.org/browser/simple-seo-noindex-toggle/)、
查看 [SVN 存放庫](https://plugins.svn.wordpress.org/simple-seo-noindex-toggle/)，
或透過 [RSS](https://plugins.trac.wordpress.org/log/simple-seo-noindex-toggle/?limit=100&mode=stop_on_copy&format=rss)
訂閱[開發記錄](https://plugins.trac.wordpress.org/log/simple-seo-noindex-toggle/)。

## 變更記錄

#### 1.1.0

 * **New — Archive noindex controls.** Exclude author archives, date archives, category
   archives, tag archives, internal search results, and paginated pages from search
   engines. All options are off by default; existing sites see no change until enabled.
 * Archive pages use `noindex, follow` so search engines continue crawling through
   to individual posts.
 * Archive directives are merged into WordPress core’s robots tag rather than printed
   separately, avoiding duplicate robots tags in the page source.
 * Settings defaults consolidated into a single source of truth, preventing drift
   between the settings page and the sanitiser.
 * Fixed an internal version constant that was out of sync with the plugin version,
   which could cause browsers to serve outdated admin styles and scripts after an
   update.
 * Corrected the option and post meta names listed in the FAQ, and the class prefix
   referenced in the documentation.
 * The settings page now appears as its own top-level **SEO Noindex** item in the
   admin sidebar instead of sitting under Settings. Existing settings are preserved.
 * Documentation substantially expanded, including guidance on which archive types
   are safe to exclude.
 * Confirmed compatibility with WordPress 7.0.2.

#### 1.0.1

 * WordPress 7.0 compatibility check-up.
 * Screenshots added.
 * Fixed some minor issues.

#### 1.0.0

 * Initial release.
 * Noindex toggle meta box on Posts and Pages with live status badge, tag preview,
   and smooth CSS toggle switch.
 * Built-in Tag Verifier — server-side fetch using PHP DOMDocument HTML parsing 
   for reliable robots meta tag detection; displays the exact tag found in the live
   page source.
 * Admin Bar Indicator — live red/green SEO status badge on the frontend and inside
   the post editor admin bar.
 * Post List Table Column — sortable “SEO” column with green/red colored status 
   badges on Posts and Pages list tables.
 * Bulk Actions — “SEO: Add Noindex” and “SEO: Remove Noindex” for Posts and Pages
   list tables with dismissible result notice.
 * Quick Edit Support — Noindex checkbox inside Quick Edit row, auto-populated from
   current post state via vanilla JavaScript.
 * Settings page under Settings  Simple SEO Noindex with global enable and per-post-
   type controls.
 * 100% vanilla JavaScript — zero jQuery dependency, uses Fetch API.
 * Full uninstall cleanup — removes all options and post meta on plugin deletion.
 * WordPress Coding Standards compliant OOP singleton architecture with SSNIT_ prefix
   throughout.
 * Multisite compatible.

## 中繼資料

 *  版本 **1.1.0**
 *  最後更新 **8 小時前**
 *  啟用安裝數 **20+**
 *  WordPress 版本需求 ** 5.8 或更新版本 **
 *  已測試相容的 WordPress 版本 **7.0.3**
 *  PHP 版本需求 ** 7.4 或更新版本 **
 *  語言
 * [Bengali (Bangladesh)](https://bn.wordpress.org/plugins/simple-seo-noindex-toggle/)
   及 [English (US)](https://wordpress.org/plugins/simple-seo-noindex-toggle/).
 *  [將這個外掛本地化為你的母語版本](https://translate.wordpress.org/projects/wp-plugins/simple-seo-noindex-toggle)
 * 標籤:
 * [deindex](https://tw.wordpress.org/plugins/tags/deindex/)[hide from google](https://tw.wordpress.org/plugins/tags/hide-from-google/)
   [meta robots](https://tw.wordpress.org/plugins/tags/meta-robots/)[noindex](https://tw.wordpress.org/plugins/tags/noindex/)
   [seo](https://tw.wordpress.org/plugins/tags/seo/)
 *  [進階檢視](https://tw.wordpress.org/plugins/simple-seo-noindex-toggle/advanced/)

## 評分

這個項目尚無任何評論記錄。

[Your review](https://wordpress.org/support/plugin/simple-seo-noindex-toggle/reviews/#new-post)

[查看全部使用者評論](https://wordpress.org/support/plugin/simple-seo-noindex-toggle/reviews/)

## 參與者

 *   [ Saidul Islam Bokul ](https://profiles.wordpress.org/sibokul/)
 *   [ SerpTale ](https://profiles.wordpress.org/serptale/)

## 技術支援

使用者可在技術支援論壇提出意見反應或使用問題。

 [檢視技術支援論壇](https://wordpress.org/support/plugin/simple-seo-noindex-toggle/)