65 lines
3.6 KiB
XML
65 lines
3.6 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 700" role="img" aria-labelledby="title desc">
|
|
<title id="title">Путь URL до элемента инфоблока в Bitrix</title>
|
|
<desc id="desc">Диаграмма показывает как адрес страницы разбирается шаблоном SEF, превращается в переменные и используется для поиска элемента инфоблока.</desc>
|
|
<defs>
|
|
<marker id="arrow" markerWidth="12" markerHeight="12" refX="10" refY="6" orient="auto">
|
|
<path d="M0,0 L12,6 L0,12 z" fill="#1d3557"/>
|
|
</marker>
|
|
<style>
|
|
.bg { fill: #f5f7fb; }
|
|
.node { fill: #ffffff; stroke: #1d3557; stroke-width: 3; }
|
|
.route { fill: #cde8f0; stroke: #1d3557; stroke-width: 3; }
|
|
.query { fill: #f7d488; stroke: #1d3557; stroke-width: 3; }
|
|
.result { fill: #b9e3c6; stroke: #1d3557; stroke-width: 3; }
|
|
.fail { fill: #f6b3a8; stroke: #1d3557; stroke-width: 3; }
|
|
.line { fill: none; stroke: #1d3557; stroke-width: 3; marker-end: url(#arrow); }
|
|
.label { font: 700 25px Arial, sans-serif; fill: #1d3557; }
|
|
.text { font: 20px Arial, sans-serif; fill: #264653; }
|
|
.code { font: 700 18px "Courier New", monospace; fill: #1d3557; }
|
|
.small { font: 17px Arial, sans-serif; fill: #457b9d; }
|
|
</style>
|
|
</defs>
|
|
<rect class="bg" width="1200" height="700" rx="28"/>
|
|
<text x="56" y="67" class="label">Адрес не ищет запись сам: компонент сначала восстанавливает переменные</text>
|
|
|
|
<rect x="56" y="160" width="238" height="154" rx="18" class="node"/>
|
|
<text x="82" y="209" class="label">Запрос браузера</text>
|
|
<text x="82" y="254" class="code">/catalog/kofe/</text>
|
|
<text x="82" y="281" class="code">classic-250-g/</text>
|
|
|
|
<path d="M294 237 H380" class="line"/>
|
|
|
|
<rect x="390" y="135" width="256" height="205" rx="18" class="route"/>
|
|
<text x="416" y="185" class="label">SEF-шаблон</text>
|
|
<text x="416" y="227" class="code">#SECTION_CODE#/</text>
|
|
<text x="416" y="255" class="code">#ELEMENT_CODE#/</text>
|
|
<text x="416" y="301" class="small">ParseComponentPath</text>
|
|
|
|
<path d="M646 237 H731" class="line"/>
|
|
|
|
<rect x="741" y="135" width="240" height="205" rx="18" class="query"/>
|
|
<text x="767" y="184" class="label">Переменные</text>
|
|
<text x="767" y="225" class="code">SECTION_CODE</text>
|
|
<text x="767" y="254" class="code">ELEMENT_CODE</text>
|
|
<text x="767" y="301" class="small">не запись в БД</text>
|
|
|
|
<path d="M981 237 H1066" class="line"/>
|
|
|
|
<rect x="1076" y="160" width="84" height="154" rx="18" class="node"/>
|
|
<text x="1093" y="209" class="label">Query</text>
|
|
<text x="1092" y="253" class="small">CODE</text>
|
|
<text x="1092" y="279" class="small">+ filter</text>
|
|
|
|
<path d="M1118 314 V431 H941" class="line"/>
|
|
<rect x="692" y="402" width="239" height="133" rx="18" class="result"/>
|
|
<text x="720" y="452" class="label">Элемент найден</text>
|
|
<text x="720" y="490" class="text">детальная страница</text>
|
|
|
|
<path d="M1076 239 H1018 V592 H839" class="line"/>
|
|
<rect x="600" y="564" width="229" height="95" rx="18" class="fail"/>
|
|
<text x="625" y="606" class="label">Нет совпадения</text>
|
|
<text x="625" y="635" class="text">404 или другой путь</text>
|
|
|
|
<text x="56" y="676" class="small">Если шаблон, имя переменной и фильтр расходятся, менять CODE бесполезно: сначала надо увидеть, какое значение восстановлено из URL.</text>
|
|
</svg>
|