Перейти к публикации

radrigo

Клиенты
  • Публикации

    1 416
  • Зарегистрирован

  • Посещение

  • Дней в лидерах

    58

Сообщения, опубликованные пользователем radrigo

  1. 2 часа назад, celsoft сказал:

    Ошибка означает, что на вашем сервере не установлено PHP расширение FileInfo

    Вам нужно обратиться в службу поддержки вашего хостинга для установки данного PHP расширения.

    Какие-нибудь другие проблемы могут возникнуть из-за отсутствия этого расширения?

  2. Всем привет.

    В DLE не все checkbox оформлены одинаково.

    В большинстве случаев input и label находится рядом

    <input type="checkbox" name="exactname" value="yes" id="exactname">
    <label for="exactname">Точное имя</label>

    Но встречается, когда input расположен внутри label

    <label for="all_word_seach">
        <input type="checkbox" name="all_word_seach" value="1" id="all_word_seach">
        Точное совпадение всех слов
    </label>

    Пример обеих кнопок выше приведён из расширенного поиска.

    Неоднократно пытался красиво их оформить, но без плагина это сделать не получалось. На днях решил опять попробовать и начал искать информацию. В большинстве случаев практически одно и тоже с использованием ::before и ::after через label, так как на input практически никакие стили не действуют.

    На одном забугорном сайте увидел пример оформление checkbox с использованием стиля appearance, при помощи которого можно сбросить внешний вид элемента и заменить своими стилями. После применения этого стиля к input начинают работать background, border, width, height и другие, что уже даёт возможность сделать более красивое оформление checkbox и radio.

    Ниже пример такого оформления, кому интересно. Как это выглядит, можно посмотреть у меня на сайте в расширенном поиске https://gusev-online.ru/index.php?do=search

    input[type="radio"],
    input[type="checkbox"] {
      vertical-align: middle;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      margin: -5px 8px 0 0;
      background-color: #fff;
      outline: 2px solid #007eb4;
      border: 2px solid #fff;
      width: 14px;
      height: 14px;
      cursor: pointer;
      outline-offset: 0;
    }
    input[type="radio"]:checked,
    input[type="checkbox"]:checked {
      background-color: #007eb4;
    }
    input[type="radio"]:focus-visible,
    input[type="checkbox"]:focus-visible {
      -webkit-box-shadow: 0 0 0 4px #008ed6;
              box-shadow: 0 0 0 4px #008ed6;
    }
    input[type="radio"]:disabled,
    input[type="checkbox"]:disabled {
      cursor: not-allowed;
      background-color: #e0e0e0;
      border: 2px solid #e0e0e0;
      opacity: 0.4;
    }
    input[type="radio"]:disabled:checked,
    input[type="checkbox"]:disabled:checked {
      background-color: #007eb4;
    }
    input[type="radio"] {
      border-radius: 7px;
    }

    Всё удачи!

    • Нравится 2
    • Поддерживаю 1
    • Спасибо 1
  3. 5 минут назад, celsoft сказал:

    При быстром редактировании поле для редактирования появляется только если оно было задано. В данном случае оно было для новости задано, а к какой категории новость относиться при быстром редактировании неважно.

    Я это знаю. И это поле никак не могло быть отмечено при добавлении объявления, так как все объявления добавляются через форму на сайте, где этого дополнительного поля просто нет. Однако при редактировании объявления это поле появляется.
    2022-11-02-18-14-33.png

     

  4. Заметил такую особенность.

    У меня есть дополнительное поле "Переключатель Да или Нет", у которого указаны определённые новостные категории.

    Однако при быстром редактирование объявлений с сайта это дополнительное поле по каким-то причинам показывается, хотя категории объявлений в нём не указаны.

    На данный момент помогло разрешение добавления для определённых групп, чтобы другие пользователи при редактировании своих объявлений не видели это поле.

  5. Тестирую новую версию на локальном компьютере. Проблема с количеством загружаемых изображений в дополнительное поле "Загружаемая галерея изображений". Стоит ограничение 5. Но если выбрать 10, то все 10 и загрузит.

    Вроде бы проявляются, когда авторизирован администратором

  6. 6 часов назад, celsoft сказал:

    Через DLE например загрузка картинок это безопасно, он обрабатывает картинку и пересохраняет ее уже как свою картинку, попасть что то постороннее после такой обработки уже не может.

    Даже если эту картинку загружает администратор? Если не ошибаюсь, то раньше движок не обрабатывал картинки при загрузке администратором. Только если конечно её не приходилось уменьшать. Я здесь как-то писал по этому поводу, что это неправильно

  7. 1 час назад, celsoft сказал:

    img тоже является иллюстрацией. И в чем по вашему разница? figure является элементом сематической верстки для создания автономного связанного блока, который является семантически связанным обьектом структуры документа, применяется не только для картинок, но и для других блоков, всевозможных таблиц диаграмм, да даже параграфов. И для картинок его используют чтобы связать описание и саму картинку как сематически единое целое. Так же могут связываться и другие блоки. А не для того чтобы масло намазать маслом. Использование figure без других блоков сематически лишено смысла. А опциональные, они только потому, потому что там могут быть разные блоки внутри figure. Применять его просто, не связывая блок в единую структуру бессмысленно по своей сути, и просто лишний код, сематически лишенный смысла.

    Чтобы вы не говорили, но использование тега figure без подписи допустимо и некоторые так делают. Но вы усложнили эту возможность.

    Хотя можете не обращать на мои слова внимания. Для меня это потеряло актуальность когда узнал, что в figure нельзя использовать увеличение изображения по клику. Точнее использовать можно, но нет возможности.

  8. Добавьте возможность для дополнительного поля "Одна строка" указывать регулярные выражения для атрибута pattern, чтобы иметь возможность запрещать отправлять через это дополнительное поле неправильный контент.

  9. 1 час назад, celsoft сказал:

    Затем, что основное и единственное назначение figure это группировка обьектов в один, и без других обьектов он по своей сути не имеет значения. Вы зачем его ставите, если не собираетесь ничего группировать?

    figure в первую очередь тег, который определяет, что контент в нём является иллюстрацией. Допускается использование без подписи.
    https://developer.mozilla.org/ru/docs/Web/HTML/Element/figure

  10. 9 часов назад, celsoft сказал:

    Да, потому что это совершенно другой код. figure это один код, а для увеличения по клику требуется совершенно иной.

    Почему нельзя код для увеличения по клику, это по сути одна ссылка, вложить в figure?

    Разве такой конструкции что-то мешает?

    <figure>
      <a>
        <img>
      </a>
      <figcaption>...</figcaption>
    </figure>

    Также не получается в редакторе обернуть картинку в figure без описания. Описание, если его даже не указываешь, добавляется автоматически. Приходится открывать исходный код и удалять figcaption. Зачем так сделано, непонятно.

  11. Нашёл.

    Можно выбрать только если отключено "Использовать для визуальных редакторов BB теги для изображений" или если вставлять изображение, прописывая ссылку вручную.

    Однако при включении заголовка в изображении перестаёт работать увеличение по клику. Это ошибка, или так и должно быть?

  12.   

    Здравствуйте.

    Прошу подсказки.

    Сделал проверку ссылки в дополнительном поле на http следующим образом

    Ищу в show.full.php

    $tpl->set( "[xfvalue_{$value[0]}]", $xfieldsdata[$value[0]] );

    Ниже добавляю

    $obUrl = html_entity_decode($xfieldsdata['vkontakte']);
    if (strncasecmp($obUrl, 'https://', 8) != 0 && strncasecmp($obUrl, 'http://', 7) != 0) {
        $obUrl = '//' . $xfieldsdata['vkontakte'];
    }
    $tpl->set("[xfvalue_vkontakte]", $obUrl);

    Всё работает, но есть пару вопросов.

    1 )Делал ещё таким образом и тоже работает. Как по вашему мнению будет правильнее?

    $obUrl = $xfieldsdata['vkontakte'];
    if (strncasecmp($obUrl, 'https&#58;//', 12) != 0 && strncasecmp($obUrl, 'http&#58;//', 11) != 0) {
    	$obUrl = '//' . $xfieldsdata['vkontakte'];
    }
    $tpl->set("[xfvalue_vkontakte]", $obUrl);

    2) И ещё в show.full.php есть такая строка, где отличается только первая переменная

    $tpl2->set( "[xfvalue_{$value[0]}]", $xfieldsdata[$value[0]] );

    В каких случаях дополнительные поля обрабатываются этой строчкой? Может под ней тоже стоит прописать подобный код?

    Заранее признателен всем за подсказку!

  13. Здравствуйте.

    Подскажите пожалуйста, есть ли возможность вставить изображение в новость через редактор TinyMCE, чтобы картинка и описание были обёрнуты в figure и figcaption соответственно?

    Вроде бы писали, что такая возможность есть в TinyMCE, но не могу понять, как это сделать.

    Заранее признателен за подсказку.

  14. 12.09.2022 в 15:48, Gameer сказал:

    Что вам вообще сделать то нужно?

    У меня на сайте в объявлениях пользователи могут добавлять ссылку на свой сайт через дополнительное поле.
    https://gusev-online.ru/obyavleniya/rabota/24651-obrazovatelnyj-centr-ischet-administratora.html

    Пользователи добавляют ссылку то с http, то без. Если в адресе ссылки в rel="" сама ссылка без http, кто добавляется адрес сайта, что мне не надо. Поэтому хочу при помощи модуля проверять, если в ссылке, которая вставлена через дополнительное поле, http. Если нет, то добавлять. Пока эту задачу решил при помощи js. Но хотелось бы, чтобы проверка осуществлялась через php

  15. 4 часа назад, celsoft сказал:

    Кодировать нужно до отправки данных, т.е. до того как оно появится в {include file="engine/modules/redirect.php?obUrl=[xfvalue_vkontakte]"} а не после. 

    Такой конструкцией как вы используете нет, потому как это нарушает стандарты URL и ваша строка не может быть обработана, потому как ваша конструкция получается как {include file="engine/modules/redirect.php?obUrl=http://site.ru"} а таким URL быть не может, параметр должен быть декодирован, и декодирован. Конструкция может быть только такой {include file="engine/modules/redirect.php?obUrl=http%3A%2F%2Fsite.ru"}

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

    В модуль {include file="engine/modules/redirect.php?obUrl=...."} можно передавать параметры только с соблюдением требований к GET запросам и соответственно с соблюдением стандарта URL к таким запросам и никак иначе.

    Не подскажете, как можно реализовать редирект на основе дополнительного поля?

  16. 40 минут назад, celsoft сказал:

    Не стоит забывать что любой URL параметр должен быть URL кодирован https://ru.wikipedia.org/wiki/URL и соответственно передача всего бы то не было в engine/modules/mymod.php?url=[xfvalue_vkontakte] также должна полностью соответствовать стандартам URL и передавать значения нужно предварительно приведя значение в соответствующий вид, или в доп. поле сразу написать его уже в соответствующем виде.

    Так можно вывести URL-адрес через модуль или нельзя?

    Допустим в дополнительном поле прописано следующее
    https://test.ru

    Данный код выводит адрес в шаблоне точно также, как и прописано
    [xfvalue_vkontakte]

    Создал php файл со следующим содержимым
    echo $obUrl;
    Прописал в шаблоне
    {include file="engine/modules/redirect.php?obUrl=[xfvalue_vkontakte]"}
    Выводит только до двоеточия
    https

    Пробовал кодировать при помощи urldecode(), htmlentities(), rawurlencode(), rawurldecode(), прописывая в файле примерно так, но ничего не менялось
    $obUrl = rawurlencode($obUrl);
    echo $obUrl;

    Буду благодарен, если подскажите

  17. Не получается реализовать если в дополнительном поле содержится ссылка с https://.

    Например, дополнительное поле содержит ссылку https://test.ru. По какой-то причине выводит только https

  18. 7 минут назад, celsoft сказал:

    А если вместо url использовать другое имя переменной? Просто судя по всему в данном месте данное имя переменной уже занято другими данными, а ваши параметры не будут переписывать существующие данные.

    Всё получилось. Спасибо за подсказку)

  19. 4 часа назад, Gameer сказал:

    Почему не получается?

    Вы имеете в виду, почему не получается таким методом?
    {include file="engine/modules/mymod.php?url=[xfvalue_vkontakte]"}

    Не знаю почему.

    Например в файле mymod.php единственная строчка
    echo $url;

    На сайте выводится Array

  20. Всем привет.

    Подскажите, как можно получить данные дополнительного поля в модуле?

    Таким методом, если вставить шаблон полной новости, не получается
    {include file="engine/modules/mymod.php?url=[xfvalue_vkontakte]"}

    Заранее всем признателен за подсказку!

×
×
  • Создать...