外掛說明
這個外掛能讓使用者在首頁、分類彙整頁面、搜尋結果頁面、標籤彙整頁面、作者頁面、RSS 資訊提供、REST API、文章導覽、核心程式內建的 [最新文章] 小工具、XML Sitemap、Yoast SEO 產生的 Sitemap、導覽標記及內部連結建議中隱藏指定內容。
外掛功能
- 在指定彙整頁面及頁面 (首頁、分類彙整頁面、搜尋結果頁面、標籤彙整頁面、作者頁面、日期彙整頁面、網站文章頁面等) 隱藏指定內容
- 在 RSS 資訊提供及 REST API 中隱藏指定內容
- 在 WordPress 核心程式或 Yoast SEO 所產生的 XML Sitemap 中隱藏指定內容
- 在 Yoast SEO 所產生的導覽標記及內部連結建議中隱藏指定內容
- 使用區塊編輯器資訊欄的中繼資料區塊提供完整功能
- 可與區塊編輯器的 [查詢迴圈] 及 [最新文章] 區塊搭配使用
- 支援自訂內容類型:能在任何內容類型中啟用隱藏內容功能
- 整合 WooCommerce:在商店頁面、商品分類彙整頁面及 REST API 隱藏指定商品
- 具備批次編輯及快速編輯以達成高效管理
- 自訂資料庫資料表以最佳化網站效能
- 使用全方位的快取機制提升頁面載入速度
安裝方式
安裝及解除安裝非常簡單,網站管理員使用 WordPress 的自動安裝或依照下列說明手動安裝。
安裝
- 下載外掛安裝套件 ZIP 壓縮檔。
- 將外掛安裝套件 ZIP 壓縮檔解壓縮所得的
whp-hide-posts資料夾上傳至網站的wp-content/plugins目錄。 - 前往網站管理後台的 [外掛] 頁面,然後啟用外掛。
- 前往 [設定]→[隱藏內容],為 [文章] 內容類型之外的內容類型啟用隱藏內容的功能。
解除安裝
- 前往網站管理後台的 [外掛] 頁面,停用外掛後點擊 [刪除]。
使用方式
這個外掛的使用方式非常簡單。啟用外掛後,前往 [設定]→[隱藏內容] 並選取要啟用內容隱藏功能的內容類型。請注意,這個外掛已對 [文章] 內容類型預設啟用內容隱藏功能。
如果需要其他協助,請聯絡外掛開發者 [email protected] 以獲得進一步的相關資訊。
常見問題集
-
這個外掛為我節省了許多時間,如何贊助這個外掛?
-
感謝你的贊助意願,贊助的確能協助我持續改進外掛。進一步了贊助外掛的方式
-
如果要整合其他內容隱藏外掛的功能至 Hide Posts 外掛中,是否可行?
-
可以,但這項需求無法免費提供。如有相關功能需求,請來信至 [email protected] 以進一步聯絡,並留下想整合功能的外掛名稱。
使用者評論
參與者及開發者
變更記錄
2.1.0
Release Date – 24 November 2025
Major Update: Gutenberg Block Editor Support & Custom Database Architecture
New Features
- Full Gutenberg Block Editor Support – Complete React-based sidebar panel with live checkboxes
- Custom REST API Integration – Dedicated REST endpoints for Gutenberg editor (
/whp/v1/hide-settings/{id}) - Select All / Deselect All Buttons – Quick bulk selection in Gutenberg sidebar
- Custom Database Table Architecture – All data stored in
wp_whp_posts_visibilitytable (NO wp_postmeta usage) - Smart Metabox Detection – Classic Editor metabox hidden in Gutenberg to avoid confusion
- SEO Plugin Integration – Hide posts from WordPress XML sitemap, Yoast SEO sitemap, breadcrumbs, and internal link suggestions
- Gutenberg Query Loop Block Support – Hidden posts properly excluded from Query Loop blocks
- Latest Posts Block Support – Hidden posts excluded from Gutenberg Latest Posts block
- Complete Bulk Edit & Quick Edit – Full AJAX functionality for efficient bulk operations
- Migration Notice Improvements – Only shows when legacy data exists with clear migration path
Gutenberg/Block Editor Enhancements
- React-based sidebar panel using WordPress
@wordpress/pluginsAPI - Real-time checkbox state management with React hooks
- Auto-save when clicking Update/Publish (integrated with Gutenberg save cycle)
- Conditional field display (CPT, WooCommerce, Yoast options shown only when relevant)
- WordPress 6.6+ compatibility (
wp.editor.PluginDocumentSettingPanel) - Backward compatibility with older WP versions (
wp.editPostfallback)
Performance Improvements
- 95%+ Faster Migration – Bulk INSERT…SELECT queries instead of individual inserts
- 70% Fewer Database Queries – Custom table optimized with indexes instead of postmeta searches
- Intelligent Cache Invalidation – Only clears changed conditions (80-95% more efficient)
- Object Cache Integration – Full wp_cache support with transient fallback
- Optimized Data Retrieval – Single query fetches all hide settings per post
Security Enhancements
- SQL Injection Prevention – All table names escaped with
esc_sql(), all queries use prepared statements - REST API Permission Checks – Proper
current_user_can()validation on all endpoints - Race Condition Protection – Migration uses transient locks to prevent concurrent execution
- Autosave Protection – Metabox save skipped for WordPress autosaves
- Input Validation – Whitelist validation for bulk edit actions
- Nonce Verification – Separate handling for Classic Editor (nonce required) and Gutenberg (REST API)
Bug Fixes
- Fixed Gutenberg checkbox values all saving as false (React state dependencies issue)
- Fixed Classic Editor metabox appearing in Gutenberg (causing confusion)
- Fixed undefined variable bug in fallback logic
- Fixed migration notice appearing on fresh installations
- Fixed duplicate key errors in custom table (added existence checks)
- Fixed cache invalidation to be condition-specific instead of global
- Added comprehensive database error checking and logging
Technical Improvements
- Custom REST API Class – Dedicated
REST_APIclass handles all Gutenberg endpoints - React State Management – Uses
useState,useEffect,useSelecthooks properly - Database Table with UNIQUE Constraints – Prevents duplicate entries at database level
- Comprehensive Error Logging – Clear messages for debugging database and save issues
- WordPress Coding Standards – Improved code quality and compliance
- Enhanced PHPDoc Documentation – Better inline documentation throughout
- Cleaner Uninstall Process – Removes all plugin options and custom table
Compatibility
- Tested with WordPress 6.7+
- Fully compatible with Gutenberg Block Editor
- Compatible with Classic Editor plugin (when installed)
- Compatible with Yoast SEO (all versions)
- Compatible with WooCommerce
- PHP 7.3+ required
Developer Notes
- Custom database table:
wp_whp_posts_visibility(post_id, condition, UNIQUE constraint) - REST API endpoints: GET/POST
/whp/v1/hide-settings/{post_id} - Data stored ONLY in custom table (wp_postmeta used only for migration fallback)
- Gutenberg script:
/assets/admin/js/whp-gutenberg.js(React-based) - All database queries use prepared statements
- Comprehensive caching with wp_cache and transients (WEEK_IN_SECONDS TTL)
2.0.3
Release Date – 12 January 2024
- Added support for Yoast Duplicate Post to clone the hidden flags over to the new copy
= 2.0.2
Release Date – 30 December 2024
- Updated frontpage / homepage query condition
2.0.1
Release Date – 27 December 2024
- Small updates on the displaying of the flags in admin.
2.0
Release Date – 27 December 2024
- Added custom database table to hold the hide post flags.
- All new Hide flags on posts will be saved in the new database table. A fallback to old data is also added in case the old data is not yet migrated to the new table.
- Added option to migrate the old data from wp_postmeta table to the new table.
1.1.1
Release Date – 05 October 2022
- Bug fix related to checkbox not checked when enabling Hide posts on signle post page.
1.1.0
Release Date – 02 September 2022
- Added option to hide posts on the single post page. This option will hide posts shown in any widget, block (related posts, recent posts etc) on the single post page.
1.0.3
Release Date – 01 September 2022
- Bug fix with conditional logic on when to modify meta query.
1.0.2
Release Date – 20 February 2022
- Hide WooCommerce Product from REST API bug fix.
1.0.1
Release Date – 13 February 2022
- Bug fix. Added check for enabled post type for REST API Hide.
1.0.0
Release Date – 07 February 2022
- Code base optimized and refactored.
- Added option to hide CPT on their own archive page.
- Added option to hide any post type on archive page other than category, tag. Ex: Custom Taxonomy archive page.
- Added option to hide posts in REST API calls.
- Added option to hide Woocommerce Products in REST API calls.
0.5.4
Release Date – 26 December 2021
- Added option to hide posts on the default WordPress Recent Posts Widget
(NOTE: This option will not work on the Latest Posts Gutenberg block. The feature can be tracked here core.trac.wordpress.org/ticket/54580) - Added compatibility with Zeen Theme Load More functionality
0.5.3
Release Date – 15 August 2020
- Fixed jQuery Migrate Helper warning showing in console
0.5.2
Release Date – 12 August 2020
- Added option to select all hide options in post metabox
- Add new column in posts list table that shows on which pages the post is hidden
- Added option in Settigns -> Hide Posts to disable the showing of the said column
0.5.1
Release Date – 19 May 2020
- Added option to hide posts default WordPress post navigation
- Fix for hiding menu items bug
0.5.0
Release Date – 17 April 2020
- Removed option to hide post from REST API added in version 0.4.3 due to conflict with Guttenberg save / update post.
The conflict happens because Guttenberg is using the REST API to save post and load additional data the hide post on REST API was causing conficts with the data.
0.4.4
Release Date – 14 April 2020
- Added option to hide post on date archive page
0.4.3
Release Date – 06 April 2020
- Added option to hide posts from REST API all posts query: /wp-json/wp/v2/posts/
Note: Single post entry in REST API remains available /wp-json/wp/v2/posts/[post_id]
0.4.2
Release Date – 13 February 2020
- Bug fix
0.4.1
Release Date – 13 February 2020
- Workaround added for issue showing warnings when is_front_page() function is called in pre_get_posts filter. This is related to wordpress core and can be tracked at #27015 and #21790
0.4.0
Release Date – 21 December 2019
- Added option to hide posts on the blog page as selected in Settings -> Reading (Posts Page)
0.3.2
Release Date – 13 December 2019
- Bug fix for checking if Woocommerce is active on mutlinetwork site
0.3.1
Release Date – 07 December 2019
- Added option to hide posts in RSS Feed
- Added options to hide Woocommece products on Store (Shop) page and on Product category pages
0.2.1
Release Date – 13 November 2019
- Compatibility checkup with WordPress 5.3
- Added option to enable the Hide Post functionality for additional post types (Check Settings -> Hide Posts)
- Added uninstall.php file to clean up options and post meta added by the plugin
0.1.1
Release Date – 05 September 2019
- Code and compatibility updates.
- Added translateable strings.
0.0.1
Release Date – 11 October 2017
- Public release of ‘WordPress Hide Posts’



