Уикипедия:Проектиране на шаблони/Инфокарета

Тази подстраница съдържа плановете и обсъжданията за систематизиране на шаблони за инфокарета (накратко "инфокарета").

Дефиниция редактиране

Предлагам информационните таблици, поставяни по традиция горе вдясно на повечето статии, да бъдат наричани инфокарета. (Алтернативен вариант - инфокутии; нека изберем наименование, за да си организираме работата.)

Схема на категориите редактиране

Поемам ангажимента до около месец да огледам наличните инфокарета, да съставя списък кои се използват, кои не, и къде от какви има нужда.

Поемам ангажимента да съставя схема за организирането на инфокарета по категории. Ако смогна, може да реализирам схемата и като PHP код, удобен за използване в Bgbot, така че да се поддържат лесно с бот. Ще сложа

Засега идеята на схемата е една основна категория (Шаблони за инфокарета), в която да се категоризират по видове и подвидове. Идеята е схемата да е основно дърво, с минимум поставяния на една категория в повече от една надкатегория. Планирането ще се опитам хем да отразява наличното състояние, хем да е плавно и без значими промени скалируемо до големи размери.

Принципи за построяване на инфокарета редактиране

Тези принципи се предвижда да се прилагат за нови шаблони. За повече стройност старите също може да бъдат преработени чрез бот до тях.

По-простите шаблони могат да бъдат и монолитни. Като принципна конструкция обаче предлагам шаблоните да бъдат разглеждани като сложни: шаблон за инфокаре, който може да съдържа шаблони за елементи, те евентуално - шаблони за поделементи, и т.н.

В идеалния случай един и същ елемент за шаблон ще може да се използва в различни шаблони. На практика не очаквам това да се налага често, но е добре да го има като техническа възможност.

Предложените визуална схема и код на шаблони са най-доброто, което ми е хрумнало до момента; всякакво тяхно подобряване или алтернативи са много добре дошли - възможно е с тях да полагаме основа за работата с години напред, нужно е да е добра. Към момента по що-годе сходен (макар и малко дървен) начин са реализирани шаблонът Химкаре и елементите за него. Много от нещата съм разписал тук с излишни подробности: идеята е след дискусията утвърденото да бъде изложено като примери за искащите да направят шаблони.

Визуална схема редактиране

Визуално едно инфокаре се очаква да спазва следната схема:

Заглавие на карето
картинка или картинки
друга обща за карето информация
Заглавие на поделемент 1
Клетка 1 Съдържание
Клетка 2 Съдържание
Заглавие на поделемент 2
Клетка 1 Съдържание
Клетка 2 Съдържание
Текст на забележка към карето

Шаблонна схема редактиране

Горният вид се очаква да бъде постиган чрез шаблони със схема и код, базирани на дадените по-долу.

В зависимост от нуждата схемата и кодът могат да бъдат променяни. След примерните схема и код са дадени някои примери за варианти.

Вид на вложен в статията шаблон редактиране

{{Инфокаре пробно
| Инфокаре пробно картинки {{
  | картинка1 = име или шаблон за повече от една картинка на ред
  | картинка2 = име или шаблон за повече от една картинка на ред
  | инфо1 = друга обща за карето информация
  ...
  }}
| Инфокаре пробно елемент1 {{
  | параметър 1 = Съдържание
  | параметър 2 = Съдържание
  ...
  }}
| Инфокаре пробно елемент2 {{
  | параметър 1 = Съдържание
  | параметър 2 = Съдържание
  ...
  }}
}}

Примерен код на използваните шаблони редактиране

Код на Инфокаре пробно редактиране
{| {{инфокаре формат таблица}}
| {{инфокаре формат заглавие}} | {{{име}}}
|-
{{#if: {{{1|}}} | {{{1}}} }}
{{#if: {{{2|}}} | {{{2}}} }}
{{#if: {{{3|}}} | {{{3}}} }}
{{#if: {{{4|}}} | {{{4}}} }}
{{#if: {{{5|}}} | {{{5}}} }}
{{#if: {{{6|}}} | {{{6}}} }}
{{#if: {{{7|}}} | {{{7}}} }}
{{#if: {{{8|}}} | {{{8}}} }}
{{#if: {{{9|}}} | {{{9}}} }}
{{#if: {{{10|}}} | {{{10}}} }}
{{#if: {{{11|}}} | {{{11}}} }}
{{#if: {{{12|}}} | {{{12}}} }}
{{#if: {{{13|}}} | {{{13}}} }}
{{#if: {{{14|}}} | {{{14}}} }}
{{#if: {{{15|}}} | {{{15}}} }}
|-
| {{инфокаре формат забележка}} | текст на забележка към карето
|}
Код на Инфокаре пробно елемент (1, 2 и пр.) редактиране

Долният код е образец за поделемент от всяко ниво. Ако е поделемент от 2 ниво (поделемент на поделемент), шаблончето за форматиране на заглавието ще се нарича "инфокаре формат заглавие елемент2", и т.н.

{{#if: {{{параметър1|}}}{{{параметър2|}}} | {{!}} {{инфокаре формат заглавие 1}} {{!}} Заглавие на поделемент
  {{!}}-
}}
{{#if: {{{параметър1|}}} | {{!}} {{инфокаре формат параметър 1}} {{!}} Клетка 1:
  {{!}} {{инфокаре формат стойност 1}} {{!}} {{{параметър1}}} 
  {{!}}-
}}
{{#if: {{{параметър2|}}} | {{!}} {{инфокаре формат параметър 1}} {{!}} Клетка 2:
  {{!}} {{инфокаре формат стойност 1}} {{!}} {{{параметър2}}} 
  {{!}}-
}}

Някои варианти на схемата редактиране

Използване на параметър на шаблона за заглавие на клетка редактиране
{{#if: {{{параметър1|}}}{{{параметър2|}}} | {{!}} {{инфокаре формат заглавие 1}} {{!}} Заглавие на поделемент
  {{!}}-
}}
{{#if: {{{параметър2|}}} | {{!}} {{инфокаре формат параметър 1}} {{!}} {{{параметър1}}}:
  {{!}} {{инфокаре формат стойност 1}} {{!}} {{{параметър2}}} 
  {{!}}-
}}
Проверка дали даден параметър е предаден редактиране
{{#if: {{{параметър1|}}}{{{параметър2|}}} | {{!}} {{инфокаре формат заглавие 1}} {{!}} Заглавие на поделемент
  {{!}}-
}}
{{#if: {{{параметър1|}}} | {{!}} {{инфокаре формат параметър 1}} {{!}} Клетка 1:
  {{!}} {{инфокаре формат стойност 1}} {{!}} {{{параметър1}}} 
  {{!}}-
| '''Параметър 1 не е указан!!!''' [[Категория: Статии без указан параметър 1]]
}}
Предаване на параметър за изобразяване на специализиран шаблон редактиране
{{#if: {{{параметър1|}}}{{{параметър2|}}} | {{!}} {{инфокаре формат заглавие 1}} {{!}} Заглавие на поделемент
  {{!}}-
}}
{{специализиран шаблон 1 | {{{параметър1}}} }}

(Да осигури табличните символи за редове, клетки, форматиране и пр. се очаква от Специализиран шаблон 1.)

Принципи на схемата редактиране

Като основа карето е таблица с 2 колони. Ако е необходимо даден ред да има една колона, клетките се сливат с colspan="2". Ако е необходимо да има 3 или повече колони, клетките на реда се сливат в една, в която се влага таблица с необходимия брой колони. Препоръчва се вложената таблица да има само един ред; ако е нужен повече от един, при възможност се влагат едноредови таблици на колкото е нужно реда в основната таблица. Желателно е да е форматирана като изглед така, че да не разваля изгледа на таблицата на карето.

Подшаблоните трябва при влагането си в основния шаблон (или надшаблона си) да реализират редове от основната таблица, а не вложени таблици, освен когато е необходим брой колони, различен от 2. Правилото е, че табличната структура на подшаблон се осигурява от подшаблона, а не от надшаблона му: например редът, на който се помества шаблон, се реализира като символи за клетки и редове от подшаблона, а не от надшаблона.

Форматиране на инфокарета редактиране

Форматирането на инфокаретата се очаква да се извършва чрез шаблони за форматиране на инфокарета.

Шаблонът за форматиране се поставя в съответна клетка на таблицата (виж примерите в кода на каретата по-горе). Включва параметри за форматиране, в CSS и/или класически стил. Обединяването на колоните на даден ред и пр. се върши също чрез него.

Дефинирани са следните основни шаблони за форматиране на инфокарета и техни елементи:

  • Форматиране на таблица - форматира таблицата като цяло.
  • Форматиране на заглавие - форматира клетката със заглавието на карето (и като правило обединява клетките на реда в една)
  • Форматиране на заглавие на вложка - форматира клетката със заглавието на вложка (и като правило обединява клетките на реда в една). Може да има различни варианти за различните нива на влагане.
  • Форматиране на клетка за параметър - форматира клетката, в която се изписва името на параметъра (лявата клетка на реда). Може да има различни варианти за различните нива на влагане.
  • Форматиране на клетка за стойност - форматира клетката, в която се изписва стойността на параметъра (дясната клетка на реда). Може да има различни варианти за различните нива на влагане.
  • Форматиране на забележка - форматира клетката със забележка към таблицата или отделната вложка. Може да има различни варианти за различните нива на влагане.

По подобие на тези основни шаблони могат да се създават форматиращи шаблони, специализирани за карета от определен тип (примерно ако е нужно каретата на статии в определена област да имат различен изглед). Тези шаблони се използват в съответните карета вместо основните.

Други въпроси редактиране

Да вписват ли инфокаретата автоматично статията в категории редактиране

Опитът ми от БГ-Фантастика показва, че е голямо удобство. Предлагам като принцип да се поощрява, но и да се внимава с него.