Тип контента по умолчанию - профиль пользователя

InstantCMS 2.X

Убрать из url адреса /users/

#1 12 июля 2021 в 03:50

Очень нужно чтоб url профилей пользователей имели вид site.ru/250, а не как сейчас site.ru/users/250

Когда целью стоит создание именно соц-сети, то это важно. Адреса страниц, в современных соц сетях:

facebook.com/oleg
instagram.com/oleg
vk.com/oleg
ok.ru/oleg

Нигде нет ни одного лишнего символа, там где он не нужен. Я к сожалению не смог реализовать проект соц сети, именно по этой причине.

#2 12 июля 2021 в 08:37

Где то уже поднималась подобная тема. В данный момент реализация URL профилей без users невозможна по причине того что типы контента будут конфликтовать с именами профилей.

И да, реализовать соц. сеть можно и с users. Ну это так, к слову. 😀

#3 12 июля 2021 в 10:04

Лично я реализовывал это с помощью компонента, единственное неудобство, это задавать URL адреса типа site.ru/anton, надо вручную через админку компонента. Возможно автор компонента сможет сделать это для каждого пользователя, это надо к нему обращаться.

#4 12 июля 2021 в 22:55

Нужно чтоб система сама выдавала адреса профилям автоматически, без users, сразу когда человек регистрируется. Поэтому ручная замена не подходит. Я же не смогу подменять их всем на лету, вручную. И выдать надо примерно 700-3500 url-ов… Обычный контент я взял бы уже под ручной контроль, там статей 50 будет максимум на всем проекте соцсети, проследил бы чтоб были уникальные. Но сейчас как не выворачивайся, система выдает адрес только с блоком /users/ или чем-то вместо него site.ru/некая-вставка/oleg

Добавлено спустя 9 минут

Если происходит конфликт с контентом, то может как вариант сделать профили только цифровыми? Типа site.ru/357486 А если в url присутствует хотя бы одна буква, система относит такой url к контенту и ищет уже там. 

#5 12 июля 2021 в 22:55

Я к сожалению не смог реализовать проект соц сети, именно по этой причине.

Капитан

Смешно. 

99.9% пользователей вообще не смотрят в адресную строку и не интересуются, что за белиберда там написана.

У яндекса вообще урлы километровые и яндекс отлично себя чувствует.

#6 12 июля 2021 в 23:09

Я к сожалению не смог реализовать проект соц сети, именно по этой причине.

Капитан

Смешно. 

99.9% пользователей вообще не смотрят в адресную строку и не интересуются, что за белиберда там написана.

У яндекса вообще урлы километровые и яндекс отлично себя чувствует.

Ris

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

#7 12 июля 2021 в 23:16

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

Капитан

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

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

#8 12 июля 2021 в 23:27

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

Капитан

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

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

Ris

«Понты,  свистоперделки, умственное развитие...» С Вами все ясно. Не засоряйте пожалуйста данную тему.

#9 13 июля 2021 в 12:22

Где то уже поднималась подобная тема. В данный момент реализация URL профилей без users невозможна по причине того что типы контента будут конфликтовать с именами профилей.

И да, реализовать соц. сеть можно и с users. Ну это так, к слову. 😀

SpideR

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

 

 

 

Добавлено спустя 5 минут

Очень нужно чтоб url профилей пользователей имели вид site.ru/250, а не как сейчас site.ru/users/250

Когда целью стоит создание именно соц-сети, то это важно. Адреса страниц, в современных соц сетях:

facebook.com/oleg
instagram.com/oleg
vk.com/oleg
ok.ru/oleg

Нигде нет ни одного лишнего символа, там где он не нужен. Я к сожалению не смог реализовать проект соц сети, именно по этой причине.

Капитан

В первой ветке это можно было бы решить изменить настройки в класс конфиг или задав правила переадресации в custom_rewrite.php наверняка в двойке тоже есть что-то подобное. Но там же ещё нужно будет менять вид ссылок в шаблонах и в каких то местах где имеются ссылки на профили. Вряд-ли кто кто выкатить вам тут пошаговую инструкцию) ищите исполнителя. Но как потом быть с обновлениями системы тоже вопрос 

#10 13 июля 2021 в 13:53

В догонку — ссылки на профили вида site.ru/idxxxxxxx тоже решили бы эту проблему. Такой вид выглядит намного эстетичней!

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

#11 13 июля 2021 в 14:52

 Капитан, снимаю шляпу перед вашим упорством! Но, есть базовый принцип формирования url в данной CMS:

site.ru/{имя_контроллера}/{имя_экшена}/{параметр_1}/{параметр_2}.../{параметр_n}

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

Добавлено спустя 56 минут

 Капитан, а не подойдут ли вам адреса вида site.ru/artist/xxxx ?

#12 13 июля 2021 в 15:17

 IamB,  думаю Вы правы, буду искать исполнителя. Подназвание ветки «чего бы вы хотели видеть в InstantCMS» поэтому пишу и возможно еще кому-то это нужно. Может, не изменяя базовых принципов формирования url, это можно сделать с помощью каких то фильтров, при условии, что все профили имеют вид /idxxxxx, но насколько это реально я не знаю.

"А не подойдут ли вам адреса вида site.ru/artist/xxxx" —  Спасибо Вам, что отвечаете! Я вот тоже так пробовал, разные варианты, и самый приемлемый получился такой site.ru/id/xxxx, но все равно это лишний блок со слешем /..../ посреди url.

#13 13 июля 2021 в 18:18

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

\system\core\core.php строка примерно 676 после 

  1. $segments = explode('/', $uri);

добавлем 

  1. $url = explode('?', $_SERVER['REQUEST_URI']);
  2. preg_match("/^\/id(\d+)/iu", $url[0], $matches);
  3. if (isset($matches[0]) && isset($matches[1])){
  4. $segments[0] = 'users';
  5. $segments[1] = $matches[1];
  6. }
#14 13 июля 2021 в 21:42

 AtlantisWeb,  Благодарю! Сохранил. Чуть позже применю, посмотрю что получится. 

Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.