Категории форума

Руководство по тегам в шаблонах - полная версия шпаргалка

Плагин 'xtradbrowusers'. Интеграция и прописание тегов для вывода экстраполей в шаблонах. Текст полной версии шпаргалки в каком шаблоне какие теги прописывать правильно.

webitproff
webitproff • 15.08.2026 21:20 #578

users.tpl или users.contractor.tpl или users.freelancer.tpl

Шаблон списка пользователей, то есть страница сайта, где мы можем фильтровать и искать пользователей по доступным параметрам.
Но в данном конкретном случае нас не интересуют формы вообще!
В отличии, от шаблона регистрации, настройки и редактирования пользователя, мы здесь данные не отправляем в базу, а берем из базы и показываем визитеру.

Такие шаблоны, могут иметь очень разный вид, но в каждом из них будет логический блок "официанта":

<!-- BEGIN: USERS_ROW --> и <!-- END: USERS_ROW -->

это "начало" и "конец" соответственно, то есть пределы, внутри которых мы формируем "лицо" одного элемента, для всех элементов этого списка. 
Если кому будет проще понять, - это "копирка", - вырезали буквы в картонке, сделали трафарет, и пошли под копирку вандалить по стенам домов города, с ведром краски в руках, например, "Покайся!". Ну и так на каждом доме, пока не выйдет кто, да не вправит то, что "сместилось" с моральных координат.

Вобщем находим пределы трафарета

<div class="row row-cols-1 row-cols-md-2 row-cols-lg-3 g-4">
    <!-- BEGIN: USERS_ROW -->
    <div class="col">
        <div class="card h-100 shadow-sm border-0 user-card {USERS_ROW_ODDEVEN}">
            <div class="card-body d-flex flex-column">
            .....
            ......
            </div>
        </div>
    </div>
    <!-- END: USERS_ROW -->
</div>

вставить код, в удобном месте, например сразу после вывода аватара

<!-- IF {PHP|cot_plugin_active('xtradbrowusers')} -->
<!-- О себе -->
<!-- IF {USERS_ROW_XTRA_X020_ABOUT_VENDOR_TEXT} -->
<div class="d-flex mb-3">
    <div class="contact-icon about me-3">
        <i class="fa-solid fa-circle-info fa-xl"></i>
    </div>
    <div>
        <div class="contact-label">{USERS_ROW_XTRA_X020_ABOUT_VENDOR_TEXT_TITLE}</div>
        <div class="contact-value">{USERS_ROW_XTRA_X020_ABOUT_VENDOR_TEXT}</div>
    </div>
</div>
<!-- ENDIF -->
<!-- Телефон (скрыт, показ по кнопке) -->
<!-- IF {USERS_ROW_XTRA_X010_PHONE_VENDOR_ORDERS_VALUE} -->
<div class="d-flex align-items-center mb-3">
    <div class="contact-icon phone me-3">
        <i class="fa-solid fa-phone fa-xl"></i>
    </div>
    <div>
        <div class="contact-label">{USERS_ROW_XTRA_X010_PHONE_VENDOR_ORDERS_TITLE}</div>
        <div class="d-flex align-items-center">
            <span id="phone-{USERS_ROW_ID}" class="contact-value fs-3" style="letter-spacing:2px"></span>
            <button type="button" class="btn btn-outline-primary btn-sm ms-2"
            id="show-phone-btn-{USERS_ROW_ID}"
            data-phone="{USERS_ROW_XTRA_X010_PHONE_VENDOR_ORDERS_VALUE}"
            onclick="document.getElementById('phone-{USERS_ROW_ID}').textContent = this.dataset.phone; this.style.display='none';">
                <i class="fa-solid fa-eye me-1"></i> {PHP.L.xtradbrowusers_details_tpl_show_hidden_content}
            </button>
        </div>
    </div>
</div>
<!-- ENDIF -->
<!-- Telegram (личный) -->
<!-- IF {USERS_ROW_XTRA_X011_TG_VENDOR_ORDERS_VALUE} -->
<div class="d-flex align-items-center mb-3">
    <div class="contact-icon telegram me-3">
        <i class="fa-brands fa-telegram fa-xl"></i>
    </div>
    <div>
        <div class="contact-label">{USERS_ROW_XTRA_X011_TG_VENDOR_ORDERS_TITLE}</div>
        <a href="https://t.me/{USERS_ROW_XTRA_X011_TG_VENDOR_ORDERS_VALUE}" target="_blank" rel="noopener noreferrer" class="telegram-link">
            @{USERS_ROW_XTRA_X011_TG_VENDOR_ORDERS_VALUE}
        </a>
    </div>
</div>
<!-- ENDIF -->
<!-- Telegram-канал -->
<!-- IF {USERS_ROW_XTRA_X012_TG_CHANEL_VENDOR_VALUE} -->
<div class="d-flex align-items-center mb-3">
    <div class="contact-icon telegram me-3">
        <i class="fa-brands fa-telegram fa-xl"></i>
    </div>
    <div>
        <div class="contact-label">{USERS_ROW_XTRA_X012_TG_CHANEL_VENDOR_TITLE}</div>
        <a href="https://t.me/{USERS_ROW_XTRA_X012_TG_CHANEL_VENDOR_VALUE}" target="_blank" rel="noopener noreferrer" class="telegram-link">
            @{USERS_ROW_XTRA_X012_TG_CHANEL_VENDOR_VALUE}
        </a>
    </div>
</div>
<!-- ENDIF -->
<!-- Файл (резюме) -->
<!-- IF {USERS_ROW_XTRA_X200_RESUME_FILE_VALUE} -->
<div class="d-flex align-items-center mb-3">
    <div class="me-3">
        <label>{USERS_ROW_XTRA_X200_RESUME_FILE_TITLE}:</label>
    </div>
    <div>
        <a href="{PHP.cfg.mainurl}/datas/exflds/xtradbrowusers/{USERS_ROW_XTRA_X200_RESUME_FILE_VALUE}"
        class="btn btn-primary btn-sm"
        target="_blank"
        rel="noopener noreferrer">
            <i class="fa-solid fa-download me-1"></i> {PHP.L.Download}
        </a>
    </div>
</div>
<!-- ENDIF -->
<!-- Дата последнего повышения -->
<!-- IF {USERS_ROW_XTRA_X200_LAST_PROMOTION} -->
<div class="d-flex align-items-center mb-3">
    <div class="contact-icon calendar me-3">
        <i class="fa-solid fa-calendar-alt fa-xl"></i>
    </div>
    <div>
        <div class="contact-label">{USERS_ROW_XTRA_X200_LAST_PROMOTION_TITLE}</div>
        <div class="contact-value">{USERS_ROW_XTRA_X200_LAST_PROMOTION}</div>
    </div>
</div>
<!-- ENDIF -->
<!-- Отдел -->
<!-- IF {USERS_ROW_XTRA_X200_DEPARTMENT} -->
<div class="d-flex align-items-center mb-3">
    <div class="contact-icon building me-3">
        <i class="fa-solid fa-building fa-xl"></i>
    </div>
    <div>
        <div class="contact-label">{USERS_ROW_XTRA_X200_DEPARTMENT_TITLE}</div>
        <div class="contact-value">{USERS_ROW_XTRA_X200_DEPARTMENT}</div>
    </div>
</div>
<!-- ENDIF -->
<!-- ENDIF -->
                              

 

Напоминаю. скриншоты смотрим в этой статье.

Про поезда и паравозики не буду, читайте выше. Подробнее также смотрите в моих шаблонах для Cotonti и в файле хукинга этого плагина!  

Отредактировано: webitproff (15.08.2026 21:44, 9 часов назад)
🗿

🧙‍♂️ Радуйся, странниче добрый и честный! Не понапрасну привела тя стезя в земли сии. Зде бо мужи мудры и искусники дела писменнаго и численнаго, что куют словеса и плетут узоры кода, тайны разгадывают и знанием делятся, летописи множа и ремесло цифровое творя.
⬅️ Аще налево пойдеши — обрящеши грамоты древния, писания старинныя и свитки учения. ⬆️ Аще прямо — слово мудрое и совет от мужей разумеющих, что в деле кодописном искусны, получиши. ➡️ Аще направо — сам в писцы и летописцы внидеши, и в ремесло цифровое, где строки и знаки в дело живое обращаются, слово свое в память веков вложиши.
📝 Не медли же — нареки имя свое, и вниди в чин наш, и стань с нами в братстве, где код есть магия, а строки — заклятия живыя, числом и буквою слово едины суть.
🏰 Не тайно есть собрание сие, и не инициации в нем, но многое сокрыто от пришлых и ступалого, понеже не всякому открывается знание, но токмо ищущим и пребывающим в деле сем.