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

Gameer

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

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

  • Посещение

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

    86

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

  1. 1 минуту назад, alex32 сказал:

    А они в админпанели и не должны увеличиваться. На сайте разумеется.

    https://drive.google.com/file/d/14sE4w2r_9lgNgT6xKJ_1vXnUX9UjLlHS/view?usp=sharing обновил, не учел один момент. Старт пост не могу уже отредактировать.

  2. 1 минуту назад, alex32 сказал:

    Оно включено, только после этого чудо-модуля перестает увеличиваться. Остаются тупо картинки.

    Где не увеличивается? В админ панели или на сайте?

  3. 11 часов назад, IgorA100 сказал:

    С перемещением между галереями и перемещением из галереи в доп. поле "Загружаемое изображение" возникли сложности связанные:

    1. С формированием кода Onclick кнопки удаления изображения (ну тут не сложности, а просто надо делать)

    2. Собственно получается что нужно писать еще и громадный кусок JS для обработки этой кнопки, т.к. почему-то для каждого из доп. полей галерей используется свой обработчик удаления...

    3. Контроль количества перемещенных изображений в другую галерею (этого походу только на JS не сделать...)

    Посмотрите сюда 

     

  4. 1528069943_screenshot_1.png

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

    Только для DLE 13.0 и выше.

     

    Установка:

    1. Загрузить архив через систему плагинов.

    2. Активировать плагин.

     

    Скачать: https://drive.google.com/file/d/1JZw9mTed0m6LfFY5EPXizmwZmTwmOZkP/view?usp=sharing

    Поддержать автора: https://punpun.name/blog/59-sortirovka-izobrazhenie-v-galeree-dle.html

  5. Подал как идею реализовать опцию конвертации ссылок с кириллицы в латиницу в дополнительных полях и тегах.

    Но когда будет реализовано, или будет ли реализовано да и следующий релиз не скоро.

     

    Но у нас есть система плагинов (и прямые руки ?) по этому реализуем сами.

    Скачиваете плагин, устанавливаете, заходите в дополнительные поля, и для текстового и списка поля появиться опция Использовать транслит в ссылках включаете опцию вместе с Использовать значения полей как перекрестные гиперссылки и вуаля.

    PfwasHtfRRyHdtah41Cc8A.png

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

    Внимание, работает только на 13.0 (и выше?) и только с включенной опцией Использовать значения полей как перекрестные гиперссылки

     

    Количество файлов для правки 8:

    1. engine/ajax/rebuild.php
    2. engine/inc/xfields.php
    3. engine/inc/addnews.php
    4. engine/inc/editnews.php
    5. engine/modules/show.short.php
    6. engine/modules/show.full.php
    7. engine/modules/show.custom.php
    8. engine/engine.php

    Количество создаваемых ячеек в базе данных: 1

    1. tagvalue_translit

     

    Скачать: https://drive.google.com/file/d/1JFp0BwF1UfQkhkQD6doabnLPaLCBbbR1/view?usp=sharing

    Поддержать автора: https://punpun.name/blog/58-latinica-vmesto-kirillicy-v-url-dopolnitelnyh-polej.html

    • Поддерживаю 1
  6. @celsoft сделать опцию для тегов и отдельно для дополнительных полей с перекрестными ссылками при включении которой ссылки (именно ссылки) будут на латинице (totranslit())

    Добавить опцию выбора сортировки новостей в админ панели по умолчанию. Очень нужна возможность по умолчанию показывать новости по дате редактирования.

  7. 16 минут назад, IgorA100 сказал:

    Напишите лучше, ведь никто не возражает!

    Покритиковать у нас каждый умеет, а вот что-то написать и выложить для всех - могут считанные единицы :(

    Воу воу воу, потише. Я как раз и выкладываю для всех много разного полезного. Так что не нужно писать. Если человек хочет помочь то пусть помогает но с таким кодом...

     

    @alexpsp

     

    https://drive.google.com/file/d/1_Tp9-tUFj__gJaFNnqkl3mZJa6J8gAcI/view?usp=sharing

    1. Залить файл в /engine/modules/
    2. В нужном tpl файле вставить  
      {include file="engine/modules/xf_menu.php?xf_name=XXX"}

      Где XXX - название дополнительного поля на латнице.

    • Нравится 3
    • Поддерживаю 2
  8. 12 минут назад, alex32 сказал:

    чушь какая

    $value[xfields]

    Сначала проверяется константа xfields только потом ключ в массиве.

    $xfields[] = $rows;

    Зачем принимать в массив - массив?

    foreach ($xfields as $value) {

    Зачем делать ненужный цикл?

    array_unshift($stack, $value);
    $stack = array_unique($stack);

    Зачем ненужные функции?

    foreach ( $stack as $value ) {

    Зачем еще один ненужный цикл?

    href='/xfsearch/" . $value . "/'

    Где название дополнительного поля в ссылке и почему нет urlencode?

  9. 17 минут назад, alex32 сказал:

    На модуль. https://yadi.sk/d/Xl_qIlvy3WraYm

    загрузить в engine/modules Подключить 

    
    {include file="engine/modules/xfmenu.php?xfname=ИмяДопполя"}

    Выведет значения допполя указаное в xfname=ИмяДопполя

    Так плохо писать код.

     

    7 часов назад, alexpsp сказал:

    В доп поле есть "Использовать значения полей как перекрестные гиперссылки". А можно как то вывести все ключевые слова сразу со всех новостей?

     

    Я сначала подумал, что можно и кастомом вывести, но будут повторы. 

     

    Чтобы было без повторов и по алфавиту, можно как то вывести их, как будто теги. 

     

    Сайт for24.ru

    Вы используете дополнительные поля как перекрестные ссылки? И какая версия движка у вас?

    • Поддерживаю 1
  10. 44 минуты назад, Mek сказал:

    С выпуском DLE13 версии решили свести до минимума правки движка при установке сторонних модулей, но при установки этого модуля опять приходится править код. Правда уже самого модуля.

    Это не правки кода движка и даже не правки кода модуля, это его настройка.

    1 час назад, Mek сказал:

    Сделайте чтоб модуль автоматически подтягивал (хотя бы) все доп поля с сайта. И чтоб на 100% всё настраивалось через админку.

    Вместо пункта "Исключить категории", лучше сделать пункт "Категории для фильтрации" в котором нужно выбрать все категории по которым будет работать фильтр.

    Далее сделать выбор доп полей для фильтрации и у каждого возможность выбора: 1- Множественный выбор. 2-Чекбокс. 3-Список.

    Для доп поля "год" автоматически делать слайдер.

    Ок.

    • Нравится 1
  11. 2 минуты назад, celsoft сказал:

    У автора топика другая ситуация, там речь идет если она например была умышленно удалена, или папка /uploads/posts/дата/ создана вручную. Т.е. проблема только тогда, когда в структуру папок "лезут руками". А если все создает и управляет этим только DLE, то проблемы нет и не будет ни в какой версии.

    Понял.

  12. 14 минут назад, Mek сказал:

    Поставил данный фильтр по инструкции, но вместо картинок со скриншотов, отображается:

     

    BdFZf.jpg

     

    Соответственно ничего не фильтруется. Как заставить его работать и вывести хотя бы ползунок сортировки по годам, как на скриншоте в первом сообщении?

    1. Стили вашего сайта могут конфликтовать со стилями модуля. В новой версии я полностью прикреплю стили к самому фильтру и тогда проблем не будет.

    2. Для вывода данных у нас есть два tpl файла, первый это filter_block.tpl и filter_value.tpl. В первом мы задаем сам блок внутри которого будут наши данные. Например:

    [janre]
    	<div class="fb-sect-name">Выберите жанр</div>
    	<div class="fb-sect fb-sel">
    		<select name="janre" multiple data-placeholder="Выберите жанр">
    			<option value=""> - </option>
    			{janre-value}
    		</select>
    	</div>
    [/janre]

    [janre]любой текст внутри[/janre] - создает блок с оформление вашего дополнительного поля с названием janre. Вы можете подставлять любое дополнительное поле вместо janre.

    {janre-value} - будет выводить оформление значений вашего дополнительного поля с названием janre. А оформление значений берется с filter_value.tpl

    Внутри filter_value.tpl задаете

    [janre]
    	<option value="{value}" data-key='{key}-{value}' {disabled} [check]selected[/check]> {value} ({count})</option>
    [/janre]

    [janre]любой текст внутри[/janre] - нужен для того что бы прикрепить дизайн значений именно к дополнительному полю janre.

    {value} - это уже не посредственно тег который выведет значение дополнительного поля.

    data-key='{key}-{value}' - нужен для работы модуля. Его всегда нужно вставлять в ваше оформление значений.

    {disabled} - это тег который отвечает за то что бы не давать пользователю выбирать значения у которых не осталось новостей для показа.

    [check]selected[/check] - нужен для того что бы когда блок фильтра обновлялся ваши данные в select или input type=radio / checkbox не пропадали как выбранные. Для input type=radio / checkbox нужно прописать [check]checked[/check].

    {count} - это количество новостей с этим значением дополнительного поля - в данном случае janre. А так же количество будет меняться по мере выбора других данных в фильтре.

     

    Для того что бы задать слайдер.

    Создайте в filter_block.tpl ваш блок дополнительного поля, потом в filter_value.tpl привяжите его оформление и внутри вставьте

    [year]
    	<input type="text" name="slider-{key}" data-ionRangeSlider='ionRangeSlider' data-key='{key}'>
    [/year]

    year просто как пример.

    Далее откройте /templates/Ваш шаблон/mod_punpun/easy_filter/js/easy_filter.js и внутри функции SliderInit внутри $(function() { вставьте

    $("[name=slider-year]").ionRangeSlider({
        min: 1990,
        max: 2019,
        from: 1990,
        to: 2019,
        type: 'double',
        prefix: "Год ",
        grid: true,
        grid_num: 10
    });

    Выйдет что-то вроде этого

    function SliderInit() {
        $(function() {
            $("[name=slider-year]").ionRangeSlider({
                min: 2010,
                max: 2019,
                from: 2010,
                to: 2019,
                type: 'double',
                prefix: "Год ",
                grid: true,
                grid_num: 10
            });
        });
    }

    Я планирую полностью переписать фильтр, может есть у вас какие-то предложения. Сообщите их тут.

  13. Цитата

     

    Внимание !!!

     

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

     

    1. Если ваша тема начинается с вопроса и вам нужна какая либо помощь, то в самой теме в обязательном порядке вы должны указывать ссылку на ваш сайт. Если ваш сайт находится в локальной сети и вы не можете предоставить ссылку, или вы не хотите публиковать открытой ссылки на ваш сайт, то отправляйте персональное сообщение с вопросом в службу поддержки непосредственно с сайта http://dle-news.ru/, вам ответят на ваш вопрос в персональном порядке, в случае если пользуетесь платной версией скрипта и обладаете лицензией на скрипт. Если вы пользуетесь демоверсией, то вам необходимо разместить сайт в сети интернет, и только потом обращаться за помощью. По находящимся на локальных компьютерах демоверсиям никакой помощи и поддержки на форуме не оказывается. Если вы не указали сайт, то ваша тема будет закрыта, а аккаунт на форуме заблокирован.

     

     

  14. 43 минуты назад, MGHaze сказал:

    Тоже про это писал выше:

    Как понял, работать будет и других вариантов нет. Спасибо за ответы

    Если у вас DLE 13.0 используйте этот плагин

    <?xml version="1.0" encoding="utf-8"?>
    <dleplugin>
    	<name>Xfield Custom Search</name>
    	<description></description>
    	<icon></icon>
    	<version></version>
    	<dleversion>13</dleversion>
    	<versioncompare>greater</versioncompare>
    	<mysqlinstall><![CDATA[]]></mysqlinstall>
    	<mysqlupgrade><![CDATA[]]></mysqlupgrade>
    	<mysqlenable><![CDATA[]]></mysqlenable>
    	<mysqldisable><![CDATA[]]></mysqldisable>
    	<mysqldelete><![CDATA[]]></mysqldelete>
    	<file name="engine/modules/functions.php">
    		<operation action="before">
    			<searchcode><![CDATA[if( preg_match( "#navigation=['\"](.+?)['\"]#i", $param_str, $match ) ) {]]></searchcode>
    			<replacecode><![CDATA[if (preg_match("#like_xfield=['\"](.+?)['\"]#i", $param_str, $match)) {
        if (substr_count('||', $match[1]) > 1) {
    		$temp_array = [];
            $field = explode ('||', $match[1]);
            $xf_where = [];
            for ($i = 0; $i < count($field); $i++) {
                $temp_array = explode('|', $field[$i]);
    			if ($temp_array[0] && $temp_array[1]) {
    				$key = $db->safesql(trim(strip_tags($temp_array[0])));
    				$value = $db->safesql(trim(strip_tags($temp_array[1])));
    				$xf_where[] = "SUBSTRING_INDEX(SUBSTRING_INDEX(xfields, '{$key}|', -1), '||', 1) LIKE '{$value}'";
    			}
            }
    		if ($xf_where) {
    			$xf_where = implode (' AND ', $xf_where);
    		}
        } else {   
            $temp_array = explode('|', $match[1]);
    		$key = $db->safesql(trim(strip_tags($temp_array[0])));
    		$value = $db->safesql(trim(strip_tags($temp_array[1])));
            $xf_where = "SUBSTRING_INDEX(SUBSTRING_INDEX(xfields, '{$key}|', -1), '||', 1) LIKE '{$value}'";
        }
    	if ($xf_where) {
    		$where[] = $xf_where;
    	}
    }]]></replacecode>
    		</operation>
    	</file>
    </dleplugin>

    В custom пишете так

    {custom like_xfield="color|Красный"}

    И никаких доп полей не надо в конце.

    • Нравится 1
  15. 4 часа назад, MGHaze сказал:

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

     

    Если быть конкретнее, то структура такая:

    • Категория 1
    • Категория 2
      • Подкатегория 1
      • Подкатегория 2
      • Подкатегория 3
      • Подкатегория 4
    • Категория 3

    Сама новость принадлежит Категории 1, Категории 2, Подкатегории 3, Подкатегории 4. Нужно вывести только ссылки на Подкатегорию 3, Подкатегорию 4.

     

    {link-category} выведет все категории

    {category} выведет все категории

     

    Есть какие-то варианты без правок движка?

    Посмотрите в сторону этого хака https://punpun.name/blog/17-cat.html

    • Нравится 1
  16. @celsoft

    10. Контроль версий контента. Как в IPB, или xenforo, что бы можно было восстановить контент за определенную дату (если в тот день он правился)

     

    p.s я не могу объединить комментарии или изменить прошлые так как для редактировании проходит допустимое время.

  17. @celsoft

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

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

    4. Сделать возможным встраивать дополнительные поля регистрации на первой странице и сделать выбор использования второй страницы регистрации.

    5. Добавить в админ панель модуль "Файлов" - где можно будет искать и управлять всеми файлами на сайте. А так же делать оптимизацию - удалять файлы которые вовсе не используются ни в одной новости.

    6. Добавить в админ панель модуль "Теги / Дополнительные поля" - где можно будет искать и управлять всеми тегами и дополнительными полями на сайте. Удалять, изменять.

    7. Возможность создавать варианты выбора для жалобы на новость. А так же реализовать ответное сообщение - "Ваша жалоба была обработана",  "Ваша жалоба была отклонена" и т.п.

    8. Реализовать в сообщениях вывод всех сообщений по страницам на странице обмена сообщениями с пользователем. Сейчас же каждое сообщение - это новая ссылка на страницу где показано лишь одно сообщение.

  18. 28 минут назад, 4oix сказал:

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

    Сайт: 4oix.com

    Нажать на чекбокс 

    Цитата

    установить текущую дату и время

     

    • Спасибо 1
  19. 1526748702_screenshot_1.png

    С помощью этого простого модуля вы сможете реализовать у себя фильтр по дополнительным полям. Модуль полностью работает на AJAX, никакой перезагрузки страницы. А так же имеет базовые настройки.

     

    Требования к системе:

    • Версия DLE: 13.0 и выше
    • Поддерживаемая кодировка: UTF-8
    • Версия php: 5.4 и выше

     

    Так как на форуме нельзя заливать ни скриншотов, ни файлов ниже прилагаю ссылки.

     

    Скачать и посмотреть скриншоты - https://punpun.name/portfolio/56-easy-filter.html

    Документация по модулю - https://punpun.name/doc/easy-filter.html

    • Нравится 2
×
×
  • Создать...