Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

SEO - čisti linkovi bez naših znakova - kako?

[es] :: PHP :: SEO - čisti linkovi bez naših znakova - kako?

[ Pregleda: 2484 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

ziki
Zijad Redžić

Član broj: 23595
Poruke: 45
*.dsl.optinet.hr.

Sajt: www.hrvatskiportali.com


Profil

icon SEO - čisti linkovi bez naših znakova - kako?04.03.2009. u 16:19 - pre 184 meseci
Ovako imam funkciju koja mi od naslova članka očisti sve što ne treba da bude nastavak za link. Koristim url rrewrite ali to je nevazno, znači ja imam čisti url www.mojweb.com/clanak/neki-naslov itd. I sad me zanima kako da zamijenim naše znakove č, ć, ž, š, đ sa c, c, z, s, d?

Koristim charset windows-1250

Code:


function napraviLink($text){
$text=strtolower($text);
        $code_entities_match = array(' ','--','&quot;','!','@','#','$','%','^','&','*','(',')','_','+','{','}','|',':','"','<','>','?','[',']','\\',';',"'",',','.','/','*','+','~','`','=', 'ž', 'č', 'ć', 'đ', 'š');
        $code_entities_replace = array('-','-','','','','','','','','','','','','','','','','','','','','','','','','','z','c','c','d','s');
        $text = str_replace($code_entities_match, $code_entities_replace, $text);
        return $text;
}



i to ne radi, sta da stavim tako da mi se zamijene s navedenim?

hvala
Svijet se treba jednoglasno ujediniti da se unisti svaki bit, znak koda IE6, a za IE7 dozvoliti samo spomen da je postojala!!!
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-4.sezampro.yu.



+33 Profil

icon Re: SEO - čisti linkovi bez naših znakova - kako?04.03.2009. u 17:10 - pre 184 meseci
Ako me oči ne varaju, taj niz sa zamenama ima manje elemenata od tog prvog, tako da ce f-ja str_replace za tih poslednjih nekoliko elemenata razlike, uzeti prazan string za zamenu, pa će ta naša slova (č, ć, š, đ, ž) biti zamenjena praznim stringom.

[Ovu poruku je menjao Nikola Poša dana 04.03.2009. u 18:30 GMT+1]
 
Odgovor na temu

Miroslav Ćurčić
ex mVeliki
Novi Sad

Član broj: 19034
Poruke: 1118
..2.252.195.static.beotel.net.



+19 Profil

icon Re: SEO - čisti linkovi bez naših znakova - kako?04.03.2009. u 17:49 - pre 184 meseci
Naša slova 'ž', 'č', 'ć', 'đ', 'š' treba da uneseš kao windows-1250 karaktere, najbolje kao 0xA1, jer ti verovatno pišeš skript u uft8 formatu.
Isto tako verujem da strtolower neće umeti da smanji SR karaktere jer je predviđen samo za standardni raspored, ako ne grešim.
"The quieter you become, the more you are able to hear."
Blog | PowerCMS
 
Odgovor na temu

Skaarj
Novi Sad

Član broj: 21463
Poruke: 365
79.101.182.*



+3 Profil

icon Re: SEO - čisti linkovi bez naših znakova - kako?04.03.2009. u 22:28 - pre 184 meseci
Iskren da budem ja sam za ovo iscupao jednu funkciju iz wordpressa... malo je veca ali resava ove probleme... pogotovu sto za nase stringove treba petljati sa multibajt funkcijama sto mi bas nije poslo za rukom.. ali da cuknem u drvo ova radi ako valja za sada.
 
Odgovor na temu

ziki
Zijad Redžić

Član broj: 23595
Poruke: 45
*.dsl.optinet.hr.

Sajt: www.hrvatskiportali.com


Profil

icon Re: SEO - čisti linkovi bez naših znakova - kako?04.03.2009. u 23:37 - pre 184 meseci
ok ako imas tu funkciju iz wordpressa daj mi pejstaj plizz, i skripta mi je spremljena u windoes-1250

ako tko zna te znakove u tom njihovom izvornom kodu (0xA1) nek mi kaze, plizz

hvala unaprijed, i jos neko rjesenje ako ima dobro bi doslo!!!
Svijet se treba jednoglasno ujediniti da se unisti svaki bit, znak koda IE6, a za IE7 dozvoliti samo spomen da je postojala!!!
 
Odgovor na temu

Marko Medojević
Team leader
Digital ST
Beograd

Član broj: 93659
Poruke: 776
*.adsl-a-1.sezampro.yu.

Sajt: www.digitalst.rs


+99 Profil

icon Re: SEO - čisti linkovi bez naših znakova - kako?11.03.2009. u 09:44 - pre 184 meseci
Evo jedne funkcije koju ja koristim:
Code:
function urlReadyString($parString) 
{
    // prvo prebacujemo sve u lowercase
    $parString = strtolower($parString);
    
    // sada primenjujemo kod koji sam nasao na jednom forumu, on ce u dobroj meri konvertovati slova sa akcentima, ali nece sve
    $chars = array(
        chr(196).chr(134) => 'c', chr(196).chr(135) => 'c',    // ovo je za c
        chr(196).chr(140) => 'c', chr(196).chr(141) => 'c',    // ovo je za c
        chr(196).chr(144) => 'dj', chr(196).chr(145) => 'dj',    // ovo je za d
        chr(197).chr(160) => 's', chr(197).chr(161) => 's',    // ovo je za š
        chr(197).chr(189) => 'z', chr(197).chr(190) => 'z',    // ovo je za ž
    );
    $parString = strtr($parString, $chars);
    //===================================================
    
    
    // ovo ce dodatno izbaciti sve preostale akcente
    $find_x = array("&#268;","&#269;","&#262;","&#263;","&#272;","&#273;","&#352;","&#353;","&#381;","&#382;");
    $replace_x = array("c", "c", "c", "c", "dj", "dj","s","s","z","z");
    $parString = str_replace($find_x,$replace_x, $parString);
    //=========================================================
    
    // cistimo string od nepozeljnih karaktera za url
    $parString = str_replace('!',' ', $parString );
    $parString = str_replace("#", " ", $parString);
    $parString = str_replace("/", " ", $parString);
    $parString = str_replace("$", " ", $parString);
    $parString = str_replace("&amp;", " ", $parString);
    $parString = str_replace("&", " ", $parString);
    $parString = str_replace("+", " ", $parString);
    $parString = str_replace(",", " ", $parString);
    $parString = str_replace(":", " ", $parString);
    $parString = str_replace(";", " ", $parString);
    $parString = str_replace("=", " ", $parString);
    $parString = str_replace("?", " ", $parString);
    $parString = str_replace("@", " ", $parString);
    $parString = str_replace("<", " ", $parString);
    $parString = str_replace(">", " ", $parString);
    $parString = str_replace("%", " ", $parString);
    $parString = str_replace("{", " ", $parString);
    $parString = str_replace("}", " ", $parString);
    $parString = str_replace("(", " ", $parString);
    $parString = str_replace(")", " ", $parString);
    $parString = str_replace("|", " ", $parString);
    $parString = str_replace("\\", " ", $parString);
    $parString = str_replace("^", " ", $parString);
    $parString = str_replace("~", " ", $parString);
    $parString = str_replace("[", " ", $parString);
    $parString = str_replace("]", " ", $parString);
    $parString = str_replace("`", " ", $parString);
    $parString = str_replace("'", " ", $parString);
    $parString = str_replace("\"", " ", $parString);
    $parString = str_replace(" ", "-", $parString);
    $parString = str_replace("----", "-", $parString);
    $parString = str_replace("---", "-", $parString);
    $parString = str_replace("--", "-", $parString);
    //=====================================
    
    return $parString;
}  

 
Odgovor na temu

host4dzaba
php
nema

Član broj: 220879
Poruke: 4
84.41.106.*



Profil

icon Re: SEO - čisti linkovi bez naših znakova - kako?27.04.2009. u 15:10 - pre 182 meseci
odlično .... ja sam koristio sam ovaj dio ipod tekst // cistimo string od nepozeljnih karaktera za url ... nisam ostatak ...
Budi ono što jesi :)
 
Odgovor na temu

zgMa
developer,API
Sarajevo

Član broj: 221229
Poruke: 4
92.36.213.*

Sajt: api.ba


Profil

icon Re: SEO - čisti linkovi bez naših znakova - kako?30.04.2009. u 23:08 - pre 182 meseci
// Seo URL funkcija
function seo($link) {
$prije = array('{','}','&eacute;','&euml;','&frac12;','&#039;','č','ć','š','&scaron;','ž','đ','quot',"&#268;","&#269;","&#262;","&#263;","&#272;","&#273;","&#352;","&#353;","&#381;","&#382;");
$poslije = array('','','e','e','5','','c','c','s','s','z','d','',"c", "c", "c", "c", "dj", "dj","s","s","z","z");
$link = trim($link);
$link = str_replace( $prije, $poslije, $link );
$link = preg_replace('/[^a-z0-9]/i',"-", $link);
$link = str_replace( '---', '-', $link );
$link = str_replace( '--', '-', $link );
$link = strtolower($link);
return $link;
}

Ovo se vremenom ovako izdefinisalo, vjerovatno su neki html entity-i tu bez potrebe, ali neka ih za svaki slučaj :)
 
Odgovor na temu

[es] :: PHP :: SEO - čisti linkovi bez naših znakova - kako?

[ Pregleda: 2484 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.