About this plugin
MetaWise SEO adds a meta box to public post types and a settings page under Settings → MetaWise SEO. It outputs SEO meta tags in wp_head and serves an XML sitemap.
Post editor
The meta box appears on all public post types except attachments, at normal/high priority. It stores six meta keys:
- _ifat_seo_writer_title — overrides the document title via the document_title_parts filter.
- _ifat_seo_writer_description — printed as <meta name="description">.
- _ifat_seo_writer_focus_kw — used only by the on-screen checks; not output on the front end.
- _ifat_seo_writer_canonical — printed as <link rel="canonical"> when set.
- _ifat_seo_writer_noindex — adds noindex via the wp_robots filter and excludes the post from the sitemap.
- _ifat_seo_writer_nofollow — adds nofollow via the wp_robots filter.
All six are registered with register_post_meta() using an edit_post auth callback. Empty values are deleted rather than stored. The box shows a search-result preview, character counters for the title (30–60) and description (120–160), and pass/warn checks for description presence, title length, content word count (300) and focus keyword placement.
The checks recalculate on save.
Front end output
Printed on wp_head at priority 1:
- description — from post meta, falling back to the excerpt, then to the first 30 words of the content. On the front page it uses the home description setting, then the site tagline. On term archives it uses the term description.
- Open Graph — og:locale, og:type, og:title, og:description, og:url, og:site_name, og:image, plus article:published_time and article:modified_time on single posts.
- Twitter — twitter:card, twitter:site, twitter:title, twitter:description, twitter:image.
The sharing image is the featured image at large size, falling back to the default image set in the settings. Open Graph and Twitter output can each be turned off.
Robots
Applied through the wp_robots filter. Search results are set to noindex by default; category, tag and date archives and author archives are opt-in. Per-post noindex and nofollow are applied on singular views.
XML sitemap
xml through a rewrite rule on the ifat_seo_writer_sitemap query var, sent as application/xml with an X-Robots-Tag: noindex, follow header. It includes the home page plus up to 1,000 published entries from the selected post types, ordered by modified date descending. Posts marked noindex and password-protected posts are excluded.
txt when the site is public. While enabled, the core WordPress sitemap is disabled via wp_sitemaps_enabled to avoid two sitemaps.
The file name is configurable on the settings page, so the sitemap can live at a less predictable URL. Saving a new name rewrites the rule and removes the old one, so the previous URL stops responding. xml extension is always added by the plugin.
Storage
Settings live in a single option, ifat_seo_writer_settings, sanitized on save with register_setting(). The settings page requires the manage_options capability. The plugin makes no external HTTP requests.
Filters
- ifat_seo_writer_meta_box_post_types — post types that get the meta box.
- ifat_seo_writer_meta_description — the description before it is printed.
- ifat_seo_writer_sitemap_entries — sitemap entries before rendering.