To generate HTML markup a special array with all the necessary parameters is used, which can be changed if necessary using the filter hooks.
Example of filter base structure
array(1) {
["template"] => array(4) {
["type"] => string(3) "tag"
["tag"] => string(3) "div"
["attributes"] => array(5) {
["class"] => array(2) {
[0] => string(12) "bapf_sfilter"
["filter_type"] => string(10) "bapf_ckbox"
}
["data-op"] => string(2) "OR"
["data-taxonomy"] => string(7) "pa_size"
["data-name"] => string(6) "Size"
["id"] => string(6) "bapf_1"
}
["content"] => array(2) {
["header"] => array(4) {
["type"] => string(3) "tag"
["tag"] => string(3) "div"
["attributes"] => array(1) {
["class"] => array(1) {
[0] => string(9) "bapf_head"
}
}
["content"] => array(1) {
["title"] => array(4) {
["type"] => string(3) "tag"
["tag"] => string(2) "h3"
["attributes"] => array(0) {
}
["content"] => array(1) {
["title"] => string(6) "Size"
}
}
}
}
["filter"] => array(4) {
["type"] => string(3) "tag"
["tag"] => string(3) "div"
["attributes"] => array(1) {
["class"] => array(1) {
[0] => string(9) "bapf_body"
}
}
["content"] => array(1) {
["list"] => array(4) {
["type"] => string(3) "tag"
["tag"] => string(2) "ul"
["attributes"] => array(0) {}
["content"] => array(3) {
["element_0"] => array(4) {
["type"] => string(3) "tag"
["tag"] => string(2) "li"
["attributes"] => array(0) {}
["content"] => array(2) {
["checkbox"] => array(3) {
["type"] => string(8) "tag_open"
["tag"] => string(5) "input"
["attributes"] => array(4) {
["data-name"] => string(1) "L"
["id"] => string(10) "bapf_1_558"
["type"] => string(8) "checkbox"
["value"] => int(558)
}
}
["label"] => array(4) {
["type"] => string(3) "tag"
["tag"] => string(5) "label"
["attributes"] => array(1) {
["for"] => string(10) "bapf_1_558"
}
["content"] => array(1) {
["name"] => string(1) "L"
}
}
}
}
["element_1"] => array(4) {
["type"] => string(3) "tag"
["tag"] => string(2) "li"
["attributes"] => array(0) {}
["content"] => array(2) {
["checkbox"] => array(3) {
["type"] => string(8) "tag_open"
["tag"] => string(5) "input"
["attributes"] => array(4) {
["data-name"] => string(1) "M"
["id"] => string(10) "bapf_1_559"
["type"] => string(8) "checkbox"
["value"] => int(559)
}
}
["label"] => array(4) {
["type"] => string(3) "tag"
["tag"] => string(5) "label"
["attributes"] => array(1) {
["for"] => string(10) "bapf_1_559"
}
["content"] => array(1) {
["name"] => string(1) "M"
}
}
}
}
["element_2"] => array(4) {
["type"] => string(3) "tag"
["tag"] => string(2) "li"
["attributes"] => array(0) {}
["content"] => array(2) {
["checkbox"] => array(3) {
["type"] => string(8) "tag_open"
["tag"] => string(5) "input"
["attributes"] => array(4) {
["data-name"] => string(1) "S"
["id"] => string(10) "bapf_1_560"
["type"] => string(8) "checkbox"
["value"] => int(560)
}
}
["label"] => array(4) {
["type"] => string(3) "tag"
["tag"] => string(5) "label"
["attributes"] => array(1) {
["for"] => string(10) "bapf_1_560"
}
["content"] => array(1) {
["name"] => string(1) "S"
}
}
}
}
}
}
}
}
}
}
}