Скрыть объявление
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Проблема всех версий dle "закладки"

Тема в разделе "Вопросы- ответы", создана пользователем Intention, 13 мар 2016.

13.03.16 в 23:46
06.07.19 в 08:53
65
10.134
0
  1. TopicStarter Overlay
    Intention

    Intention Местный

    Регистрация:
    15 янв 2016
    Сообщения:
    2.098
    Лучших ответов:
    0
    Рейтинги:
    +689 / 2 / -0
    @iNol, С моими знаниями проще включить кеш и убрать эту кнопку из шортстори :D
     
  2. Zumzum

    Zumzum Новичок

    Регистрация:
    9 мар 2017
    Сообщения:
    38
    Лучших ответов:
    0
    Рейтинги:
    +0 / 0 / -0
    У меня другая задача. Сейчас ссылка на закладки находится в лайтбоксе

    upload_2017-3-10_16-13-51.png

    Как ее перетащить в main.tpl ?
    Пробовал так:
    <a href="{favorites-link}">Мои закладки ({favorite-count})</a>

    upload_2017-3-10_16-16-49.png
     
  3. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    что мешает прописать ссылку ссылкой href="/favorites/"? Или нужно чтоб был именно тег генерирующий ссылку?
     
  4. Zumzum

    Zumzum Новичок

    Регистрация:
    9 мар 2017
    Сообщения:
    38
    Лучших ответов:
    0
    Рейтинги:
    +0 / 0 / -0
    @byroot, проблема в {favorite-count}. Число новостей в закладках не выводится так.
     
  5. Zumzum

    Zumzum Новичок

    Регистрация:
    9 мар 2017
    Сообщения:
    38
    Лучших ответов:
    0
    Рейтинги:
    +0 / 0 / -0
    На скриншоте ведь видно что выводит {favorite-count}.
     
  6. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    engine/modules/main.php найти
    PHP:
    $tpl->set '{speedbar}'$tpl->result['speedbar'] );
    добавить ниже
    PHP:
    if ($is_logged) {

        
    $tpl->set'{login}'$member_id['name'] );
        
    $tpl->set'{new-pm}'$member_id['pm_unread'] );
        
    $tpl->set'{all-pm}'$member_id['pm_all'] );

        if (
    $member_id['favorites']) {
            
    $tpl->set'{favorite-count}'count(explode("," ,$member_id['favorites'])) );
        } else 
    $tpl->set'{favorite-count}''0' );

        if ( 
    count(explode("@"$member_id['foto'])) == ) {
          
            
    $tpl->set'{foto}''https://www.gravatar.com/avatar/' md5(trim($member_id['foto'])) . '?s=' intval($user_group[$member_id['user_group']]['max_foto']) );
          
        } else {
          
            if( 
    $member_id['foto'] ) {
              
                if (
    strpos($member_id['foto'], "//") === 0$avatar "http:".$member_id['foto']; else $avatar $member_id['foto'];

                
    $avatar = @parse_url $avatar );

                if( 
    $avatar['host'] ) {
                  
                    
    $tpl->set'{foto}'$member_id['foto'] );
                  
                } else 
    $tpl->set'{foto}'$config['http_home_url'] . "uploads/fotos/" $member_id['foto'] );
              
                unset(
    $avatar);
              
            } else 
    $tpl->set'{foto}'"{THEME}/dleimages/noavatar.png" );
        }

    } else {
        
    $member_id['name'] ='';
        
    $tpl->set'{login}''' );
        
    $tpl->set'{new-pm}''0' );
        
    $tpl->set'{all-pm}''0' );
        
    $tpl->set'{favorite-count}''0' );
        
    $tpl->set'{foto}'"{THEME}/dleimages/noavatar.png" );

    }
    в шаблоне main.tpl теперь можешь использовать теги из login.tpl '{login} {new-pm} {all-pm} {favorite-count} {foto}
     
    • Нравится Нравится x 1
  7. Zumzum

    Zumzum Новичок

    Регистрация:
    9 мар 2017
    Сообщения:
    38
    Лучших ответов:
    0
    Рейтинги:
    +0 / 0 / -0
    @byroot, спасибо! Завтра попробую.
     
  8. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    Кстати, проверял на 11,2 - работает!
     
    • Нравится Нравится x 1
  9. Zumzum

    Zumzum Новичок

    Регистрация:
    9 мар 2017
    Сообщения:
    38
    Лучших ответов:
    0
    Рейтинги:
    +0 / 0 / -0
    @byroot, у меня как раз 11.2

    @byroot, попробовал и теперь неактивна форма авторизации. Нажимаю "войти", и в ответ тишина.

    <span class="show-login">
    [not-group=1,5]войти [/not-group]
    [group=1,5]кабинет[/group]
    </span>
     
    #49 Zumzum, 14 мар 2017
    Последнее редактирование модератором: 14 мар 2017
  10. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.205 / 74 / -0
    @Zumzum, значит где-то конфликт JS скорее всего идёт. Не видя сайта - трудно что либо говорить
     
  11. Zumzum

    Zumzum Новичок

    Регистрация:
    9 мар 2017
    Сообщения:
    38
    Лучших ответов:
    0
    Рейтинги:
    +0 / 0 / -0
    @byroot, оставил только закладки, без всего остального, все нормально стало. Спасибо!
     
  12. iqwik

    iqwik Посетитель

    Регистрация:
    6 ноя 2016
    Сообщения:
    55
    Лучших ответов:
    0
    Рейтинги:
    +6 / 0 / -0
    Нашлось решение? Буду рад любой помощи по теме.

    P.S: использую mamcashed - та же "борода"...
     
  13. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.298
    Лучших ответов:
    31
    Рейтинги:
    +3.894 / 96 / -0
    Открыть engine/modules/show.short.php найти
    PHP:
    if( ! in_array$row['id'], $fav_arr ) or $config['allow_cache']) {
    Заменить на
    PHP:
    if( ! in_array$row['id'], $fav_arr ) ) {
     
    • Нравится Нравится x 1
  14. iqwik

    iqwik Посетитель

    Регистрация:
    6 ноя 2016
    Сообщения:
    55
    Лучших ответов:
    0
    Рейтинги:
    +6 / 0 / -0
    Спасибо.

    * Как я понял, таким способом убираем кэширование для всех коротких новостей? А другого способа , не убирая кэширования для кор.новостей, не существует?
    ** При добавлении в закладки новости, счетчик не срабатывает, только после обновления страницы он обновляется и становится с нужным числом... как подправить?
     
  15. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.298
    Лучших ответов:
    31
    Рейтинги:
    +3.894 / 96 / -0
    Причем тут кэширование кратких новостей? Никак это не связано. Смотреть консоль, в dle обновляется если правок по тегу никаких не делали.
     
  16. iqwik

    iqwik Посетитель

    Регистрация:
    6 ноя 2016
    Сообщения:
    55
    Лучших ответов:
    0
    Рейтинги:
    +6 / 0 / -0
    Спасибо, помогло!

    P.S: а вот по поводу обновления счетчика... правки делал только по твоей сео оптимизации Gameer и перенес все JS script'ы в низ, но счетчик и тогда не обновлял... только после обновления самой страницы. Полагаю какой-то конфликт в JS, только не знаю, где копать :(
     
  17. Евгений-Евгений

    Регистрация:
    25 сен 2017
    Сообщения:
    17
    Лучших ответов:
    0
    Рейтинги:
    +2 / 4 / -0
    Добрый вечер. Мучаюсь уже 3 день с {favorite-count} из DLE. Необходимо реализовать добавление в избранное через Ajax, а не перезагрузку страницы.
    То-есть пользователь жмет добавить в избранное и ({favorite-count} - количество новостей в избранном) меняется на лету. Сами кнопки добавить/удалить реализованы путем вставки в шаблон {favorites} и при нажатии на любую из них меняют дизайн, а вот количество - {favorite-count} меняется только при обновление страницы.
    Перерыл весь интернет ничего не нашел по этому поводу. Сейчас разбираю скрипт по адресу:

    engine/classes/js/dle_js.js

    Думаю нужно пилить строку:

    function doFavorites(a,c,b){ShowLoading("");$.get(dle_root+"engine/ajax/favorites.php". . . .

    но, что именно, не знаю :-(
    Готов оплатить Вашу помощь. Заранее спасибо
     
  18. 10000

    10000 Бывалый

    Регистрация:
    5 ноя 2017
    Сообщения:
    133
    Лучших ответов:
    2
    Рейтинги:
    +36 / 5 / -0
    Меня интересует другой вопрос. Как сделать чтобы при добавлении в закладки новость отобразилась сразу в закладках, БЕЗ обновления страницы? как на кинокрад к примеру.

    О блин, написал а потом заметил сообщение выше))
     
  19. Евгений-Евгений

    Регистрация:
    25 сен 2017
    Сообщения:
    17
    Лучших ответов:
    0
    Рейтинги:
    +2 / 4 / -0
    править по идеи нужно только 1 строку:
    (function doFavorites(a,c,b){ShowLoading("");$.get(dle_root+"engine/ajax/favorites.php",{fav_id:a,action:c,skin:dle_skin,alert:b,user_hash:dle_login_hash},function(c){HideLoading("");b?DLEalert(c,dle_info):$("#fav-id-"+a).html(c)}); return!1} )
    Вывод самого {favorites-count} я реализовал таким путем:
    if ($config['allow_alt_url']) {
    $tpl->set( '{favorites-link}', $config['http_home_url'] . "favorites/" );
    ..............
    код код код код
    ....................
    $tpl->set_block( "'\\[yes-favorit\\](.*?)\\[/yes-favorit\\]'si", "" );
    $tpl->set_block( "'\\[no-favorit\\](.*?)\\[/no-favorit\\]'si", "" );
    То есть он у меня выводится в [yes-favorit]картинка с ({favorites-count}) [/yes-favorit] - если есть избранное и [no-favorit]другая картинка без ({favorites-count}) [/no-favorit] - если нет избранного
    Проблема у меня только с js, а именно с этой строкой:
    function doFavorites(a,c,b){ShowLoading("");$.get(dle_root+"engine/ajax/favorites.php",{fav_id:a,action:c,skin:dle_skin,alert:b,user_hash:dle_login_hash},function(c){HideLoading("");b?DLEalert(c,dle_info):$("#fav-id-"+a).html(c)}); return!1}
     
  20. Евгений-Евгений

    Регистрация:
    25 сен 2017
    Сообщения:
    17
    Лучших ответов:
    0
    Рейтинги:
    +2 / 4 / -0
    Необходимо отредактировать скрипт движка dle 12.0, чтобы можно было добавлять публикации в избранное без регистрации и {favorites-count} обновлялся без перезагрузки страницы?

    Подробнее о задаче:

    Гость сайта жмет добавить в избранное, кнопки добавить/удалить реализованы путем вставки в шаблон {favorites} и оформлены не через картинки,а
    (если новость не добавлена в избранное - - серого цвета, если добавлена желтого).

    ({favorite-count} - количество новостей в избранном) меняется на лету и выводится в main.tpl. При чем когда {favorite-count}=0 показывается просто серое - без счета (кол-во избранного), а когда {favorite-count}>0 показывается - желтого цвета и рядом прописан счет (кол-во избранного).

    БЮДЖЕТ 500 руб.
     
Яндекс.Метрика