WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Göra om text till url. (https://www.wn.se/forum/showthread.php?t=1051490)

xciso 2011-12-17 13:26

Göra om text till url.
 
Hej.
Jag sitter nu och letar med ljus och lyckta efter något program/script för att göra om mina produktrubriker till snygga länkar.

Så här är ett exempel:
Rubrik: Audi 80 Bromsrör höger
Länk: Audi-80-bromsror-hoger

Jag vill alltså göra om rubrik till länk automatiskt. Idag sitter jag och redigerar detta för hand. :(
Redigerar detta idag i OpenOffice Calc, går det att fixa direkt där i så är det ju ännu bättre ;)

Tack på förhand & Trevlig helg!

Anders Karlsson 2011-12-17 14:44

Är det omvadlinge till url som är problemet eller är det att konfigurera htaccess?

str_replace(" ", "-", "audi 100");

om det är php som du använder

youheardit 2011-12-17 15:40

Själv använder jag denna funktionen i PHP på en av mina sidor som har liknande behov som din.

PHP-kod:

function generateSlug($phrase)
{

    
$from = array("å","ä","ö","Å","Ä","Ö");

    
$to = array("a","a","o","A","A","O");

    
$result str_replace($from,$to,$phrase);
    
$result strtolower($result);

    
    
$result preg_replace("/[^a-z0-9\s-]/"""$result);
    
$result trim(preg_replace("/[\s-]+/"" "$result));
    
$result trim($result);
    
$result preg_replace("/\s/""-"$result);

    return 
$result;



xciso 2011-12-17 15:49

jag lägger in allt innehåll via openoffice calc, (excel) och skulle vilja göra ändringen direkt där i.
tänkte om det fanns någon sida, script, program där jag kan klistra in min rubrik och så skrivs den om till min url.

klein 2011-12-20 01:29

Förstår inte riktigt vad du vill uppnå. Du vill bestämma URLerna i open office? Det tro jag är komplicerat.. Antingen så gör man "SEO vänliga" URL:er , vilket i open cart fall innebär att lägga dem i en tabell som refererar till "produktens id".

Sedan kan du använda lite olika import script, jag skrev ett eget import script som jag kör i php cli..

Citat:

Ursprungligen postat av xciso (Inlägg 20427714)
jag lägger in allt innehåll via openoffice calc, (excel) och skulle vilja göra ändringen direkt där i.
tänkte om det fanns någon sida, script, program där jag kan klistra in min rubrik och så skrivs den om till min url.


xciso 2011-12-20 18:53

Jag administrerar alla mina produkter i openOffice calc, och gör även där mina seo-länkar där.
Där av att jag vill göra om "Stor Pingisboll Röd/Gul" till "stor-piningsboll-rod-gul" på ett enkelt sätt ;)

Det gick faktiskt ganska enkelt med hjälp av notepad++.
Ersätt Ö med O, ersätt / med - osv osv..

emilv 2011-12-20 19:15

Funktionen du letar efter heter BYT.UT. Här är ett exempel du kan bygga vidare på:
Kod:

BYT.UT(A1; " "; "-")

tartareandesire 2011-12-20 20:59

Citat:

Ursprungligen postat av xciso (Inlägg 20428039)
Jag administrerar alla mina produkter i openOffice calc, och gör även där mina seo-länkar där.
Där av att jag vill göra om "Stor Pingisboll Röd/Gul" till "stor-piningsboll-rod-gul" på ett enkelt sätt ;)

Det gick faktiskt ganska enkelt med hjälp av notepad++.
Ersätt Ö med O, ersätt / med - osv osv..

Nackdelen med den metoden är att det hela tiden kan dyka upp nya tecken som måste ersättas - å, ä ö är ju ganska självklara för oss men sen kan det komma upp é,, ü, ê osv.

allstars 2011-12-21 11:11

Jag kör på regexp-expression för att fixa detta.
alla tecken som inte är A-Z eller 0-9 görs om till ett bindestreck.

Jine 2011-12-26 20:54

Kod:


/**
* Create better url_titles
*/
if (!function_exists('url_title')) {

        function url_title($str, $separator = 'dash') {

                $separator = ($separator == 'underscore') ? '_' : '-';
                $str = strtolower(htmlentities($str, ENT_COMPAT, 'UTF-8'));
                $str = preg_replace('/&(.)(acute|cedil|circ|grave|ring|tilde|uml);/', "$1", $str);
                $str = preg_replace('/([^a-z0-9]+)/', $separator, html_entity_decode($str, ENT_COMPAT, 'UTF-8'));
                $str = trim($str, $separator);

                return $str;
        }

Använder den själv bla. på jine.se och en mängd fler CI-sajter.
url_title() finns inbyggt i CI, men det där är en förbättrad version.

Fungerar klockrent.

EDIT: Creds till skaparen, vem han nu är... hittade den på google vid sökning på "better url titles+codeigniter" typ.


Alla tider är GMT +2. Klockan är nu 03:06.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson