| 开发者 | sumitsingh |
|---|---|
| 更新时间 | 2026年7月26日 01:05 |
| PHP版本: | 7.4 及以上 |
| WordPress版本: | 7.0 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
rankbix-seo folder to /wp-content/plugins/.Yes. Rank Bix SEO supports WooCommerce products in the post editor meta box, bulk SEO editor, sitemap, and schema features.
Yes. Rank Bix SEO supports public custom post types with UI. They can be used in the SEO meta box, sitemap, and bulk editor.
Yes. Go to Rank Bix SEO → Content Manager → Import SEO tab and choose your source plugin. Rank Bix SEO can import SEO titles, meta descriptions, focus keywords, canonical URLs, and noindex settings.
No. Rank Bix SEO is designed for performance. The XML sitemap is cached, AI model lists are loaded only when needed, and redirects use a dedicated database table with a fast lookup process.
Yes. You need at least one API key from a supported AI provider. AI features do nothing if no key is configured.
No. Data is only sent when you configure an AI provider API key and manually click an AI generation button in the post editor.
When you click an AI generation button, Rank Bix SEO sends the post title and optionally a plain-text excerpt of the post content to the selected provider. You can disable sending post content in Settings → Advanced → AI Keys → Allow sending post content. When disabled, only the post title is sent.
Yes. Go to Rank Bix SEO → Settings → Sitemap and uncheck Auto-pings Google & Bing on publish.
Add this function to your theme template:
<?php rankbix_seo_breadcrumbs(); ?>
Alternatively, use the shortcode:
[rankbix_seo_breadcrumbs]
Use this shortcode on any page:
[rankbix_seo_sitemap]
Optional shortcode attributes include show_tags="0", columns="3", and orderby="date".
Visit any redirected URL and append ?rankbix_seo_debug_redirect=1. Logged-in administrators can see redirect match details instead of being redirected.
Yes. You can use only the features you need, such as meta titles, descriptions, Open Graph, sitemap, schema, redirects, or breadcrumbs.
_wp_attached_file meta is written after add_attachment fires)build_trail()) used by both the visual renderer and JSON-LD schema output, ensuring they never drift out of sync. The trail now handles WooCommerce products (shop page + deepest product category ancestors), standard blog posts (blog archive page + category ancestors), hierarchical pages (all page ancestors), custom post types (archive link + first hierarchical taxonomy path), taxonomy archives (term ancestors for nested categories/tags), date archives (year, month, day with linked parent levels), search results, 404 pages, and author archives. All breadcrumb links include aria-current="page" on the final item for accessibility and Google compliance.#breadcrumbs, IndexNow to #tools, LLMs.txt to #robots, Robots to #robots. Modules with no dedicated settings section show an Active badge only.--rbs-bc-link, --rbs-bc-current, --rbs-bc-sep-color, --rbs-bc-size) with defaults, making Pro style overrides possible without modifying the stylesheet. Font size unified to 16px (14px on mobile). Elementor kit override compatibility added via !important on color and font-size declarations.else branch returning only the site name.%post_title% in a taxonomy title template now resolves to the term title instead of showing literally when called without a post object. All remaining unresolved %variable% placeholders are automatically stripped after replacement so they never appear in the browser tab.RankBixSEO_TOC::add_heading_ids() and maybe_auto_insert() declared a strict string type on the $content parameter. Yoast SEO calls get_the_excerpt() internally which triggers the the_content filter with null, causing a fatal TypeError. Both methods now accept ?string (nullable) and return early safely.%post_title% not replaced on archives - When a taxonomy title template was saved containing %post_title%, it was passed through resolve_template() with a null post object, leaving the placeholder literal in the browser title.get_title() had no is_post_type_archive() branch, so post type archive pages returned only get_bloginfo('name') instead of the archive title.rankbix_seo_home_title option. When WordPress is configured to use a static page as the front page, the SEO title lives in the page's own post meta (_rankbix_seo_title), not the global option. The widget now checks post meta for static front pages, suppressing the alert when the title is set on the page itself. The alert link also now points directly to the page editor rather than General settings.[pfc id="62"] from appearing in generated copy./wp-sitemap.xml) is now automatically disabled. Having two sitemaps active at once causes duplicate URLs and confuses search engine crawlers. If the sitemap module is turned off, the WordPress default comes back as normal._elementor_css, _fl_builder_cache_ver, _bricks_page_styles, ct_css_style, _et_pb_css) are now excluded from the duplicate copy, forcing each builder to generate clean, post-ID-correct CSS on first open.rankbix_seo_llmstxt_enabled database option had previously been set to disabled. The enabled state is now read from the module toggle (consistent with all other modules) rather than the stale option, so the file is written correctly whenever the LLMs.txt module is active - no manual workaround or settings re-save needed.edited_term hook, and any post transition away from published does the same./llms.txt if the content field is left blank, so you can review it before deciding whether to customise it./llms.txt file and the PHP fallback response both output > instead of > when the stored content contained HTML-encoded characters. html_entity_decode() is now applied in both the static file writer and the PHP serve path so the raw Markdown character is always written correctly.rankbix-seo namespace. The FAQ Block (rankbix-seo/faq) lets you add unlimited question/answer pairs in the editor; schema is injected automatically into the page's JSON-LD without any manual configuration. The HowTo Block (rankbix-seo/howto) provides title, total time (ISO 8601), and unlimited steps (name + description); HowTo schema is generated automatically from block data. Both blocks use save: () => null (server-side rendering) so schema stays up to date without re-saving posts. Block styles are loaded only on pages that use the blocks.RankBixSEO_ContentExtract) - New utility class that extracts post content from all major page builders: Elementor (JSON meta), Beaver Builder (serialised meta), Bricks Builder, and Oxygen Builder, with a fallback to post_content for Divi, WPBakery, and standard block/classic content. All keyword analysis, readability scoring, and AI content generation now use page-builder-aware content instead of raw post_content, giving accurate results on builder-powered sites. An in-request cache prevents duplicate meta reads within a single page load.robots.txt file exists at the site root, the Editor widget now reads and displays the actual file content instead of the WP defaults placeholder. The section label changes to "Physical file content". Three new action buttons appear: Regenerate file rebuilds the physical file from WP defaults (filtered via apply_filters('robots_txt', ...)) plus saved custom rules; Delete file removes the physical file so WordPress's virtual robots.txt takes over again. When no physical file exists, a Generate robots.txt file button creates one. All actions run via AJAX, show an inline status message, and automatically reload the page to reflect the new state.&del=N from a previous delete caused both the save and delete handlers to fire in sequence, displaying "Redirect deleted." instead of "Redirect saved." The three action checks are now an exclusive if / elseif / elseif chain so only one fires per request.wpml_object_id filter for per-language URL resolution; custom field translation for WPML can be configured via WPML → Settings → Custom Fields Translation.<url> entry in the XML sitemap now includes <xhtml:link rel="alternate" hreflang="..."> tags for every available translation, with an additional x-default entry pointing to the default-language version. The xmlns:xhtml namespace declaration is added to <urlset> only when hreflang links are present, keeping single-language sitemaps unchanged. Translated post URLs are injected as their own <url> entries with their own full hreflang set - ensuring Google sees reciprocal hreflang on every language version. Sitemap caches are automatically invalidated when a translation is saved (pll_save_post / wpml_translation_job_saved), so the sitemap always reflects the latest translation state.sitemap_index.xml was incorrectly
outputting a flat <urlset> containing every URL on the site in a single file. It now
outputs a <sitemapindex> listing individual sub-sitemaps per content type
(post-sitemap.xml, page-sitemap.xml, category-sitemap.xml,
post_tag-sitemap.xml), matching the structure search engines expect. The
"← Back to Sitemap Index" link in the browser view now correctly navigates back to the
index instead of reloading the same page. /sitemap.xml now 301-redirects to
/sitemap_index.xml. Trailing-slash variants of sitemap URLs are also redirected to
the canonical form to prevent duplicate indexing.