Url: Dash vs. Underscore [zamknięty]
Czy powinno być /about_us Czy /about-us?
Z punktu widzenia użyteczności, osobiście uważam, że /about-us jest znacznie lepszy dla użytkownika końcowego, ale Google i większość innych stron internetowych (i frameworków javascript) używają wzorca nazewnictwa podkreślenia. Czy to tylko kwestia stylu? Czy są jakieś problemy ze zgodnością z myślnikami?
18 answers
To tylko przypuszczenie, ale wygląda na to, że wybrali ten, którego ludzie najprawdopodobniej nie użyliby w nazwie. W ten sposób możesz mieć nazwę, która zawiera słowo dzielone i nadal używać underbara jako ogranicznika słowa, np. UseTwo-wayLinks może być przekonwertowane na use_two-waylinks.
W twoim przykładzie, / about-us byłby katalogiem o nazwie podzielonej wyrazem " about-us "(gdyby takie słowo istniało, a / about_us byłby katalogiem o nazwie dwu wyrazowej frazy "about us" przekonwertowanym do pojedynczego ciągu znaków innych niż białe.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-23 05:54:36
Rozważ użycie interpunkcji w swoim Url. URL http://www.example.com/green-dress.html jest dla nas znacznie bardziej przydatna niż http://www.example.com/greendress.html . Zalecamy używanie myślników (-) zamiast podkreślenia ( _ ) w Twoim Url.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-02-23 13:20:50
To nie tylko dash vs. underscore:
- tekst ze spacjami
- textwithoutspaces
- encoded%20spaces%20in%20url
- underscore_means_space
- myślnik-oznacza-przestrzeń
- plus + oznacza + przestrzeń
- camelCase
- PascalCase
- " cytowany tekst ze spacjami " (i pojedynczy cytat vs. podwójny cytat)
- slash / means / space
- dot.znaczy.przestrzeń
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-26 02:43:12
Oto kilka punktów na korzyść kresek:
- myślniki są zalecane przez Google nad podkreślnikami ( Źródło). Myślniki są bardziej znane użytkownikowi końcowemu.
- myślniki łatwiej pisać na standardowej klawiaturze (nie trzeba przesuwać). Kreski nie chowają się za podkreśleniami.
- myślniki są bardziej natywne w kontekście adresów URL, ponieważ są dozwolone w nazwach domen.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-12-30 16:55:59
Google w przeszłości nie traktowało podkreślenia jako separatora słów, co uważałem za dość szalone, ale najwyraźniej teraz tak. Ze względu na tę historię preferowane są myślniki. Chociaż podkreślenia są teraz dopuszczalne z punktu widzenia SEO, nadal uważam, że kreski są najlepsze.
Jedną z korzyści jest to, że przeciętny pół-komputerowy-analfabeta web Surfer jest znacznie bardziej prawdopodobne, aby być w stanie wpisać myślnik na klawiaturze, mogą nawet nie wiedzieć, co to jest podkreślenie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-23 07:27:12
Kiedyś używałem podkreślników cały czas, teraz używam ich tylko do części strony, do których nie chcę, aby ktoś bezpośrednio linkował, Pliki js, css, ... itd.
Z punktu widzenia SEO, kreski wydają się być preferowanym sposobem obchodzenia się z nim, dla szczegółowego wyjaśnienia, z ust koni http://www.mattcutts.com/blog/dashes-vs-underscores/.
Innym problemem, który wydaje się występować, bardziej z ogółu społeczeństwa niż programistów, jest to, że gdy hiperłącze z podkreślenie jest podkreślone, nie widać podkreślenia. Zaawansowani użytkownicy to rozwiążą, ale Joe Public prawdopodobnie nie.
Nadal używaj podkreślników w kodzie zamiast myślników - Programiści je rozumieją, większość innych nie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-23 06:37:35
Jeff ma kilka przemyśleń na ten temat: https://blog.codinghorror.com/of-spaces-underscores-and-dashes/
Są wady obu. Sugerowałbym, żebyś wybrał jedną i był konsekwentny.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-01-24 07:20:44
Guru SEOJim Westergren przetestował to w 2005 roku ze ścisłej perspektywy SEO i doszedł do wniosku, że + (plus) jest rzeczywiście najlepszym ogranicznikiem słów. Jednak nie wydaje się to rozsądne i może być spowodowane błędem w algorytmach wyszukiwarek. Poleca - (dash) zarówno dla czytelności, jak i SEO.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-23 14:38:57
Lepiej mi z podkreśleniem. Po pierwsze, pasują do mojego zwykłego doświadczenia programistycznego variable_names_are_not-subtraction
, po drugie, i wierzę, że już o tym wspomniano, słowa mogą mieć myślniki, ale nigdy nie mają podkreślenia. Aby wybrać naprawdę głupi przykład, "państwo narodowe" różni się od "państwo narodowe". Ten pierwszy tłumaczy coś w rodzaju " ziemi państw narodowych "(pomyśl: "to jest kraj broni! Lepiej się rusz,co?"), natomiast ten ostatni wygląda jak lista synonimów. http://example.com/nation-state-country/
nie wydaje się oznaczać tego samego co http://example.com/nation-state_country/
, A jednak, jeśli łączniki są ogranicznikami / "spacją" s oprócz znaków w słowach, może. Ta ostatnia wydaje się bardziej jasna co do rzeczywistego celu, podczas gdy ta pierwsza wygląda bardziej jak ta lista, jeśli w ogóle.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-23 06:09:09
Podkreślniki zastępują spacje, w których białe znaki nie są dozwolone. Myślniki mogą być częścią słowa, dlatego Łączenie słów z myślnikami, które już zawierają myślniki, jest brzydkie / mylące.
Zły:
/low-budget-movies
Dobre:
/low-budget_movies
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-23 06:13:38
Myślę, że dash jest lepszy z punktu widzenia użytkownika i nie będzie kolidował z SEO.
Nie wiem, gdzie i dlaczego zaczęła się konwencja podkreślenia.
Trochę więcej wiedzy dyskusja
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-23 05:53:59
Dla widoku użytkownika końcowego wolę "about-us" lub "about us" a nie "about_us"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-23 06:22:05
Preferuję myślniki na podstawie tego, że podkreślenie może być w pewnym stopniu zasłonięte przez podkreślenie linku. Tekstowe adresy URL służą przede wszystkim do rozpoznawania na pierwszy rzut oka, a nie do poprawności gramatycznej, więc argument za zachowaniem myślników do użycia w wyrazach podzielonych jest ograniczony.
Gdzie dokładność tekstowego adresu URL jest ważna, gdy czytasz go komuś, w takim przypadku nie chcesz mylić podkreślenia ze spacją (lub odwrotnie).
A także znajdź kreski więcej estetycznie, jeśli to się liczy.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-25 22:07:34
Osobiście unikałbym używania about-us lub about_us, a po prostu używałbym about.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-23 05:55:50
Niektóre starsze serwery hostingowe i serwery DNS mają problemy z parsowaniem podkreślników dla adresów URL, więc może to odgrywać rolę w konwencjach takich jak te.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-23 06:11:08
Osobiście unikałbym wszystkich kresek i podkreślników i wybierałbym camelCase lub PascalCase jeśli jest w kodzie.
Artykuł Wikipedii na camelCase wyjaśnia trochę rozumowania leżącego u podstaw jego początków. Wynoszą
- leniwi programiści, którzy nie lubili reaching for the _ key
- potencjalne zamieszanie o czytelność Klawiatura" Alto " w xerox PARC to nie miało podkreślenia.
If the user is to see the string then Nie zrobiłbym żadnego z powyższych i użył "O nas."lub " AboutUs", gdybym musiał, ponieważ camelCase rozprzestrzenił się do powszechnego użytku w niektórych obszarach, takich jak nazwy produktów. i. E ThinkPad, TiVo
Spacje są dozwolone w adresach URL, więc możesz po prostu użyć " / about us "w linku (chociaż będzie to zakodowane do "/about%20us". Ale bądź szczery, zawsze będzie to osobiste preferencje, więc nie ma tu prawdziwej odpowiedzi.
Wybrałbym konwencję, że myślniki mogą pojawiać się w słowach, więc spacje powinny być zamienione na podkreślniki.
Lepsze wykorzystanie . - /jako separatory, ponieważ _ wydaje się nie być separatorem.
Http://www.sistrix.com/blog/832-how-long-may-a-linktext-be.html
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-08-17 06:11:10