bitrix-seo
Installation
SKILL.md
SEO module (seo)
Baseline: main 23.0+ · Verified: seo 26.100.0, main 26.800.0
Loader::includeModule('seo') before any class below. Page title/description of iblock content is not stored here: InheritedProperty in bitrix-iblocks (rules/query-seo-perf.md). Landing counters/meta: hooks in bitrix-landing.
Sitemap
| Class | Role |
|---|---|
Bitrix\Seo\Sitemap\Internals\SitemapTable |
b_seo_sitemap rows: SITE_ID, ACTIVE, NAME, DATE_RUN, serialized SETTINGS |
Bitrix\Seo\Sitemap\Job |
Background build by agent: markToRegenerate(), addJob(), doJobAgent(), STATUS_* |
Bitrix\Seo\Sitemap\Generator |
One step of a build: init($step, $state), run(), getStep(), getState() |
Bitrix\Seo\Sitemap\Type\Step |
Step values: Step::STEPS[Step::STEP_INIT] = 0 … Step::STEPS[Step::STEP_INDEX] = 100 |
Settings saved from a form go through SitemapTable::prepareSettings($settings). Don't write your own XML writer.
Background (preferred): Job::markToRegenerate($sitemapId) creates the job and an agent (first run in 60 s, then every second) that runs one step per hit until done. Agents must run (cron in production, bitrix-background-jobs).