该技能用于 Bitrix 框架中的信息块(iblock)开发。基线要求 main 23.0+,已验证 iblock 26.0.100、main 26.800.0。
用途:创建和配置信息块、属性、元素与分区,处理权限、SEO 模板及 ORM 实体。
主要能力与用法:
- 基础:ID、ORM 与传统 API 对比、创建 iblock、存储版本、权限规则见 rules/basics.md。
- ORM 实体:编译后的元素/分区类、属性值模型及 ORM 副作用见 rules/orm-entities.md。
- 属性/分区/元素:属性(列表、目录、自定义类型)、分区与元素写入、CODE 见 rules/properties-sections-elements.md。
- 查询与性能:选择、属性过滤、SEO 值、性能见 rules/query-seo-perf.md。
关键约束:需 Loader::includeModule('iblock')。涉及属性的 ORM 需要 iblock API_CODE:使用 Element{ApiCode}Table 和 Model\Section::compileEntityByIblock(),不要用 ElementTable 写入(必然失败)。结构(类型、iblock、属性)通过 CIBlockType/CIBlock/CIBlockProperty。元素/分区通过编译 ORM,或当需要搜索索引、SEO 重算、权限、工作流或自动 CODE 时使用 CIBlockElement/CIBlockSection。ORM 忽略 iblock 权限,需自行检查,或在服务端调用 CIBlockElement::GetList 并设置 CHECK_PERMISSIONS='Y'。iblock、属性与枚举 ID 因环境而异,应按 CODE/API_CODE/XML_ID 解析。目录(HL)属性参见 bitrix-highloadblock;价格、SKU、库存参见 bitrix-catalog。