.
wersja skryptu MyBB: 1.8.5
adres forum:
http://paintballmod.com
na czym polega problem (screen, opis, komunikaty, nazwa i wersja wtyczki):
Witam, mam problem mianowicie jak ktoś napisze posta skopiuje czy coś to kolor zlewa się z tłem #333333. Dziwne jest to ze niektóre tylko posty taki kolor maja nie wiem może ktoś code kopiuje czy coś bo tak jak się napisze tekst to jest jak być powinien biały. Szukałem Firebugiem i znaleźć nie moglem bo to gdzieś element style.
NP:
<div id="pid_5878" class="post_body">
<span style="color: #333333;">
Wie ktoś co to może być?
Kopiowanie formatowania, jeśli ktoś kopiuje np. wzór podania na redaktora, który jest na ciemnym bloku [code] spisany ciemną czcionką to ją właśnie kopiuje dalej.
Musiałbyś albo zmienić style elementów typu cytat itd. żeby za mocno się nie wyróżniały - co jest trochę słabym workaroundem, albo wygooglować jak zablokować wklejkę formatowania do edytora.
Tylko ze jak ja teraz kopiuje to normalnie białe jest, zmieniałem kolor stylu z białego na czarny i niektóre posty co pisałem na białym jeszcze tylu zmieniły się właśnie na ten kolor #333333
Musiałbyś dać przykładowy wątek i konto testowe bo tak to bez sensu trochę.
Ale ogólnie - w stylu określasz kolor tekstu i on jest globalny. Jednak jeśli jakiś tekst ma formatowanie (np. kolor niebieski) a ty go skopiujesz i wkleisz w pełny edytor odpowiedzi to Ci się skopiuje w takim stylu w jakim w oryginalne występował - niebieski. Jeśli jednak wkleisz go do "szybkiej odpowiedzi" to będzie wyglądał normalnie, jako że jest to zwykłe pole tekstowe.
Rozumiem i tak może być ale nie idzie tego jakoś usunąć? Juz mnie szlak trafia poprawienie niektórych postów jak użytkownicy kopiują post mimo tego ze daje code do kopiowania.
Znalazłem jak to się dzieje mianowicie skopiowałem tekst z FB i wkleiłem w nowy temat automatycznie zmieniło mi na szary kolor. Pytanie jak to naprawić by skopiowane rzeczy wklejały się na biało?
MyBB domyślnie korzysta z SCEditor'a, gdzie mamy dwie opcje:
a) zmienić
enablePasteFiltering na
true - z tym, że domyślnie jest to już zmienione. Każdy "format" który nie ma odpowiednika w bbcode zostaje usunięty. Więc to nie do końca rozwiązuje problem.
b) użyć opcji "Usuń formatowanie" -
https://i.imgur.com/jnfmaJJ.png Działa fajnie.
Najważniejszym w tym momencie jest stworzenie dobrego stylu dla forum, gdzie style będą odpowiednio dopasowane w przeciwieństwie do wszelkich sklejek stylów gdzie szablon jest ciemny, edytor biały, blok na cytat różowy a na kod fioletowy. Dobry styl likwiduje ten problem przynajmniej w obrębie twojej strony.
Jeśli jednak user kopiuje sformatowany tekst z innych źródeł - to musisz liczyć, że jest na tyle rozgarnięty, że potrafi zadbać o wygląd własnego tematu i użyć buttona "usuń formatowanie" bądź wkleić najpierw tekst do np. notatnika gdzie formatowanie przepadnie, a potem na stronę.
Zarówno tutaj jak i na swoim forum wklejanie sformatowanego tekstu istnieje i w magiczny sposób nikt nie ma z tym problemu
Jest jeszcze opcja przerzucić się na inny edytor tekstowy - np. popularny CKEditor gdzie można zainstalować plugin PlainText bądź od jakieś wersji - dokleić do pliku konfiguracyjnego
config.forcePasteAsPlainText = true; i po problemie, aczkolwiek z tym musisz się sam uporać - dokumentacja instalacji jest w sieci, ale nie obejdzie się bez podstawowej wiedzy w temacie.
Fajnie a jaśniej nie da rady?
v Jak ja nie wiem gdzie tego szukać enablePasteFiltering
Wystarczy czytać ze zrozumieniem bądź googlować - wszystko co napisałem pochodzi z szybkiego googlowania.
(28.05.2016, 09:34)ficus napisał(a): [ -> ]z tym, że domyślnie jest to już zmienione.
Więc o tym napisałem bardziej jako ciekawostka, bo jest to już zmienione w MyBB.
Liczyłem na pomoc co i jak a nie co w Google piszą
Jaką pomoc jeszcze być chciał otrzymać? Problem został szczegółowo opisany przez
'a.
Mamy użyć za Ciebie opcji usuń formatowanie w edytorze/napisać żeby użytkownicy zwracali większą uwagę na wklejany tekst i stworzyćjakiś poradnik jak uniknąć takiego problemu czy może wpisać w google 'ckeditor mybb install' i zainstalować plugin
http://community.mybb.com/mods.php?action=view&pid=73
Dałem sobie rade sam wystarczyło do codebuttons dodać
var keep = ['b', 'i', 'ul', 'list', 'ol', 'li', 'url'];
var remove = Object.keys($.sceditor.plugins.bbcode.bbcodes);
for (var i in remove) {
if (keep.indexOf(remove[i]) == -1 && 'format' in $.sceditor.plugins.bbcode.bbcodes[remove[i]]) {
$.sceditorBBCodePlugin.bbcode.remove(remove[i]);
}
}
Usuwa znaki BBCode 'b', 'i', 'ul', 'list', 'ol', 'li', 'url'