Úvodní stránka › Fórum podpory WordPressu › Problémy s WordPressem › Formátovací tlačítko v Editoru
Štítky: TinyMCE, Vlastní tlačítko
Zvolené téma obsahuje celkem 5 odpovědí. Do diskuze (2 účastníci) se naposledy zapojil uživatel sjiamnocna a poslední změna je stará 12 let, 2 měsíce.
-
AutorPříspěvky
-
24. listopadu 2012 (9:54) #2507
Ahoj. Chtěl bych se zeptat, jestli je to možné, na takovou věc:
Chtěl bych si vytvořit tlačítko, které bych mohl přidat do editoru. Nejde však o to, abych vypsal nějaký text, ale abych uzavřel text do nějakých HTML značek (které si sám upravím), podobně jako formátuje text např. tlačítko B (tučné), nebo i (kurzíva).
Moc prosím… Pořád nacházím návody k vytváření tlačítek, ale ani jeden neřeší to čeho chci dosáhnout.
Našel jsem toto
Adding a Custom Button to TinyMCE
Potřebuji, abych měl v Editoru, vlastní tlačítko, které <b>nebude vkládat žádný text</b>, ale bude formátovat text nějakým tagem. Mělo by být v klasickém editoru a ne v HTML (jako dělají pluginy). Je to vůbec možné?
26. listopadu 2012 (12:56) #13562Máme tu podobný (také zatím bohužel nezodpovězený) dotaz. Je to trochu složitější problém, ale vyřešit určitě jde. Výše uvedené odkazy se zabývají pouze úpravou samotného TinyMCE editoru, ale ten je ještě integrován ve WordPressu, takže je to celé ještě trochu složitější…
Základní informace k vlastním tlačítkům pro vizuální editor jsou dostupné v manuálu. Další povedené a přehledné návody (anglicky):
– Jak přidat vlastní tlačítko do TinyMCE ve WordPressu (ukázka i malého okna s možnou nabídkou nastavení po kliknutí na vlastní ikonku).
– Jako příklad můžete použít plugin Custom TinyMCE Shortcode Button, který funguje velmi podobně, a to tak, že přidává do vizuálního editoru vlastní tlačítko a po jeho kliknutí je do textu vkládán zvolený zkrácený zápis (aneb shortcode). Stačí si pak tento plugin trochu modifikovat, aby místo shortcode vkládal nějaké HTML značky. A podobný návod, který v podstatě popisuje tvorbu tohoto pluginu.
– Asi nejlepší mi ale přijde tento návod, který popisuje přesně to, co potřebujete (tedy vkládání HTML, a to i s označováním textu v editoru).
Vyzkoušejte a můžeme případně řešit některé dílčí problémy. Bohužel ale nemáme v současné době kapacity na přípravu podrobného návodu v češtině…
26. listopadu 2012 (18:23) #13563Děkuji alespoň za jednu kladnou odpověď :) Nějak to vyzkouším, a dám vědět…
28. prosince 2012 (19:45) #13564Tak jsem hlouběji zkoumal zdroj tinymce ve WP-includes, ale v žádném *.JS ani *.PHP jsem nenašel žádný script, ani kousek z těch základních tlačítek. Jde mi jenom o to, že když upravuje nějaký text zaznačený tabulátorem, musí jej uložit buďto do proměnné, nebo funkce (podle mně), a tu potom dát mezi ty dvě části, ale vůbec nevím jestli to tak je. V případě že jo, prosím vás abyste mi někdo uvedl nějakou kompletní ukázku… Prosím Prosím
1. ledna 2013 (19:48) #13565Tak jsem se rozhodl povrtat v nějakém již zavedeném, a funkčním pluginu, abych zjistil, jak dosáhnout toho co potřebuju; stáhnul jsem si plugin Syntax Highlighter TinyMCE Plugin. Zatím jsem vyšpáral toto:`
var code = document.getElementById(‘shtb_adv_codebox_code’).value.replace(/&/g,’&’).replace(/</g,'<‘).replace(/</g,'<‘).replace(/rn/g,'<br />’);
code = code.replace(/n|r/g,'<br />’);
code = code.replace(/>/g,’>’).replace(/”/g,'”‘).replace(/’/g,”’);
var tagtext = ‘<pre class=”brush: ‘;
classAttribs = langname;
if (linenumbers)
classAttribs = classAttribs + ‘; gutter: true’;
else
classAttribs = classAttribs + ‘; gutter: false’;
if (starting_linenumber)
classAttribs = classAttribs + ‘; first-line: ‘ + starting_linenumber;
else
classAttribs = classAttribs;
if (highlight_lines)
classAttribs = classAttribs + ‘; highlight: ‘;
else
classAttribs = classAttribs;
if (html_script)
classAttribs = classAttribs + ‘; html-script: true’;
else
classAttribs = classAttribs;
if(starting_linenumber.match(/[^0-9]+/)){
alert(“Please input number to the ‘Starting Line Number’ column”);
return;
} else if(highlight_lines != “” && highlight_lines.match(/[^,0-9]/)){
alert(“Please input a linenumber or comma-separated linenumbers to the ‘Highlighted Lines’ column”);
return;
} else if (code == ”) {
alert(“Your code is empty”);
} else {
tinyMCEPopup.editor.execCommand(‘mceInsertContent’, false, tagtext+classAttribs+'”>’+code+'</pre>’);
}
tinyMCEPopup.close();
return;
}`ze souboru tinymce.js tohoto pluginu. Zatím se to snážím pochopit a v té souvislosti bych zase potřeboval drobné nakopnutí, ohledně zpracovávání proměnné code, které nechápu, neboť ta zjevně zastupuje označený text, při vkládáni pomocí pre a text z textarea při vkládání code.
14. ledna 2013 (18:52) #13567Ahojky. Už mě z ty pokusy docela přestaly bavit, tak se chci zeptat jestli by mi někdo nemohl něco takového sestrojit, a když se domluvíme jsem za to ochoten udělit pár korun odměny. Napište mi kdyžtak na mail, a já vám řeknu co bych potřeboval… jancikuvmail(zavináč)gmail.com
-
AutorPříspěvky
Pokud chcete odpovědět na toto téma, musíte se nejdříve přihlásit.