Autor Zpráva
N3S4
Profil
Zdravím, potřebuji pomoc s php funkcí urlencode.

mám v url dotaz na titulek webu ve tvaru
<?php the_title(); ?>
apotřeboval bych ho kódovat aby se v něm nezobrazovali interpunkce, mezery atd, které v url nesmí být.

Je toto správně?
<?php echo urlencode the_title(); ?>


jestli ne, jak to správně udělám? V php se natolik nevyznám.
Davex
Profil
N3S4:
Funkce se volají se závorkami, ve kterých mohou být uzavřeny parametry.

<?php echo urlencode(the_title()); ?>
N3S4
Profil
Davex:
Aha, ale stále se titulek v url nezakóduje ale zobrazí se titulek článku i s interpunkčními znaménky tak jak je na stránkách.. Potřebuji to pro twitter.

Odkaz mám udělaný takto:
<a onclick="window.open('http://twitter.com/home?status=Pr%C3%A1v%C4%9B+%C4%8Dtu+zaj%C3%ADmav%C3%BD+%C4%8Dl%C3%A1nek%3A+<?php echo urlencode(the_title()); ?>+<?php echo urlencode(get_bloginfo('url')."/?p=".$post->ID); ?>','_blank','width=500,height=400,location,resizable'); return false" href="http://twitter.com/" target="_blank" rel="external,nofollow" title="Tweetuj!">Tweetuj!<a/>


V novém okně se mi normálně otevře formulář pro přidání tweetu, kde je přesně text:
Právě čtu zajímavý článek: Název článku http://example.com/?p=123 
ale v IE to napíše chybu 400. A v url adrese v FF a také v IE je stále titulek s mezerami a nekódovaný...

kde mám tedy chybu?
Davex
Profil
http://php.vrana.cz/vytvoreni-pratelskeho-url.php
http://phpfashion.com/odstraneni-diakritiky-z-ruznych-kodovani


Četl jsem se ztrátovou kompresí.
N3S4
Profil
Já myslel že bude stačit funkce urldecode:
<?php echo urlencode(the_title()); ?>


jak jste mi poradili, a jenže daný zápis titulek vůbec nezakóduje...

já mám na stránkách friendly url. jen mám problém s tímto zápisem na tweetování, konkrétně s titulkem článku v url. S ničím jiným poradit nepotřebuji..
Davex
Profil
Ještě by to mohlo být tím, že funkce the_title() titulek rovnou vypisuje a nevrací jako návratovou hodnotu. Neexistuje nějaký jiný způsob, jak se k obsahu titulku dostat?
N3S4
Profil
to právě nevím, jelikož se jedná o rs wordpress.. našel jsem jen toto: http://codex.wordpress.org/Function_Reference/get_the_title ale nevyznám se v tom :(
ShiraNai7
Profil
N3S4:

<?php echo urlencode(the_title('', '', false)); ?>
N3S4
Profil
Zkusil jsem toto
<?php echo urlencode(get_the_title()); ?>
a funguje to i v IE.
A to co psal Shira také, jen nevím jaký je mezi tím teď rozdíl.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0