Jump to content
CMSTOOLS.org - форум поддержки и развития CMS

Search the Community

Showing results for tags 'vii'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Artificial intelligence
    • ChatGPT
  • Front-end
    • HTML + CSS
    • JS + frameworks
  • Back-end
    • PHP
    • MySQL
    • Python
    • .NET/C/C++/C#
  • CMS
    • Всё о Vii Engine
    • Всё о DataLife Engine (DLE)
    • All about Invision Power System
    • All about AlphaCMS
    • Another CMS
  • Social Networks/Messengers
    • Telegram
    • Vkontakte
    • Discord
    • Bot development
  • Сервисы, софт
    • Linux
    • Windows
    • Сборки серверов
    • Apache, Nginx, .htaccess
  • Коммерция
    • Продажа
    • Услуги
    • Покупка
  • Общий раздел
    • Promotion and SEO
    • Web design, graphics
    • Website monetization
    • Your projects
    • Helping Users (general)
    • Болталка
    • Арбитраж
    • Корзина
  • CMS Tools - форум поддержки и развития CMS
    • Обязательно к прочтению!
    • Новостной блок CMSTools
    • Жалобы и предложения

Categories

  • VII ENGINE
    • Сборки vii engine
    • Модули, плагины, хаки vii engine
    • Шаблоны, дизайн, внешний вид
  • Alpha CMS
    • Релизы AlphaCMS
    • Модули, плагины, хаки AlphaCMS
    • Шаблоны, дизайн, внешний вид AlphaCMS
  • Invision Community
    • Releases IPS
    • Templates and appearance IPS
    • Components and modifications IPS
  • DataLifeEngine
    • Релизы DLE
    • DLE Templates
  • Front-end
    • HTML+CSS
  • Another CMS
    • Gaming CMS
    • Social CMS
    • Another CMS

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Сайт


Telegram


Skype


Jabber


ICQ


Интересы

  1. VII Engine 2022 👉Fronted 👉Backend 👉Demo- https://app-tau-tawny.vercel.app/ Как присоедениться к разработке? 🐱‍🐉 Нажимаете кнопку Fork, проект клонируется в ваш аккаунт на гитхабе. Работаете, коммитите и пушите к себе. Потом предлагаете пулл-реквест. Его смерджат с основным хранилищем. Если понравилось поставьте звездочку⭐ репозиторию
  2. Version 8.0.0

    349 downloads

    VII Engine 2022 Страрые релизы, сборки больше не поддерживаются 👉Тема
  3. VII Engine license (Nulled) Просмотр файла Некоторые дополнения: -проверка файлов при установке/CHMOD -Проверка версии php и ост. -При установке можно указать название файла адм панели -Раньше при установке id пользователей в базе начинали записываться с 2, теперь с 1 (site.com/u1) -Сделал Null (Убрал ввод лиц. ключа при установке.Убрал стучалку.Изменил MetaGenerator) -Так же добавил модуль верификации пользователей. -Поправил дизайн модуля рейтинга. -Фикс бага с оповещениями. Мастер установки скрипта взят со сборки Adrey Ajax Пишите баги и модификации в комментариях, которые хотите увидеть в сборке. Добавил Mr.Timbios Добавлено 07.06.2015 Категория Сборки vii engine  
  4. Здравствуйте, дорогие пользователи форума cmstools.ru! Хотелось бы представить вашему вниманию мою сборку "Вразработке". Что было сделано(не весь список): Продано экземпляров: 2 Цена сборки: 200 рублей Контакты: Skype: Like_Jion Vk.com: id236343563
  5. Просмотр файла NEW VK CMS rev.1.1 Данная сборка имеет множество багов.Но модули которые есть внутри, делают её более менее значимой. Что присутствует в сборке: Удачной работы со сборкой Добавил timbios Добавлено 06/03/15 Категория Сборки vii engine
  6. Доброго времени суток, дорогие пользователи форума. У многих возникали вопросы по добавлению языков в сборку, в просто народие называемых как "ланги". И так, начнём с того, как они работают. У нас есть файл site.lng Который лежит по пути lang/Russian/site.lng Для того, что бы подключить новый языковой пакет, нам нужно создать папку с файлом site.lng сделать всё нужно примерно так: вашсайт/lang/имяпапки(к примеру:English)/site.lng Далее идём в админ панель =>> настройки системы =>> Список используемых языков (название папок) Там вы увидите такой текст: Русский | Russian Это подключение вашего языкового пакета. Пишем: Английский | English Далее идём по пути: templates/шаблон/js/ И создаём папку English с файлом внутри.Можно просто создать копию папки Russian и переименовать. Всё, наш "lang" подключен. Теперь нам нужно все слова из файлов таких как tpl js php У меня есть данный код(я взял его из файла profile.tpl): [owner]<a href="/my_stats" onClick="Page.Go(this.href); return false;"><img class="icon stat_ic" src="{theme}/images/spacer.gif" alt="" /><div>Статистика страницы</div></a> <a href="/" onClick="Profile.LoadPhoto(); return false;"><img class="icon editphoto_ic" src="{theme}/images/spacer.gif" alt="" /><div>Изменить фотографию</div></a> <a href="/" onClick="Profile.DelPhoto(); return false;" id="del_pho_but" {display-ava}><img class="icon del_photo_ic" src="{theme}/images/spacer.gif" alt="" /><div>Удалить фотографию</div></a>[/owner] Теперь нам нужно слова занести в файл site.lng К тому же, не только в тот, который находить в папке Russian , а и тот, который в папке English Вот так вы должны заполнить документ.К тому же, они должны быть под одинаковым номером, что бы правильно выводились в шаблоне. 'lang_001' => 'Статистика страницы', 'lang_002' => 'Изменить фотографию', 'lang_003' => 'Удалить фотографию', Вносим слова, данным способом в оба файла site.lng, и заменяем их в profile.tpl данным образом: [owner]<a href="/my_stats" onClick="Page.Go(this.href); return false;"><img class="icon stat_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_001}</div></a> <a href="/" onClick="Profile.LoadPhoto(); return false;"><img class="icon editphoto_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_002}</div></a> ​ <a href="/" onClick="Profile.DelPhoto(); return false;" id="del_pho_but" {display-ava}><img class="icon del_photo_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_003}</div></a>[/owner] Точнее вот таким текстом: {translate=lang_001} Где lang_001 это id вашего слова в файле site.lng Так же изменяем и в js файлах. Разобрались с js и tpl , теперь на очереди php файлы. Здесь всё немного по иному. Используется след. код: $lang['lang_001'] Возьмём этот кусочек с файла functions.php if($type == 'rec'){ if($numres == 1){ $gram_num_record = 'запись'; } elseif($numres < 5){ $gram_num_record = 'записи'; } elseif($numres < 21){ $gram_num_record = 'записей'; } elseif($numres == 21){ $gram_num_record = 'запись'; } } У вас должно выйти вот так: Сразу говорю, что данные скобки 'запись'; вам нужно убирать, и писать просто $lang['lang_001']; if($type == 'rec'){ if($numres == 1){ $gram_num_record = $lang['lang_001']; } elseif($numres < 5){ $gram_num_record = $lang['lang_002']; } elseif($numres < 21){ $gram_num_record = $lang['lang_003']; } elseif($numres == 21){ $gram_num_record = $lang['lang_004']; } } Думаю я вам помог.Будут вопросы задавайте в теме, с радостью отвечу.Удачи!
  7. Я могу помочь со всем, что связано с движком vii!
  8. Решил поделиться своей сборкой сайта т.к буду делать всё с нуля.Может кому пригодиться. СКАЧАТЬ
  9. Тема создана для новичков движка VII Engine. Заходим в файл register_main.php и находим строку: $sql_country = $db->super_query("SELECT SQL_CALC_FOUND_ROWS * FROM `".PREFIX."_country` ORDER by `name` ASC", true, "country", true); ниже данной строки вставляем: $where_sql .= "WHERE user_email != ''"; $numRows = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_users` {$where_sql}"); $tpl->set('{cnt}', $numRows['cnt']); Переходим в файл reg.tpl и в нужное вам место вставляем: {cnt}
  10. 4 downloads

    [VII]Шаблон NF by.NaFanyA В далёком 2020 году занимался редизайном сборки Studentosi для VII Engine, но обстоятельства взяли своё и пришлось прекратить данное баловство. Критиковать думаю не стоит, ибо в те года это было баловство. Работы было проделано мало, вот что было сделано: Убран логготип сайта. Убрана строка поиска в header. Правое меню перенесено в header. Изменен дизайн профиля. Выложу сюда, может кому-нибудь пригодиться. Сборка поддерживаться не будет. Проект закрыт, дальнейшего развития не вижу. Если у Вас возникли вопросы, создавайте соответствующую тему на форуме в разделе: Всё о VII Engine > Помощь пользователям с VII Engine. В личные сообщения писать мне не стоит. Всё о Vii Engine Помощь пользователям c Vii Engine
  11. Если у Вас добавлен модуль увеличения аватарки, то перезалейте файл profile.tpl. Установка: В style.css вписываем следующее: #owner_photo_wrap { margin-bottom: 8px; } #owner_photo_bubble_wrap { height: 76px; width: 200px; margin-top: -83px; overflow: hidden; position: relative; border-radius:2px;-moz-border-radius:2px;-khtml-border-radius:2px; } #owner_photo_bubble { color: #FFF; opacity: 0; background: rgba(0, 0, 0, 0.7); width: 200px; margin-top: 40px; -webkit-transition: all 200ms ease-in-out; -moz-transition: all 200ms ease-in-out; -o-transition: all 200ms ease-in-out; transition: all 200ms ease-in-out; z-index: 450; padding: 4px 0; } #owner_photo_top_bubble_wrap { position: relative; } #owner_photo_top_bubble { position: absolute; right: 0; top: 0; color: #FFF; opacity: 0; background: rgba(0, 0, 0, 0.7); -webkit-transition: all 200ms ease-in-out; -moz-transition: all 200ms ease-in-out; -o-transition: all 200ms ease-in-out; transition: all 200ms ease-in-out; z-index: 450; padding: 4px 0; } #owner_photo_wrap:hover #owner_photo_bubble { opacity: 1; margin-top: 0px; } #owner_photo_wrap:hover #owner_photo_top_bubble { opacity: 1; } #owner_photo_top_bubble .owner_photo_bubble_action_delete { text-align: right; width: auto; max-width: 180px; white-space: nowrap; overflow: hidden; } .owner_photo_bubble_action { cursor: pointer; padding: 5px 10px; height: 14px; overflow: hidden; white-space: nowrap; text-shadow: 0px 1px 0px #262626; -o-text-overflow: ellipsis; text-overflow: ellipsis; width: 180px; } .owner_photo_bubble_action_in { background: url("../images/icons/11.gif") no-repeat 0 -3px; -webkit-transition: all 100ms ease-out; -moz-transition: all 100ms ease-out; -o-transition: all 100ms ease-out; transition: all 100ms ease-out; padding-left: 20px; opacity: 0.7; font-size:11px; float:left; } .owner_photo_bubble_action_crop .owner_photo_bubble_action_in { background-position: 0 -26px; } .owner_photo_bubble_action_delete .owner_photo_bubble_action_in { background-position: 0 -70px; } .owner_photo_bubble_action:hover .owner_photo_bubble_action_in { opacity: 1; } .owner_photo_bubble_delete_wrap { position: absolute; z-index: 10; right: 0px; top: 3px; background: #222; background: rgba(0, 0, 0, 0.5); padding: 5px; cursor: pointer; -webkit-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px; } .owner_photo_bubble_delete { background:url("../images/icons/delete_item.png") no-repeat; width: 7px; height: 7px; opacity: 0.5; filter: alpha(opacity=50); -webkit-transition: opacity 100ms linear; -moz-transition: opacity 100ms linear; -o-transition: opacity 100ms linear; transition: opacity 100ms linear; } .owner_photo_bubble_delete_wrap:hover .owner_photo_bubble_delete { opacity: 1; } #owner_photo_bubble_input { position: absolute; visibility: hidden; } .ten{float:left;width:100px;text-align:center;margin-right:11px;margin-left:11px;cursor:pointer;margin-bottom:10px; -moz-box-shadow: 4px 5px 8px #aaa; -webkit-box-shadow: 4px 5px 8px #aaa; box-shadow: 4px 5px 25px #aaa; height:135px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; } .ten div{padding:2px;color:#ccc} .ten span{color:#888} Если у Вас есть модуль обложек, то замените его дизайн в style.css на этот: /* COVER */ .cover_profile_bg{width:794px;height:230px;margin-left:-12px;margin-top:-45px;background:url("../images/covers.png") no-repeat;margin-bottom:10px} .cover_newava{margin-top:-165px;position:relative;z-index:2;min-height:100px} .cover_newava img{box-shadow:0 1px 3px rgba(0, 0, 0, 0.28);-moz-box-shadow:0 1px 3px rgba(0, 0, 0, 0.28);-webkit-box-shadow:0 1px 3px rgba(0, 0, 0, 0.28);border:3px solid #555;margin-left:-3px} .cover_addut, .cover_addut_edit{background:rgba(0, 0, 0, 0.600);float:right;padding:7px 13px 7px 13px;text-shadow:0px 1px 1px rgba(0, 0, 0, 0.506);border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;color:#fff;cursor:pointer;font-size:12px;margin:8px;margin-left:0px;opacity:0.7} .cover_addut:hover, .cover_addut_edit:hover{opacity:1} .cover_buts_pos{float:right;text-align:right;width:570px;height:230px} .cover_loading{text-align:center;position:absolute;margin-left:350px;z-index:3;margin-top:100px} .cover_loaddef_bg{height:230px;width:794px;background:#f0f0f0;overflow:hidden;cursor:move;margin-left:-224px} .cover_loaddef_bg img{position:relative;z-index:1} .cover_loaddfebut, .cover_loaddfebut_edit{position:absolute;z-index:5;margin-left:412px} .cover_descring{position:absolute;z-index:5;color:#fff;background:rgba(0, 0, 0, 0.600);-moz-box-shadow:0 1px 3px rgba(0, 0, 0, 0.28);-webkit-box-shadow:0 1px 3px rgba(0, 0, 0, 0.28);padding:3px 7px 3px 7px;text-shadow:0px 1px 1px rgba(0, 0, 0, 0.506);border-radius:3px;font-size:12px;margin-left:320px;margin-top:110px;opacity:0.7} #les10_ex2{width:794px;position:relative;top:0px;z-index:1} .cover_hidded_but{display:none} .cover_profile_bg:hover #cover_addut_edit{display:block} .cover_all_user{background:#fff;width:794px;height:230px;margin-left:-12px;margin-top:-45px;overflow:hidden;margin-bottom:10px} .cover_groups_bg{background:url("../images/covers2.png") no-repeat} В файле profile.tpl ищем строку: <div class="ava"> до <div class="menuleft" style="margin-top:5px"> и заменяем ее на это: <div class="ava"> <center>[owner]<div class="cover_newava" >[/owner][not-owner]{ocovss}[/not-owner] <div id="owner_photo_wrap"> <div id="owner_photo_top_bubble_wrap"> [owner]<div id="owner_photo_top_bubble"> <div class="owner_photo_bubble_delete_wrap" onClick="Profile.DelPhoto(); $('.profileMenu').hide(); return false;"> <div class="owner_photo_bubble_delete"></div> </div> </div>[/owner] </div> <div class="b_photo "><span id="ava"> [owner]<a class="cursor_pointer" onClick="Profile.ava('{ava}', '{user-id}')">[/owner] [not-owner]<a href="" onclick="Photo.Profile('{user-id}', '{user-ph}'); return false">[/not-owner] <img src="{ava}" id="ava_{user-id}" /></a></span> [owner] <div id="owner_photo_bubble_wrap"> <div id="owner_photo_bubble"><div class="owner_photo_bubble_action owner_photo_bubble_action_update" onClick="Photo.Profile('{user-id}', '{user-ph}'); return false"> <span class="owner_photo_bubble_action_in">Показать</span></div> <div id="owner_photo_bubble"><div class="owner_photo_bubble_action owner_photo_bubble_action_update" onClick="Profile.LoadPhoto(); $('.profileMenu').hide(); return false;"> <span class="owner_photo_bubble_action_in">Загрузить фотографию</span> </div><div class="owner_photo_bubble_action owner_photo_bubble_action_crop" onClick="Profile.miniature(); return false;"> <span class="owner_photo_bubble_action_in">Изменить миниатюру</span> </div></div> </div>[/owner] </div></div> [not-owner]{ocovs}[/not-owner][owner]</div>[/owner] </center>{rating_bar} <div class="menuleft" style="margin-top:5px">
  12. Version 2.1

    1,786 downloads

    Некоторые дополнения: -проверка файлов при установке/CHMOD -Проверка версии php и ост. -При установке можно указать название файла адм панели -Раньше при установке id пользователей в базе начинали записываться с 2, теперь с 1 (site.com/u1) -Сделал Null (Убрал ввод лиц. ключа при установке.Убрал стучалку.Изменил MetaGenerator) -Так же добавил модуль верификации пользователей. -Поправил дизайн модуля рейтинга. -Фикс бага с оповещениями. Мастер установки скрипта взят со сборки Adrey Ajax Пишите баги и модификации в комментариях, которые хотите увидеть в сборке.
  13. Ну что можно сказать... Тоже начинаю работать под дизайн viiengine lite.. буду выкладывать обновление... Я тут новичок, строго не судите 😃 Хочу сделать свой соц сеть 😃
  14. Не удаляется смс переписка.. В модуле личные сообщение не удаляются смс переписки... нажимаю удалить, обновляю страницу и опять появляются. Как решить?
  15. И так дорогие друзья проект открыт. За основу был взят движок - VII Engine license (Nulled) от cmstools.ru Глобально все новости Вы сможете найти тут - НОВОСТИ: CMS Nine Engine ну и на все дальнейшие ссылки и остальное вы сможете найти НОВОСТИ: CMS Nine Engine или же Все для ВЕБ МАСТЕРА ( система будет аналогична форуму и будет дружить как партнеры я надеюсь что администрация будет не против такой дружбы и не что не скажет за то что было использовано аналогичное название "надеюсь на понимание админов" ). ну а основная тема системы обновлённой будет специально выделенный домен - Vii Engine - DEMO Site В дальнейшем Вы сможете и тут получать обновления иже на сайтах которые я указал выше но в любом случаи все данные будут как тут так и на тех ресурсах которые я указал выше. ну и не как без - GitHub ( ребят не надо мне писать уже кидай и тому подобное я не успеваю просто на просто все и сразу делать все постепенно ) Позже в теме будут добавляться что проделано + скриншоты.
  16. Всем привет,народ выручите поставил сборку,и пишет ошибку,в папке functions.php,как это исправить? $fp = fopen($filename, 'wb+'); fwrite($fp,$cache_text); fclose($fp);
  17. HELP ME! Друзья, мне очень нужна версия/сборка/движок ВКонтакте 2007 года. На всех сборках, что я находил - не работал CSS, не знаю почему(может мне надо скачать vii на компьютер?). VII ENGINE или SOCIAL ENGINE - мне неважно. Заранее огромное спасибо.
  18. Version 1.1

    834 downloads

    Данная сборка имеет множество багов.Но модули которые есть внутри, делают её более менее значимой. Что присутствует в сборке: Удачной работы со сборкой
  19. Version 1.0.3

    413 downloads

    Vii Lite - это быстроразвивающийся движок социального происхождения который подойдет для малого и большого бизнеса по строенный на основе движка Vii Engine. Некоторые дополнения и изменения: -Полная поддержка PHP7 -Полная поддержка Memcache или Файловый кэш -Поддержка базы данных MariaDB 10+ и MySQL 8+ -Новая более сложная капча от ботов -Поддержка HTTPS/HTTP -Фикс бага с оповещениями заменен на LongPolling -Новая структура -Автозагрузчик модулей -Статическая загрузка CSS и JS (Аналогично ВКонтакте) -Добавлена поддержка Emoji -Замена старых функций PHP на новые -Полная индексация сайта (Открытые страницы сайта для гостей и поисковиков + Название сайта, Описание сайта и Ключевые слова) -Беседы (Групповой чат) -API
  20. Вот вии еще много кто интересуется,а покажите кто что сделал у кого какие проекты,вии скоро 10 лет а есть хоть пару проектов норм или все стоят из паблика )))
  21. Есть у кого сборка vii engine с минимум багов?
  22. Если честно, удивлён что этого до сих пор нигде нет.. Элементарный код. Открываем файл /templates/mobile/im/form.tpl Это <a class="fl_r" style="font-size:12px;margin-top:6px" href="/messages" onClick="im.open('{for_user_id}'); return false">Обновить переписку</a> Заменяем на это <script type="text/javascript"> setTimeout(function() { im.open('{for_user_id}'); }, 3000); </script> Вместо 3000 мс можно поставить любое значение) + в репу если помог или вы искали этот хак
  23. Vii Lite Просмотр файла Vii Lite - это быстроразвивающийся движок социального происхождения который подойдет для малого и большого бизнеса по строенный на основе движка Vii Engine. Некоторые дополнения и изменения: -Полная поддержка PHP7 -Полная поддержка Memcache или Файловый кэш -Поддержка базы данных MariaDB 10+ и MySQL 8+ -Новая более сложная капча от ботов -Поддержка HTTPS/HTTP -Фикс бага с оповещениями заменен на LongPolling -Новая структура -Автозагрузчик модулей -Статическая загрузка CSS и JS (Аналогично ВКонтакте) -Добавлена поддержка Emoji -Замена старых функций PHP на новые -Полная индексация сайта (Открытые страницы сайта для гостей и поисковиков + Название сайта, Описание сайта и Ключевые слова) -Беседы (Групповой чат) -API Добавил PHPSocial Добавлено 20.05.2020 Категория Сборки vii engine  
  24. Модуль официальная страница как в ВК vk.com/id100. Если есть вопросы, пишите в комментарии. Если понравился, ставь + И так, переходим в system/modules/profile.php И находим такой код //Если заблокирована } elseif($row['user_ban_date'] >= $server_time OR $row['user_ban_date'] == "0"){ $metatags['title'] = $row['user_search_pref']; $user_speedbar = $row['user_search_pref']; $tpl->load_template("profile_baned_all.tpl"); $user_name_lastname_exp = explode(' ', $row['user_search_pref']); $tpl->set('{name}', $user_name_lastname_exp[0]); $tpl->set('{lastname}', $user_name_lastname_exp[1]); $tpl->compile('content'); И ниже вставляем этот код //Если ОФ.страница } elseif($row['user_group'] == '4'){ $metatags['title'] = $row['user_search_pref']; $user_fm_wrap_bar = $row['user_search_pref']; $tpl->load_template("profile_tex.tpl"); $user_name_lastname_exp = explode(' ', $row['user_search_pref']); $tpl->set('{name}', $user_name_lastname_exp[0]); $tpl->set('{lastname}', $user_name_lastname_exp[1]); $tpl->set('{user-id}', $row['user_id']); $tpl->compile('content'); Кстати, в начале кода } elseif($row['user_group'] == '4'){ можно заменить на } elseif($row['user_id'] == '1'){ - номер странички которую нужно скрыть. (по желанию) 1. Файл profile_tex.tpl кидаем в папку с шаблоном (...templates/Default) 2. В profile_tex.tpl пишем адрес сайта и путь для картинки 3. Два вида кодировки: выберите ту которая подойдёт: utf-8 , cp-1251 . 4. Выбираем картинку и заливаем в нужный отдел: http://вашсайт/templates/Default/images/main/profile_tex.jpg 5. Чистим кэш браузера и всё. P.S Я не знаю есть такая тема или нет, но оставлю. Если понравилось, то жми + of.stranichka-kak-v-vk-id100.rar
  25. Приветствую всех, кто решил создать социальную сеть на движке - VII ENGINE Могу вас поздравить, вы сделали правильный выбор!Данный двигатель с открытым кодом, что делает его очень удобным в использовании. В этой теме будет находится материал, который поможет вам при создании вашей собственной социальной сети.Эта тема будет обновляться, и дополняться новыми уроками/инструкциями. Удачи в разработке! Урок 1. "Зачем нужна социальная сеть?" Урок 2. "Подбираем доменное имя!" Урок 3. "Выбираем хостинг."
×
×
  • Create New...