Free your WordPress site from posts! Maintain a static website, a blog-less WordPress.
Disable Blog is a comprehensive plugin to disable the built-in blogging functionality on your site. You’ll be free to use pages and custom post types without the burden of a blog.
The blog is “disabled” mostly by removing the core ‘post’ type, hiding blog-related admin pages/settings, and redirecting urls on both the public and admin portions of your site. Specifically does the following:
- Turns the
posttype into a non-public content type, with support for zero post type features. Any attempts to edit or view posts within the admin screen will be met with a WordPress error page or be redirect to the homepage.
- Disables the post feed and remoives the feed links from the header (for WP >= 4.4.0) and disables the comment feed/removes comment feed link if ‘post’ is the only post type supporting comments (note that the default condition pages and attachments support comments).
- Removes posts from all archive pages.
- Remove ‘post’ post type from XML sitemaps and categories/tags from XML sitemaps, if not being used by a custom post type (WP Version 5.5).
- Disables the REST API for ‘post’ post type, as well as tags & categories (if not used by another custom post type).
- Disables XMLRPC for posts, as well as tags & categories (if not used by another custom post type).
- Disable author archives (redirect to homepage) via
dwpb_disable_author_archivesfilter. Add the following to your theme functions.php file or a custom plugin file:
add_filter( 'dwpb_disable_author_archives', '__return_true' );The plugin by default does not disable author archives because numerous other plugins use author archives for other purposes. (A future settings page will provide more flexibility here). Change the url being used in the redirect with the
- Removes post sitemaps and, if not supported via the
dwpb_disable_author_archivefilter, user sitemaps. User sitemaps can be toggled back on via that filter or directly passing
- Redirects (301):
- All Single Posts & Post Archive urls to the homepage (requires a ‘page’ as your homepage in Settings > Reading)
- The blog page to the homepage.
- All Tag & Category archives to home page, unless they are supported by a custom post type.
- Date archives to the homepage.
- Author archives are not redirected by default, but can per the above mentioned
- Admin side:
- Redirects tag and category pages to dashboard, unless used by a custom post type.
- Redirects post related screens (
post-new.php, etc) to the
pageversion of the same page.
- If comments are not supported by other post types (by default comments are supported by pages and attachments), it will hide the menu links for and redirect discussion options page and ‘Comments’ admin page to the dashboard.
- Filters out the ‘post’ post type from ‘Comments’ admin page.
- Alters the comment count to remove any comments associated with ‘post’ post type.
- Optionally remove/redirect the Settings > Writting page via
dwpb_remove_options_writingfilter (default is false).
- Removes Available Tools from admin menu and redirects page to the dashboard (this admin page contains Press This and Category/Tag converter, both are no longer neededd without a blog).
- Removes Post from ‘+New’ admin bar menu.
- Removes ‘Posts’ Admin Menu.
- Removes post-related dashboard widgets.
- Hides number of posts and comment count on Activity dashboard widget.
- Removes Post Related Widgets.
- Hide options in Reading Settings page related to posts (shows front page and search engine options), as well as matching section in Cusomizer > Homepage Settings view.
- Removes ‘Post’ options on ‘Menus’ admin page.
- Filters ‘post’ post type out of main query.
- Disables “Press This” functionality.
- Disables post by email configuration.
- Hides Category and Tag permalink base options, if they are not supported by a custom post type.
- Hides “Toggle Comments” link on Welcome screen if comments are only supported for posts.
- Hides default category and default post format on Writing Options screen.
- Replace the REST API availability site health check with a duplicate function that uses the
pagetype instead of the
posttype (avoids false positive error in Site Health).
- Replaces the “Posts” column in the user table with “Pages,” linked to pages by that author.
- Remove the “view” link to author archives in the user screen if author archives are not supported.
- Updates the post tag and category “count” columns to correctly show the number of posts by post type, for use with custom post types supporting built-in taxonomies.
Important: If Settings > Reading > “Front Page Displays” is not set to show on a page, then this plugin will not function correctly. You need to select a page to act as the home page. Not doing so will mean that your post page can still be visible on the front-end of the site. Note that it’s not required, but recommended you select a page for the “posts page” setting, this page will be automatically redirected to the static “home page.”
Site Content & Data: This plugin will not delete any of your site’s data, however it does by default redirect all posts and post comments to the homepage (refer to the documentation on ways to change this behavior).
If you have any posts, comments, categories, and/or tags, delete them prior to activation (or deactivate this plugin, delete them, and re-active). If you don’t delete them, they will remain in your database and become accessible if you deactivate this plugin or modify the plugin behavior to show posts.
Comments: Comments remain enabled, unless the ‘post’ type is the only type supporting comments (pages also support comments by default, so the comments section won’t disappear in most cases). If you’re looking to disable comments completely, check out the Disable Comments plugin.
Categories & Tags: These are hidden and redirected, unless they are supported by a custom post type.
Custom Post Types: This plugin includes extensive support for custom post types and taxonomies. If you are using a custom post type that supports the built-in
post_tag taxonomies, they will be visible and accessible through that post type.