Вид материаловМенюКатегорииИнформерКнопки
Наш чат 1
Онлайн всего: 1
Гостей: 1
Пользователей: 0
1

Своё меню для каждого пользователя

Добавлено 29-12-2017 в 06:22

  • Категория Меню
  • Авторwaak
  • Просмотры940
  • Комментарии13
  • Понравилось10
  • Скачиваний29
Своё меню для каждого пользователя
Здравствуйте! сегодня пользователь нашего сайта оставил просьбу в мастерской на разработку скрипта мастерская

Идея мне показалась интересной и я решил по пробивать выполнить данную просьбу.

Суть скрипта очень проста по клику на кнопку добавить ссылку открывается окошко



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

Скрипт будет выводить последние 10 ссылок что добавит пользователь
так же есть кнопка управления меню она появится после того как будет добавлена хотя бы одна ссылка и появляться напротив названия ссылки при наведении на неё



По нажатию на неё откроется окошко со списком ссылок что добавил пользователь



в этом окошке пользователь может удалить не нужную ему ссылку

Установка

Для работы скрипта нам понадобится любой свободный модуль

Цитата
Данный пример написан под модуль БЛОГ его можно сменить на свой ( тот что свободен у вас ) но в этом случае придётся переписать скрипт под ваш модуль


Продолжим!

Активируем модуль БЛОГ если ещё не активирован затем переходим в настройки модуля и убираем все галочки у полей добавления материалов:



так же нам нужно поставить галочку у пункта Включить возможность поиска материалов пользователя:



Теперь создадим 1 категорию в данном модуле её название не имеет значение главное что бы её id был 1

отлично Готово!

Теперь перейдём в раздел Пользователи > Группы пользователей > Установка прав для всех групп > Блог
и установим права для пользователей те что вы сами выберите
Но обязательно нужно указать следующее

Читать материалы всем
Добавлять материалы все
Премодерировать добавленные материалы (не выводить сразу) убрать все галочки
Удалять свои материалы все

Остальное на веще усмотрение
можно ещё убрать возможность редактировать свои материалы у всех групп

Настройки мы сделали теперь приступим к установки скриптов

Ссылка на добавление ссылок в то место где хотите её видеть
Код
<a href="javascript://" onclick="$('.user_menu_ok').toggle();">Добавить ссылку</a>

текст можно поменять на картинку

Теперь добавим скрипт который будет выводить список ссылок пользователя
в то место где хотите видеть ссылки к примеру под основное меню сайта или в отдельный блок добавим вот такой код
Код
<span class="user_menu"></span>
  <script type="text/javascript">  
  $('.user_menu').load('/blog/0-0-0-0-17-$USER_ID$ #user_menu:lt(10)');  
  </script>

10 это число ссылок МОЖНО ИЗМЕНИТЬ НА СВОЁ ЧИСЛО

В вид материалов модуля блог
Код
<span style="position: relative;display:block;">
   
<span id="user_menu">

  <li> <a href="$OTHER1$" class="user_mmss">$TITLE$</a> <a href="javascript://" class="red_user_mmss" onclick="lsajax();" title="Настройки меню"><img src="/img/icn.png"></a></li>
  </span>
<?if($MODER_PANEL$)?><div style="position: absolute;right: 10px;top:5px;">$MODER_PANEL$</div><?endif?>
  </span>
<style>a.red_user_mmss { display:none;}</style>

/img/icn.png иконка кнопки управления списком ссылок можно заменить на свою

Главная страница - Страница архива материалов модуля блог заменить весь код на
Код
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8" />
  <link type="text/css" rel="StyleSheet" href="/_st/my.css" />
  <script src="/js/jquery-1.11.0.min.js"></script>

</head>

<body>

  <ul>$BODY$</ul>
  <div style="display:none;"> $POWERED_BY$</div>
<style>  
  div#puzadpn { display: none!important;}
  .user_mmss{padding: 10px;display: block;border-bottom: 1px solid #f1f1f1;}
</style>
</body>
</html>


Верхняя часть сайта добавим код с окнами
Код

<div class="user_menu_ok">
<div id="user_menu_ok_name">
<span>Добавление ссылки в меню:</span>
</div>
  <div id="user_menu_ok_message">
  <input name="namess" id="namess" placeholder="Название ссылки">
  <input name="urlss" id="urlss" placeholder="url ссылки">
  </div>
<div id="user_menu_ok_cnopki">
  <ul>
  <li><a href="javascript://" class="ss_user_men" onclick="plus_ssm()" >Добавить</a></li>
  <li><a href="javascript://" class="ss_user_men" onclick="$('.user_menu_ok').toggle();" > Отмена</a></li>
  </ul>
  <div class="clr"></div>
  </div>
  </div>  

  <script>  
  function lsajax(){new _uWnd('openlsajax','Ваши личные сообщения',300,350,{modal: true,close:true,header:true,nomove: false,fixed:true}, $("#usmenured").html() )}  
  </script>  
<div style="display:none;" id="usmenured">  
  <iframe class="iframe_os" src="/blog/0-0-0-0-17-$USER_ID$" name="iframe" frameborder="0" width="300px" height="350px" scrolling="value"></iframe>  
   
  </div>


В нижнюю часть добавим скрипт
Код
<script type="text/javascript">
function plus_ssm() {  
$.get('/blog/0-0-0-0-1', function(data){  
var ssid = $('input[name="ssid"]', data).val();  
$.post('/blog/', {  
a: '2',  
jkd428: '1',  
jkd498: '1',
ocat: '1',  
coms_allowed: '1',
title: $('#namess').val(),
other1: $('#urlss').val(),
user: '$USERNAME$',  
ssid: ssid  
},  
  function(){  
_uWnd.close('uWnd');  
setTimeout("location.reload()",2000);  
});  
});
  }
   
</script>


В таблицу стилей в самый конец добавим стили для наших кнопок и окошек
Код
.user_menu_ok {
  width: 350px;
  height: 200px;
  display: none;
  position: fixed;
  z-index: 999;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: #FFF;
  box-shadow: 0 2px 100px rgba(0,0,0,.5);

}
#user_menu_ok_name span {
  display: block;
  padding: 10px 15px;
  color: #FFF;
  background: #488AF9;
}

#user_menu_ok_message {
  padding: 20px;
}
#user_menu_ok_message input {
  width: 100%;
  max-width: 100%;
  padding: 7px 15px;
  color: #434343;
  font-size: 13px;
  border: 1px solid #f1f1f1;
  margin: 5px 0;
}
#user_menu_ok_message input:focus {
  border: 1px solid #488AF9;

}
#user_menu_ok_cnopki ul {
  list-style: none;
  padding: 0 10px;
}
#user_menu_ok_cnopki ul li {
  float: left;
  padding: 0 10px;
}
#user_menu_ok_cnopki ul li a {
  display: block;
  padding: 7px 15px;
  background: #488AF9;
  color: #FFF;

}
#user_menu_ok_cnopki ul li a:hover {
  background: #000;
}

   
  a.red_user_mmss img {
  width: 18px;
}
  a.red_user_mmss {
  position: absolute;
  right: 5px;
  margin-top: -30px;
  width: 20px;
  display: block;
  z-index: 10;
  display: none!important;
}
  #menu ul li:hover a.red_user_mmss {
  display: block!important;
}


Теперь скачаем архив и зальём картинку из него в папку img в свой файловый менеджер

Готово!



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




Остались вопросы? есть предложение по работе скрипта или не можете установить пишите всё в комментариях или создайте тему на форуме

Скачать файлы материала

29 загрузок 61.9 Kb Скачать
Скачивание файлов без ограничений доступно только зарегистрированным пользователям.

Комментарии

Melisa 13-01-2018 в 23:47
Очень интересное решение) можно даже использовать его как решение закладок)
waak 14-01-2018 в 00:32
Для этого можно кнопку добавить в вид материалов или на страницу материала ну или туда и туда нажав по которой автоматически будет добавляться ссылка в меню на этот материал
Melisa 14-01-2018 в 02:23
не могли бы Вы написать как сделать такую кнопку?Заранее благодарю)
waak 14-01-2018 в 14:22
Запросто, как будет время сделаю
waak 14-01-2018 в 14:33
В вид материалов

Код


<a href="javascript://" onclick="plus_ssm$ID$();">Название кнопки</a>

<script type="text/javascript">  
function plus_ssm$ID$() {  
$.get('/blog/0-0-0-0-1', function(data){  
var ssid = $('input[name="ssid"]', data).val();  
$.post('/blog/', {  
a: '2',  
jkd428: '1',  
jkd498: '1',  
ocat: '1',  
coms_allowed: '1',  
title: '$TITLE$',  
other1: '$ENTRY_URL$',  
user: '$USERNAME$',  
ssid: ssid  
},  
  function(){  
_uWnd.close('uWnd');  
setTimeout("location.reload()",2000);  
});  
});  
  }  
  
</script>
Melisa 14-01-2018 в 21:11
спасибо)
Melisa 19-01-2018 в 06:31
Хочу под этот скрипт использовать модуль галереи,как это сделать?
waak 19-01-2018 в 13:48
Фотоальбом? если да то переписать весь скрипт придётся
Melisa 19-01-2018 в 22:15
да,можете сделать если будет свободное время?
waak 19-01-2018 в 22:35
Если будет время то запросто а пока что нет, только на платной основе!
elaim 03-01-2018 в 21:13
Вот это да! Крутые у вас идеи! :D Спасибо, желаю вам и дальше удивлять своих пользователей ww
waak 03-01-2018 в 21:24
Спасибо! Будем стараться! но вы также можете нам помочь своими идеями советам поддержкой
waak 28-12-2017 в 20:25
Да конечно! ссылку на сайт и пароль от админ панели киньте в лс и я сделаю вам сам а то объяснять долго а сейчас нет времени я приду домой и сделаю если вы отправите ссылку и пароль

Оставить комментарий

Добавлять комментарии могут только зарегистрированные пользователи.

Регистрация Вход
Комментарии
pa patali2k

Спасибо большое!

06-06-2025 в 05:58 материал
waak

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

Код
У вас $NUM_ENTRIES$ заклад<?if($NUM_ENTRIES$%10=0||$NUM_ENTRIES$%10>4||$NUM_ENTRIES$%100>10&&$NUM_ENTRIES$%100<15)?>ок<?else?><?if($NUM_ENTRIES$%10=1)?>ка<?else?>ки<?endif?><?endif?>

05-06-2025 в 22:07 материал
pa patali2k

Добрый день! Waak подскажи как вы сделали У вас N закладок, у меня выходит 1-5 например, так если можете подскажите как вывести кол.во закладок пользователя например в мини профиль, чтоб кол.во закладок показывало на любой странице

04-06-2025 в 16:51 материал
pa patali2k

Добрый день!
Сегодня снова попробовал установить скрипт и он снова не заработал, все перерыл, изменял, убирал и никак не заводился.
Решение: В общих настройках сайта нужно переключить Версия библиотеки jQuery: на jquery-1.12.4.min.js
В общем теперь просьба, не могли бы переписать скрипт закладок под jquery-3.6.0.min.js qv

19-05-2025 в 17:16 материал
waak

напишите сайт я посмотрю так как данный скрипт стоит у меня на сайте и работает отлично! или скиньте доступ к панели я сам вам поставлю его!

13-04-2025 в 17:56 материал
pa patali2k

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

13-04-2025 в 01:45 материал
ch chirianovconstantin

Спасибо буду ждать

18-02-2025 в 23:03 материал
waak

Здравствуйте сейчас нет времени на это но чуть позже сделаю выложу на сайт

16-02-2025 в 18:32 материал
ch chirianovconstantin

здавствуите помогите зделать скрипт под модуля бог

15-02-2025 в 23:13 материал
waak

Пожалуйста, вам спасибо что заходите на сайт

10-02-2025 в 12:32 материал
sa sardor

Спасибо огромное

06-02-2025 в 13:34 материал
Fr Frag

Прикольно работает

15-11-2024 в 01:20 материал

Услуга от адмиистратора

Вы можите заказать установку от администратара ( waak ) этого материала или любого другога с нашего сайта на ваш сайт или доработку под ваши нужды!

от 150рзаказать