You need flash player!

Pobierz Adobe Flash Player

Dodatkowe usługi

Dla mniej wtajemniczonych webmasterów, którzy pragną stworzyć własną witrynę na bazie 4images, wykonuję instalację i modyfikację skryptu. Ponadto prowadzę bezpośrednie wsparcie witryny (administracja).

Promocja

HomeForum
Witamy, Gościu
Nazwa użytkownika Hasło: Zapamiętaj mnie

MOD - Przyjazne URL galerii
(1 przeglądających) (1) Gość
  • Strona:
  • 1

TEMAT: MOD - Przyjazne URL galerii

MOD - Przyjazne URL galerii 11 lata, 1 miesiąc temu #25

  • andreoid
  • Offline
  • Administrator
  • Posty: 29
  • Oklaski: -1
Każdy z pewnością zastanawiał się czemu w skrypcie 4images adresy URL są tak niezrozumiale wyświetlane w przedlądarkach internetowych, a w dodatku indeksowane na przykład przez Google, w ten sam sposób. Wytłumaczenie tego jest proste, otóż 4images jest skryptem PHP z bazą danych i tworzy tak zwane strony dynamiczne, których efektem są adresy URL dynamiczne.
Przykałdy:
www.domena.pl/details.php?image_id= ...
www.domena.pl/categories.php?cat_id=2&sessionid= ...
www.domena.pl/search.php?search_keywords= ...
itd.
Pare lat temu wyszukiwarki internetowe takie jak Google miały problemy z indeksowaniem stron dynamicznych, dzisiaj radzą sobie bardzo dobrze z tym zagadnieniem. Pomimo to możemy pomóc w indeksowaniu stron dynamicznych stosując plik .htaccess, pod warunkiem że jest aktywny na serwerze mod rewrite.

Demo

Krok 1
Otwórz plik sessions.php, ścieżka /includes/sessions.php i odszukaj
 
function url($url, $amp = "&") {
global $l;
$dummy_array = explode("#", $url);
$url = $dummy_array[0];
 
if ($this->mode == "get" && strpos($url, $this->session_id) === false) {
$url .= strpos($url, '?') !== false ? $amp : "?";
$url .= SESSION_NAME."=".$this->session_id;
}
 
if (!empty($l)) {
$url .= strpos($url, '?') !== false ? $amp : "?";
$url .= "l=".$l;
}
 
$url .= (isset($dummy_array[1])) ? "#".$dummy_array[1] : "";
return $url;
}
 

i zmień na
 
//------------------------------------------------------------
//-------------- Start [MOD] Google Friendly Urls ------------
//------------------------------------------------------------
/*Orginal
function url($url, $amp = "&") {
global $l;
$dummy_array = explode("#", $url);
$url = $dummy_array[0];
 
if ($this->mode == "get" && strpos($url, $this->session_id) === false) {
$url .= strpos($url, '?') !== false ? $amp : "?";
$url .= SESSION_NAME."=".$this->session_id;
}
 
if (!empty($l)) {
$url .= strpos($url, '?') !== false ? $amp : "?";
$url .= "l=".$l;
}
 
$url .= (isset($dummy_array[1])) ? "#".$dummy_array[1] : "";
return $url;
}
*/

function url($url, $amp = "&") {
global $l, $user_info;
$dummy_array = explode("#", $url);
$url = $dummy_array[0];
$url = str_replace('&', '&', $url);
if (!defined('IN_CP')) {
if (strstr($url, 'index.php')) {
$url = str_replace('index.php', './', $url);
}
elseif (strstr($url, 'search.php')) {
if (strstr($url, 'page=')) {
preg_match('#page=([0-9]+)&?#', $url, $matches);
if (isset($matches[1])) {
$split = explode('?', $url);
$url = $split[0];
$query = @$split[1];
$url = str_replace('search.php', 'search.'.$matches[1].'.htm', $url);
$query = str_replace('page='.$matches[1].'&', '', $query);
$query = str_replace('&page='.$matches[1], '', $query);
$query = str_replace('page='.$matches[1], '', $query);
if (!empty($query)) {
$url .= '?' . $query;
}
}
}
else {
$url = str_replace('search.php', 'szukaj.htm', $url);
}
}
elseif (strstr($url, 'lightbox.php')) {
if (strstr($url, 'page=')) {
preg_match('#page=([0-9]+)&?#', $url, $matches);
if (isset($matches[1])) {
$split = explode('?', $url);
$url = $split[0];
$query = @$split[1];
$url = str_replace('lightbox.php', 'album.'.$matches[1].'.htm', $url);
$query = str_replace('page='.$matches[1].'&', '', $query);
$query = str_replace('&page='.$matches[1], '', $query);
$query = str_replace('page='.$matches[1], '', $query);
if (!empty($query)) {
$url .= '?' . $query;
}
}
}
else {
$url = str_replace('lightbox.php', 'album.htm', $url);
}
}
elseif (strstr($url, 'categories.php')) {
if (strstr($url, 'cat_id=') && strstr($url, 'page=')) {
preg_match('#cat_id=([0-9]+)&?#', $url, $matches1);
preg_match('#page=([0-9]+)&?#', $url, $matches2);
if (isset($matches1[1]) && isset($matches2[1])) {
$split = explode('?', $url);
$url = $split[0];
$query = @$split[1];
$url = str_replace('categories.php', 'kategoria'.$matches1[1].'.'.$matches2[1].'.htm', $url);
$query = str_replace('cat_id='.$matches1[1].'&', '', $query);
$query = str_replace('&cat_id='.$matches1[1], '', $query);
$query = str_replace('cat_id='.$matches1[1], '', $query);
$query = str_replace('page='.$matches2[1].'&', '', $query);
$query = str_replace('&page='.$matches2[1], '', $query);
$query = str_replace('page='.$matches2[1], '', $query);
if (!empty($query)) {
$url .= '?' . $query;
}
}
}
elseif (strstr($url, 'cat_id=')) {
preg_match('#cat_id=([0-9]+)&?#', $url, $matches);
if (isset($matches[1])) {
$split = explode('?', $url);
$url = $split[0];
$query = @$split[1];
$url = str_replace('categories.php', 'kategoria'.$matches[1].'.htm', $url);
$query = str_replace('cat_id='.$matches[1].'&', '', $query);
$query = str_replace('&cat_id='.$matches[1], '', $query);
$query = str_replace('cat_id='.$matches[1], '', $query);
if (!empty($query)) {
$url .= '?' . $query;
}
}
}
else {
$url = str_replace('categories.php', 'kategoria.htm', $url);
}
}
elseif (strstr($url, 'details.php?image_id=')) {
if (strstr($url, 'image_id=') && strstr($url, 'mode=')) {
preg_match('#image_id=([0-9]+)&?#', $url, $matches1);
preg_match('#mode=([a-zA-Z0-9]+)&?#', $url, $matches2);
if (isset($matches1[1]) && isset($matches2[1])) {
$split = explode('?', $url);
$url = $split[0];
$query = @$split[1];
$url = str_replace('details.php', 'fotografia'.$matches1[1].'.'.$matches2[1].'.htm', $url);
$query = str_replace('image_id='.$matches1[1].'&', '', $query);
$query = str_replace('&image_id='.$matches1[1], '', $query);
$query = str_replace('image_id='.$matches1[1], '', $query);
$query = str_replace('mode='.$matches2[1].'&', '', $query);
$query = str_replace('&mode='.$matches2[1], '', $query);
$query = str_replace('mode='.$matches2[1], '', $query);
if (!empty($query)) {
$url .= '?' . $query;
}
}
}
else {
preg_match('#image_id=([0-9]+)&?#', $url, $matches);
if (isset($matches[1])) {
$split = explode('?', $url);
$url = $split[0];
$query = @$split[1];
$url = str_replace('details.php', 'fotografia'.$matches[1].'.htm', $url);
$query = str_replace('image_id='.$matches[1].'&', '', $query);
$query = str_replace('&image_id='.$matches[1], '', $query);
$query = str_replace('image_id='.$matches[1], '', $query);
if (!empty($query)) {
$url .= '?' . $query;
}
}
}
}
elseif (strstr($url, 'postcards.php?image_id=')) {
preg_match('#image_id=([0-9]+)&?#', $url, $matches);
if (isset($matches[1])) {
$split = explode('?', $url);
$url = $split[0];
$query = @$split[1];
$url = str_replace('postcards.php', 'postcard.img'.$matches[1].'.htm', $url);
$query = str_replace('image_id='.$matches[1].'&', '', $query);
$query = str_replace('&image_id='.$matches[1], '', $query);
$query = str_replace('image_id='.$matches[1], '', $query);
if (!empty($query)) {
$url .= '?' . $query;
}
}
}
}
if ($this->mode == "get" && strstr($url, $this->session_id)) {
$url .= strpos($url, '?') !== false ? '&' : '?';
$url .= SESSION_NAME."=".$this->session_id;
}
if (!empty($l)) {
$url .= strpos($url, '?') ? '&' : '?';
$url .= "l=".$l;
}
$url = str_replace('&', $amp, $url);
$url .= isset($dummy_array[1]) ? "#".$dummy_array[1] : "";
return $url;
}
//------------------------------------------------------------
//-------------- End [MOD] Google Friendly Urls --------------
//------------------------------------------------------------


Krok 2

Stwórz nowy plik htaccess.txt i zapisz w nim
 
# Begin search engine friendly links code
RewriteEngine On
#RewriteBase /
RewriteRule ^album\.htm$ lightbox.php?%{QUERY_STRING}
RewriteRule ^album\.([0-9]+)\.htm$ lightbox.php?page=$1&%{QUERY_STRING}
 
RewriteRule ^szukaj\.htm$ search.php?%{QUERY_STRING}
RewriteRule ^szukaj\.([0-9]+)\.htm$ search.php?page=$1&%{QUERY_STRING}
 
RewriteRule ^kategoria\.htm$ categories.php?%{QUERY_STRING}
RewriteRule ^kategoria([0-9]+)\.([0-9]+)\.htm$ categories.php?cat_id=$1&page=$2&%{QUERY_STRING}
RewriteRule ^kategoria([0-9]+)\.htm$ categories.php?cat_id=$1&%{QUERY_STRING}
 
RewriteRule ^fotografia([0-9]+)\.htm$ details.php?image_id=$1&%{QUERY_STRING}
RewriteRule ^fotografia([0-9]+)\.([a-zA-Z0-9]+)\.htm$ details.php?image_id=$1&mode=$2&%{QUERY_STRING}
 
RewriteRule ^postkartka([a-zA-Z0-9]+)\.htm$ postcards.php?postcard_id=$1&%{QUERY_STRING}
RewriteRule ^postkartka\.img([0-9]+)\.htm$ postcards.php?image_id=$1&%{QUERY_STRING}
 
# End search engine friendly links code
 

Następnie zapisz plk w katalogu głównym skryptu 4images i przepisz go na .htaccess
Otrzymasz skrócone adresy URL, np:
www.domena.pl/fotografia8.htm
www.domena.pl/kategoria3.htm
Chciałbym zmienić świat, ale Bóg nie dał mi kodu źródłowego ...!
Ten obraz jest ukryty dla gości. Zaloguj się lub zarejestruj aby go zobaczyć.

  • Strona:
  • 1
Wygenerowano w 0.31 sekundy

Najnowsze szablony

Great Docs and SupportBrak wiadomości

więcej...

Najnowsze modyfikacje

Native RTL SupportMOD - Komentarze użytkownika
Modyfikacja pozwala na wyświetlenie wszystkich komentarzy zredagowanych przez tego samego użytkownika. Link zainstalowany w profilu użytkownika, oraz w szablonach komentarzy wyświetlanych na stronach szczegółowych poszczególnych zdjęć pokaże wszystkie komentarze danego użytkownika.

więcej...