Vítejte na PHP Fusion Czech

PHP-Fusion je webová aplikace psaná v PHP využívající MySQL. Jde o redakční systém s AGPL licenci psaný Nickem Jonesem a jeho developerským týmem. První verze tohoto redakčního systému vyšla v roce 2003 a aktuální stabilní verze je verze 7.02.07. V současné době má PHP-Fusion okolo 20 podpor v různých jazycích. Můžete do něj instalovat různá rozšíření a měnit vzhledy.

Stáhnout aktuální verzi: 7.02.07 [Česky]

Poslední články

Počet článků: 32

Online

silicondoll01:45:54
wude 1 den
James96 2 dny
matze 2 dny
lindsayrobin 4 dny
Počet uživatelů 2140

Hiearchie článků

Rozcestník » SEO Optimalizace » Krásnější odkazy

Krásnější odkazy

Takže asi první bod kterým začneme je, udělat si funkci která nám překonvertuje daný text do textu bez diakritiky a bez velkých písmen. Zde máme funkci seoname která nám toto vykoná:

function seoname($nazev)  {
$preved = str_replace(
array("á","č","ď","é","ě","í","ľ","ň","ó","ř","š","ť","ú","ů","ý",
"ž","Á","Č","Ď","É","Ě","Í","Ľ","Ň","Ó","Ř","Š","Ť","Ú","Ů","Ý","Ž") ,
array("a","c","d","e","e","i","l","n","o","r","s","t","u","u","y",
"z","A","C","D","E","E","I","L","N","O","R","S","T","U","U","Y","Z") ,
$nazev);
$preved = str_replace('=',' ',$preved);
$preved = str_replace('/',' ',$preved);
$preved = str_replace('\\',' ',$preved);
$preved = str_replace('@',' ',$preved);
$preved = str_replace('~',' ',$preved);
$preved = str_replace('!',' ',$preved);
$preved = str_replace('£',' ',$preved);
$preved = str_replace('$',' ',$preved);
$preved = str_replace('%',' ',$preved);
$preved = str_replace('^',' ',$preved);
$preved = str_replace('*',' ',$preved);
$preved = str_replace('_',' ',$preved);
$preved = str_replace('{',' ',$preved);
$preved = str_replace('}',' ',$preved);
$preved = str_replace('[',' ',$preved);
$preved = str_replace(']',' ',$preved);
$preved = str_replace('-',' ',$preved);
$preved = str_replace(' & ',' ',$preved);
$preved = str_replace('"',' ',$preved);
$preved = str_replace('.',' ',$preved);
$preved = str_replace('\'',' ',$preved);
$preved = str_replace(',',' ',$preved);
$preved = str_replace('   ','-',$preved);
$preved = str_replace('  ','-',$preved);
$preved = str_replace(' ','-',$preved);
$preved = str_replace(':','',$preved);
$preved = str_replace('#','',$preved);
$preved = str_replace('(','',$preved);
$preved = str_replace(')','',$preved);
$preved = str_replace('–','-',$preved);
$preved = str_replace('---','-',$preved);
$preved = str_replace('--','-',$preved);
$preved = strtolower($preved);
return $preved;
}


Tady tuto funkci si uložte do souboru seoname.php který uložíte do složky includes. Takže teď jsme zvládli vytvořit tuto funkci a uložit. Teď ji musíme někde includovat. Proto si otevřete soubory header.php, admin_header.php a admin_header_mce.php ve složce root/themes/templates/. Na začátku kódu máte vždy includovány nějaké soubory. Pod to vložíme tento kód do každého vyjmenovaného souboru.

include INCLUDES."seoname.php";

Máme hotovo a rovnou se můžeme vrhnout na soubor .htaccess. Vytvořte tento soubor a vložte do něj následující kód:


## Umístění PHP-Fusion
RewriteBase /


## Zapnuto přepisování odkazů
RewriteEngine On

## Převede adresu do tvaru www.domena.tld
RewriteCond %{HTTP_HOST} ^domena\.tld [nc]
RewriteRule (.*) http://www.domena.tld/$1 [R=301,L]

## Základní adresy
RewriteRule ^novinky\.html$ news.php [N]

## Další adresy
RewriteRule ^(.*)-u([0-9]*)\.html$ profile.php?lookup=$2 [L]


Zde máme vysvětlení: ^ tento znak znamená začátek zápisu, (.*) toto zase zanemná, že zde může být cokoliv tedy jakékoliv čísla i písmena, ([0-9]*) zde můžete mít jakékoliv číslo tedy u nás to bude znamenat ID, $ tento znak znamená ukončení zápisu, $2 tímto ukončíme zápis a ta dvojka znamená že je nakonci lookup ID tedy číslo takže ta dvojka znamená číslo závorky takže první je závorka kde může být vše a druhá je jen na čísla.

Takže .htaccess máme a teď už na nás čeká jen upravování souborů na tyto odkazy. Uvedu příklad na profilu základním v PHP-Fusionu. Je tam kód asi takovej:

<a href='".BASEDIR."profile.php?lookup=".$data['user_id']."' title='".data['user_name']."'>".data['user_name']."</a>

My ale toto předěláme na tento kód:

<a href='".BASEDIR.seoname($data['user_name'])."-u".data['user_id'].".html' title='".data['user_name']."'>".data['user_name']."</a>

BASEDIR nás přesměruje do indexu stránky a funkce seoname nám převede nick uživatele třeba Xer0 na xer0. -u je jakékoliv označení tedy u jako uživatel. Za ním nálseduje kód na ID uživatele podle kterého se vše orientuje a za ním již koncovka *.html.

Toto je snad ode mne vše takže jakékoliv dotazy pište do fóra :)

Komentáře

  1. Zelvar
    dne 07.August 2011 16:23:21

    A je udělat u novinek aby tam nebylo to .html ale čistě novinky/ ? Smile

    //EDIT: Přišel jsem na to dík za návod Smile

  2. Diffuser
    dne 17.December 2012 21:16:35

    Mě by spíš zajímalo, jak u těch novinek udělat tu hezčí url:
    např. neco.cz/novinky/vichrice-na-zapade
    bez .html
    Šlo by to nějak? Smile

Přidat komentář

Pro přidání komentáře musíte být přihlášený.

Partneři

Apartmány Praha nabízí - levné ubytování v Praze v okolí Karlova mostu. Klimatizace do bytu a klimatizace LG. Automobily Suzuki a Suzuki SX4. Tvorba webu a SEO. Doprava, přeprava, spedice. Nákladní auta a inzerce tahačů. Zastavení exekuce nemovitosti.
Rozvod online, pohřební služby, nebankovní půjčky pro každého. Levné taxi v Brně ušetří peníze. Drink and drive taxi Brno.