Úvodní stránka › Fórum podpory WordPressu › Problémy s WordPressem › PHP ve WordPressu – automatické vkládání
Štítky: automatické vkládání, php
Zvolené téma obsahuje celkem 6 odpovědí. Do diskuze (2 účastníci) se naposledy zapojil uživatel depperdc a poslední změna je stará 10 let, 8 měsíců.
-
AutorPříspěvky
-
9. srpna 2013 (9:34) #3563
Zdravím. Mám problém. poměrně slušně umím programovat, alespoň co se týká jednoduchých php skriptíků, použití funkcí apod. pouzivame wordpress 3.5.1 (myslim) a exec-php. Nevím co mi to dělá, ale téměř po každém php výpisu echo se mi do stránek narve < b r / > nebo </p> atd. (navíc jsem nepochopil, podle jakého klíče to tam vkládá. jestli je to náhodné, nebo ne) to se pak můžu snažit dělat stránky s párovými tagy, když si to tak redakční systém sází jak je mu libo. mám podezření na wordpress, ale může to být samozřejmně i chyba pluginu.
Pomůže mi někdo opravdu “znalý”?
Moc děkuji
9. srpna 2013 (13:26) #16178Příklad:
super. chtěl jsem vložit příklad ale protože pouzivam mysql tak proste nemohu :(
<select name="vyber_hrace" size="1" style="width:200px;">
<option value='0' >-- nedostupné --
<?php
$MmSsQq = MySQL_Query("SELECT 'Heslo','WOT_nickname' FROM 'hrac'");
while($dotaz = mysql_fetch_array($MmSsQq))
{
echo "<option value='".$dotaz['Heslo']."'";
if( $vyber_hrace == $dotaz['Heslo'] ) echo " selected";
echo ">-- ".$dotaz['WOT_nickname']." --";
}
?>
</select>Výstup v HTML:
<select name="vyber_hrace" size="1" style="width:200px;">
<option value='0' >– nedostupné –</p>
<option value='3'>– DrDC –<br />
<option value='098f6bcd4621d373cade4e832627b4f6'>– ksa –<br />
<option value='098f6bcd4621d373cade4e832627b4f6'>– echh –<br />
<option value='5'>– DD –<br />
<option value='1'>– LACS –<br />
<option value='4'>– AHex –<br />
<option value='8'>– test2 –<br />
<option value='9'>– assa17 –<br />
<option value='11'>– vl18 –</select>17. srpna 2013 (7:49) #16179Co znamená “do stránek narve”? Do obsahu článku? Kam ten script vkládáte? Proč výstup scriptu nevkládáte pomocí shortcode? Proč nepoužíváte nativní funkce WordPressu?
17. srpna 2013 (9:03) #16180Zkusím vysvětlit. jinak se omlouvám za tón, ten den jsem byl už vytočenej. Jak můžete vidět v kódu, vypisuji v cyklu hodnoty. Jestli se nepletu v selectu nejsou optiony nijak ukončeny (až dalším option) (většinou si tohle ověřuju na stránkách jakpsatweb). Ale jak vidíte, jsou ukončeny příkazem br/ který jsem nikde nikdy nevepsal. Jinak jsem dělal dříve obyč stránky, kde si php narvu kam potřebuji (z vestavěných funkcí jsem zatím použil jen dvě – mail a current-user). Předpokládám, že většinu vestavěných funkcí neumím ani neznám (třeba bych je pak použil). neznám shortcore, ale předpokládám, že něco, kam se vkládá kód (já první co jsem našel byl plugin exec-php).
chybí zřejmě ještě odpověď kam to rvu .. do stránek, lépe do html kódu vytváření stránky. Děkuji (zkusím něco najít o tom shortcode, ať se pak můžeme rozumně bavit dál)
Wordpress používám cca měsíc, tak se předem omlouvám za neznalost. jsem zvyklý, že co napíšu, to se vypíše do zdrojového kódu stránky.
17. srpna 2013 (10:55) #16181programuju dál a pro příklad když si do html editoru wordpress dovolim já napsat
<br />
tak z toho vzniká ve zdrojovém kódu vygenerované stránky<p><br /></p>
a z toho se mi chce vážně brečet.17. srpna 2013 (11:56) #16182Aha tak tohle je již známá “feature” pluginu (support). Z odkazu můžete vyčíst, že máte použít plugin Disable WPautop, který toto automatické vkládání odstraní. Rada vývojářů mi, ale příjde docela úsměvná, protože tento plugin odstraní všechna automaticky vložená br ve všech článcích, tedy i tam kde tuto mezeru chcete skutečně mít.
Pokud nechcete použít tento plugin, můžete do souboru “functions.php” vaší šablony vložit následující dva řádky:
remove_filter('the_content', 'wpautop');
remove_filter('the_excerpt', 'wpautop');
Výsledek bude naprosto stejný.
Pokud automaticky vložené mezery nechcete všude odstraňovat, ale chcete vyřešit váš problém asi bych opravdu použil shortcode. Tedy celý váš výstup vložit do vlastní PHP funkce, například “vyber_hrace” a poté vytvořil shortcode třeba “hraci”. Kamkoliv do článku pak stačí vložit značku [hraci] a při publikování článku se tato značka nahradí výstupem vaší funkce.
17. srpna 2013 (13:10) #16183Zdar. Koukal jsem na shortcode a musel bych si naprogramovat cca 30 funkci. Navic toto objektové programování mi je docela cizí. Osobně preferuji čistě kód, který když si procházím, vidím přesně co se děje. Takže vzhledem k více administrátorům (někteří používají i editor kde si píší stránky). Takže předpokládám, že bude problém na stránkách co jsou již napsané. Nelze něco vyplodit, aby toto nedělal pouze při ukládání stránky z HTML editoru, nebo je problém při zobrazování stránky z mysql a tudíž je problém neřetelný bez přepisu všech stránek a vypnutí daných funkcí.. (?) snad jsem to pochopil správně. jinak prozatím děkuju
(problém je v tom, že já chvilku matlám html chvilku php a stránka pak ve zdrojáku vypadá opravdu jako psaná mimozemšťany)
-
AutorPříspěvky
Pokud chcete odpovědět na toto téma, musíte se nejdříve přihlásit.