{"id":307505,"date":"2026-05-08T10:37:07","date_gmt":"2026-05-08T10:37:07","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/guestpress\/"},"modified":"2026-05-08T10:37:19","modified_gmt":"2026-05-08T10:37:19","slug":"guestdock","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/guestdock\/","author":17211928,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"6.9.4","requires":"5.8","requires_php":"8.0","requires_plugins":null,"header_name":"GuestDock","header_author":"Degird","header_description":"An industry-standard WordPress plugin designed to allow guest users to post content with temporary, strictly limited, and completely isolated access to the WordPress backend.","assets_banners_color":"9ea1a7","last_updated":"2026-05-08 10:37:19","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/degird.com\/","header_plugin_uri":"https:\/\/degird.com","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":27,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"rakibantor","date":"2026-05-08 10:37:19"}},"upgrade_notice":{"1.0.0":"<p>Initial version. Install now to start accepting secure guest posts.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3526422,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3526422,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3526422,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3526422,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3526407,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3526407,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3526407,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3526407,"resolution":"4","location":"assets","locale":""}},"screenshots":{"1":"The Guest Dashboard showing access limits and expiration status.","2":"The Admin interface for managing guest invites and durations.","3":"The Gutenberg editor with GuestDock QA requirements (Word count, featured image).","4":"The Frontend Request Form generated via shortcode."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[3239,96456,1990,262316,600],"plugin_category":[54],"plugin_contributors":[262317],"plugin_business_model":[],"class_list":["post-307505","plugin","type-plugin","status-publish","hentry","plugin_tags-contributor","plugin_tags-editorial-workflow","plugin_tags-guest-post","plugin_tags-sandboxing","plugin_tags-security","plugin_category-security-and-spam-protection","plugin_contributors-rakibantor","plugin_committers-rakibantor"],"banners":{"banner":"https:\/\/ps.w.org\/guestdock\/assets\/banner-772x250.png?rev=3526422","banner_2x":"https:\/\/ps.w.org\/guestdock\/assets\/banner-1544x500.png?rev=3526422","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/guestdock\/assets\/icon-128x128.png?rev=3526422","icon_2x":"https:\/\/ps.w.org\/guestdock\/assets\/icon-256x256.png?rev=3526422","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/guestdock\/assets\/screenshot-1.png?rev=3526407","caption":"The Guest Dashboard showing access limits and expiration status."},{"src":"https:\/\/ps.w.org\/guestdock\/assets\/screenshot-2.png?rev=3526407","caption":"The Admin interface for managing guest invites and durations."},{"src":"https:\/\/ps.w.org\/guestdock\/assets\/screenshot-3.png?rev=3526407","caption":"The Gutenberg editor with GuestDock QA requirements (Word count, featured image)."},{"src":"https:\/\/ps.w.org\/guestdock\/assets\/screenshot-4.png?rev=3526407","caption":"The Frontend Request Form generated via shortcode."}],"raw_content":"<!--section=description-->\n<p><strong>GuestDock<\/strong> is an industry-standard WordPress plugin designed to allow guest users to post content with temporary, strictly limited, and completely isolated access to the WordPress backend.<\/p>\n\n<p>Unlike standard contributor roles, GuestDock creates a \"Sandbox\" environment. Guests are completely siloed: they can only view, edit, and interact with their own posts and their own media uploads. They cannot see other users' drafts, media files, or sensitive site configurations.<\/p>\n\n<p>This plugin is perfect for multi-author blogs, news sites, and brands that want to accept guest contributions without compromising security or site performance.<\/p>\n\n<h3>Key Features:<\/h3>\n\n<ul>\n<li><strong>Strict Sandbox Isolation:<\/strong> Guests are restricted via <code>pre_get_posts<\/code> and <code>ajax_query_attachments<\/code>. They only see what they created.<\/li>\n<li><strong>Time-Limited Access:<\/strong> Set exact expiration dates. Accounts automatically lose access once the time is up.<\/li>\n<li><strong>Post Quantity Limits:<\/strong> Control exactly how many posts a guest can submit.<\/li>\n<li><strong>Advanced Editorial Workflow:<\/strong> Return posts to \"Draft\" with inline feedback notes. Notify guests automatically upon approval.<\/li>\n<li><strong>SEO &amp; Spam Protection:<\/strong> Limit external links per post and automatically inject <code>rel=\"nofollow sponsored\"<\/code> attributes to protected site SEO.<\/li>\n<li><strong>Content QA Enforcement:<\/strong> Disable the \"Submit\" button until guests meet minimum word counts, upload a featured image, and provide an excerpt.<\/li>\n<li><strong>Media Security:<\/strong> Strict MIME type validation, file size limits (e.g., 2MB), and double-extension checks to prevent server abuse.<\/li>\n<li><strong>Frontend Request Form:<\/strong> Use the <code>[guestdock_request_form]<\/code> shortcode to let users apply for guest access directly from your site.<\/li>\n<li><strong>Gutenberg Ready:<\/strong> Native integration with the block editor, providing dynamic \"Post Requirements\" notices to guide authors.<\/li>\n<li><strong>Gutenberg Block Restriction:<\/strong> Prevent malicious layout breaking by restricting guests to only safe blocks (e.g., Paragraph, Image) and disabling Custom HTML\/Code blocks.<\/li>\n<li><strong>Category Locking:<\/strong> Restrict guest posts to specific pre-approved categories to keep your site organization clean.<\/li>\n<li><strong>Custom Instruction Field:<\/strong> Add pre-filled writing guidelines that appear directly in the guest's dashboard and post editor.<\/li>\n<li><strong>Mail Customization:<\/strong> Fully customize the subject and body of all automated emails (Invites, Feedback, Approvals, Requests).<\/li>\n<li><strong>API &amp; XML-RPC Security:<\/strong> Completely disables XML-RPC access and tightly secures REST API endpoints for guest accounts.<\/li>\n<li><strong>Easy Guest Management:<\/strong> Inline editing of expiration dates and post limits directly from the admin dashboard.<\/li>\n<li><strong>Smart User Removal:<\/strong> Delete guests while safely reassigning their posts to an administrator to prevent content loss.<\/li>\n<li><strong>Auto Username Generation:<\/strong> Automatically generate usernames from email prefixes during guest creation.<\/li>\n<li><strong>In-Plugin Documentation:<\/strong> Built-in \"Help\" and \"Shortcode Reference\" tabs for instant admin guidance.<\/li>\n<\/ul>\n\n<h3>Documentation &amp; Resources<\/h3>\n\n<p>For a complete step-by-step guide on how to use GuestDock, including setup and workflows for both administrators and guest authors, please read our <a href=\"https:\/\/wpinlearn.com\/guestdock-user-guide\">GuestDock User Guide<\/a>.<\/p>\n\n<p>To learn more about the philosophy behind GuestDock and why it's the ultimate solution for your WordPress site, check out our blog post: <a href=\"https:\/\/wpinlearn.com\/manage-guest-posts-wordpress-guestdock\">The Ultimate Way to Manage Guest Posts on WordPress<\/a>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>guestdock<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory.<\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress.<\/li>\n<li>Navigate to the <strong>GuestDock<\/strong> menu in your dashboard to configure settings.<\/li>\n<li>(Optional) Create a \"Write for Us\" page and add the <code>[guestdock_request_form]<\/code> shortcode.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"can%20guests%20see%20my%20other%20posts%20or%20media%3F\"><h3>Can guests see my other posts or media?<\/h3><\/dt>\n<dd><p>No. GuestDock uses deep hooks into the WordPress query engine to ensure guests can only see and manage their own content and media uploads.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20a%20guest%27s%20access%20expires%3F\"><h3>What happens when a guest's access expires?<\/h3><\/dt>\n<dd><p>The user will be blocked from logging in or redirected away from the admin area. Their published posts remain on the site, reassigned to a designated administrator if the guest user is deleted.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20the%20block%20editor%20%28gutenberg%29%3F\"><h3>Does this work with the Block Editor (Gutenberg)?<\/h3><\/dt>\n<dd><p>Yes, GuestDock is fully optimized for the modern WordPress block editor and includes custom validation rules directly in the editor UI.<\/p><\/dd>\n<dt id=\"can%20i%20restrict%20guests%20to%20specific%20categories%3F\"><h3>Can I restrict guests to specific categories?<\/h3><\/dt>\n<dd><p>Yes. You can \"lock\" guest users to one or more admin-approved categories to keep your site organization clean.<\/p><\/dd>\n<dt id=\"how%20do%20i%20notify%20guests%20about%20feedback%3F\"><h3>How do I notify guests about feedback?<\/h3><\/dt>\n<dd><p>When you return a post to \"Draft\" status, you can include a feedback note. The guest will see this note prominently on their Guest Dashboard and within the post editor.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial Release.<\/li>\n<li>Core Access Control with the <code>guestdock_guest<\/code> role.<\/li>\n<li>Strict Sandbox isolation for posts and media.<\/li>\n<li>Time-based expiration and post submission quotas.<\/li>\n<li>Editorial workflow with \"Admin Feedback\" system.<\/li>\n<li>Content QA rules: Word counts, link limits, and required images.<\/li>\n<li>SEO protection: Auto-nofollow\/sponsored attributes for guest links.<\/li>\n<li>Frontend <code>[guestdock_request_form]<\/code> shortcode.<\/li>\n<li>Enhancement: Rebranded plugin to GuestDock, updating text domain and metadata.<\/li>\n<li>Enhancement: Refactored asset loading to a standardized enqueue system, removing hardcoded scripts\/styles.<\/li>\n<li>Security: Enforced strict late escaping (<code>esc_html<\/code>, <code>esc_attr<\/code>, <code>esc_url<\/code>) across all views.<\/li>\n<li>Security: Refactored JavaScript data passing to use secure <code>wp_json_encode<\/code>.<\/li>\n<li>Security: Removed \"nag\" UI patterns and hardened administrative capability checks.<\/li>\n<\/ul>","raw_excerpt":"GuestDock is a secure, isolated guest authoring system for WordPress. Invite contributors with time-limited access and strict sandboxing.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/307505","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=307505"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/rakibantor"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=307505"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=307505"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=307505"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=307505"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=307505"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=307505"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}