Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Przyjazne URL - globalny indeks?
Forum PHP.pl > Forum > PHP
WebCM
Sprawa jest mniej skomplikowana w przypadku frameworków lub profesjonalnych CMS-ów, ale spójrzcie tutaj:

Odpowiednia podstrona jest ładowana na podstawie adresu URL. Dotychczas czyniłem to tak:

?d=50 ładuje kategorię o ID = 50
?co=module ładuje moduł mod/module.php lub rozszerzenie plugins/module/default.php
W przeciwnym wypadku wczytuje domyślną kategorię dla wybranego języka

Po zmianie URL-ów na przyjazne adresy mogą wyglądać tak:

domain.net/42, domena.pl/1
domain.info/art/50, domain.info/page/1

Krótsze adresy, które widzą systemy statystyk. Być może łatwiej zapamiętać. Nie spełniają jednak najważniejszej cechy SEO. Brak słów kluczowych w URL-u. Zatem problem trzeba jakoś rozwiązać. Popatrz na adresy:

domain.org/how-to-install-windows - np. artykuł, plik, wolna strona
domain.net/how_to_install_linux - np. artykuł, plik, wolna strona
domain.com/free_programs - np. kategoria z plikami
doman.pl/zdjecia_z_wakacji - np. kategoria ze zdjęciami

Które rozwiązania są warte uwagi, a przed którymi przestrzegacie?

A. Globalny indeks

Oparty o dodatkową tabelę w bazie danych lub plik .php. Skrócony algorytm:
1. Przyjmij żądanie. Jeśli adres URL nie pasuje do żadnego modułu, wczytaj globalny indeks.
2. Na podstawie indeksu załaduj kategorię lub odpowiednią podstronę modułu / rozszerzenia.

Poszczególne moduły dodawałyby wpisy automatycznie. Admin też mógłby dodawać / usuwać wpisy z indeksu. Jeżeli indeks znajdowałby się w pliku .php, skrypt nie powinien stracić na wydajności.

B. Dodatkowe pola w różnych tabelach

Tabele cats, arts, files, pages, itd. mają dodatkowe pole `url` ustawiane automatycznie lub przez admina. W procesie ładowania podstron prawie nic by się nie zmieniło. Adresy wyglądałyby tak:

domain.com/file/mozilla_firefox_3
domain.net/kategoria_z_linkami
domain.org/page/dane_kontaktowe

C. Inny pomysł - jak można inaczej zorganizować URL-e?

Tak, aby były jak najbardziej przyjazne, a dostęp do podstron stał się szybki.

Liczę na sugestie smile.gif
Riklaunim
Na ilu forach wrzuciłeś ten temat ? :] możesz generować dla każdego wpisu unikalną kopię tytułu złożonego tylko ze znaków dopuszczalnych w URLach, lub też doklejać do unikalnego numerycznego ID. Ot cała filozofia. 5 minut, a dla ciebie to z 5 lat winksmiley.jpg
piotr94
ja bym to rozegrał tak:
http://www.domena.pl/id_artykułu/jakis_tyt...la_wyszukiwarek
czyli np. http://www.cos.pl/10/testowy-artykul
i przy wyświetlaniu bierzesz pod uwagę tylko id ;-)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.