Сортировка по предопределенным полям

More
5 years 7 months ago #7845 by Видео мотылек
Добрый день.
Я переопределил макет вашего модуля.
<?php foreach($fields as $v) : ?>
		<div class="jlmf-section">
            <?php if($fields['0']==$v) {echo "<div style='display:none;'>
        <input type='checkbox' value='Россия (АВС)' id='pakety-3-89' name='jlcontentfieldsfilter[6][]'checked='checked'  class='jlmf-checkbox'>
        <label class='jlmf-sublabel' for='pakety-3-89'>Россия (АВС)</label>
    </div>"; } else {if($fields['2']==$v){} else {echo $v;}};?>
		</div>	
        <?php endforeach; ?>
Видите мои изменения в шаблоне.
Задача была на разных страницах выводить Блог Категорий , отсортированный по разным полям.
Работает, но не так , как хотелось бы.
Выводится весь материал Блока Категорий и лишь после сортировки по другому полю появляется правильно отсортированный материал.
Как сделать, чтобы при первичной загрузке материал сразу правильно фильтровался?

Please Log in or Create an account to join the conversation.

More
5 years 7 months ago #7846 by Видео мотылек
Думаю в mod_jlcontentfieldsfilter.xml вставить поле для вода значение поля для первичной фильтрации.
И в файл helper.php ставить фильтрацию по params взятому из mod_jlcontentfieldsfilter.xml
Нужна ваша помощь, что и в какое место Хелпера вставлять?

Please Log in or Create an account to join the conversation.

More
5 years 7 months ago - 5 years 7 months ago #7848 by JoomLine
Не совсем понял вашу задачу, Вы хотите, чтоб при переходе в категорию, уже были отсортированы по заданным параметрам статьи?
Для этого вы можете включить режим get и получить уже ссылку со всеми параметрами.
Ну и эти параметры можете передавать post если вам необходимо сразу отсортировать без изменения url.
Last edit: 5 years 7 months ago by JoomLine.

Please Log in or Create an account to join the conversation.

More
5 years 7 months ago - 5 years 7 months ago #7850 by Видео мотылек
ссылка не устраивает. И нужен только метод POST без Ajax (это связано в шаблонизацией блока категории с привязкой модальных окон).
Нужно создать несколько модулей на базе фильтра и привязать их к разным пунктам меню. Каждый модуль фильтрует по заранее выбранному и указанному в модуле (.xml файл) полю материала.
Мои попытки
В mod_jlcontentfieldsfilter.xml
<field name="field_paket" type="text" default="скопипастите из полей" label="Название поля..." description="" size="10"  filter="integer"/>
В mod_jlcontentfieldsfilter.php вставил
$field_paket = $params->get('field_paket');//моя вставка
В checkboxes.php это отредактировал
<?php
    $i = 1;
    $groups = array_chunk($options, ceil(count($options) / $count_cols));
    foreach($groups as $options) {
        echo '<div>';
        foreach($options as $k => $v) {
            $checked = in_array($v->value, $value) ? ' checked="checked"' : '';
if ($v->value==$field_paket) {$checked='checked="checked"';};
    ?>
но файл ХЕЛПЕР не получает переменную $field_paket из mod_jlcontentfieldsfilter.php
Last edit: 5 years 7 months ago by Видео мотылек.

Please Log in or Create an account to join the conversation.

More
5 years 7 months ago - 5 years 7 months ago #7851 by Видео мотылек

Видео мотылек wrote: ссылка не устраивает. И нужен только метод POST без Ajax (это связано в шаблонизацией блока категории с привязкой модальных окон).
Нужно создать несколько модулей на базе фильтра и привязать их к разным пунктам меню. Каждый модуль фильтрует по заранее выбранному и указанному в модуле (.xml файл) полю материала.
Мои попытки
В mod_jlcontentfieldsfilter.xml вставил строку

<field name="field_paket" type="text" default="скопипастите из полей" label="Название поля..." description="" size="10"  filter="integer"/>
В mod_jlcontentfieldsfilter.php вставил строку
$field_paket = $params->get('field_paket');//моя вставка
В checkboxes.php это отредактировал часть блока
<?php
    $i = 1;
    $groups = array_chunk($options, ceil(count($options) / $count_cols));
    foreach($groups as $options) {
        echo '<div>';
        foreach($options as $k => $v) {
            $checked = in_array($v->value, $value) ? ' checked="checked"' : '';
if ($v->value==$field_paket) {$checked='checked="checked"';};
    ?>
но файл checkboxes.php не получает переменную $field_paket из mod_jlcontentfieldsfilter.php

Last edit: 5 years 7 months ago by Видео мотылек.

Please Log in or Create an account to join the conversation.

More
5 years 7 months ago #7853 by Видео мотылек
Ну хоть подскажите место в коде, где формируется первоначальная загрузка всего блока категории (всего материала для фильтрации)!
Я ХЕЛПЕР смотрю и не могу найти это место.

Please Log in or Create an account to join the conversation.

More
5 years 7 months ago #7861 by JoomLine
я признаться так и не понял, что вы хотите эти сделать. Если вам нужно передать POST это все не нужно.
Ну либо я не понимаю сокровенного смысла.

Please Log in or Create an account to join the conversation.

More
5 years 7 months ago #7862 by JoomLine
Если я правильно все таки понял, то вам просто надо значения устанавливать по умолчанию поля... в зависимости от пунктам меню.
Может быть просто воспользоваться этой опцией? s.mail.ru/FvvF/bxdb6TT1z

Please Log in or Create an account to join the conversation.

More
5 years 7 months ago #7863 by Видео мотылек
Нет, редактировать по "по умолчанию" - это не то.
Нечто вроде ссылки мне нужно. Но только ссылка дает уродливый URL и не позволяет менять шаблон модуля фильтрации.
Поэтому мне хочется внести изменения в модуль.
В файл XML я добавил позицию с выбором значения поля для фильтрации.
В результате , установив модуль с этим значением, я получаю то , что надо. Но первичная загрузка материала идет без предварительной фильтрации - это не устраивает.
ВОПРОС. В каком месте кода задать первичную фильтрацию при загрузке страницы (не меняя URL) по параметру из XML?

Please Log in or Create an account to join the conversation.

More
5 years 7 months ago #7864 by JoomLine
если вам нужно задать значения фильтру для фильтрации шлите post js скриптом с фронта.

Please Log in or Create an account to join the conversation.

More
5 years 7 months ago #7868 by Видео мотылек
Тогда ответьте , пожалуйста , на такой вопрос.
1)Вначале загрузка контента и лишь после выбора "чекбокса" идет фильтрация?
2)Или возможно настроить модуль так, чтобы до загрузки страницы происходила фильтрация по полю? (ссылка не подходит)
Если второй пункт возможет, то где в модуле менять код?

Please Log in or Create an account to join the conversation.

More
5 years 7 months ago - 5 years 7 months ago #7881 by JoomLine
Мы решили облегчить создание SEF ссылок на гитхаб есть компонент который позволит конструировать sef ссылки github.com/Joomline/JlContentFieldsFilter

только это тестовая версия пока, что.
Last edit: 5 years 7 months ago by JoomLine.
The following user(s) said Thank You: Видео мотылек

Please Log in or Create an account to join the conversation.

Powered by Kunena Forum

Last from the forum

    • jomexej304
    • The crimson peony shrimp sushi is big. The shrimp body is almost 9 centimeters long. It's miles sweet and chewy. The beef is thick and very scrumptious. The clam meat cooked with sake is sweet and has no sand. 
    • In Component / Afisha Joomla
    • Баг?
    • У меня одна категория материалов. В этой категории несколько сотен материалов. Есть несколько кастомных полей.Первое типа list (categorywork), другие* list c мультивыбором. Другие* зависят от первого Атрибут showon (categorywork:1, categorywork:2 и так далее). Какие настройки я должен сделать на вкладке "Параметры фильтрации", что бы в модуле подбора вылезали не сразу все "Другие", а только та, которая зависит от showon (как это реализовано в Joomla)? Установлена Joomla 5.1.4 + JL Content Fields Filter v.3.0.0 То есть вылезают все select, даже те которые содержат в себе параметры отсутствующие у материалов (не назначенные к материалам). Изображения: раз: drive.google.com/file/d/1wDtY_iBL5StjrTv...3co/view?usp=sharing два: drive.google.com/file/d/1Vqy5MlJWC15i3z1...nbo/view?usp=sharing
    • In Modules Joomline / JL Content Fields Filter
    • sports
    • Tesla CEO Elon Musk was snubbed from TIME Magazine’s “Most Influential People in AI” list, despite being the driving force behind the company’s self-driving efforts, data collection, and the development of the humanoid robot Optimus, along with other projects, like xAI. TIME released its list today, highlighting what it intended to be a compilation of the most brilliant names in AI. Those on the list have achieved big things, and the names on the list are not to be discredited in any way. Some of the names on the list are the biggest in tech and AI development. Jensen Huang, CEO of Nvidia, Sam Altman, CEO of OpenAI, Satya Nadella, CEO of Microsoft, and Mark Zuckerberg, CEO of Meta, are all included on the list. These are just a few of the names that TIME listed as the most influential in AI, but Musk was not included.  
    • In Общий форум / Общие вопросы по Joomla
© 2010- JoomLine
The Joomla!® name is used under a limited license from Open Source Matters in the United States and other countries. joomline.net is not affiliated with or endorsed by Open Source Matters or the Joomla! Project.

email: This email address is being protected from spambots. You need JavaScript enabled to view it.