Mam motyw opracowany na zamówienie i naprawdę złożony. Jedną z rzeczy, które mam, jest wiele obszarów zawartości, w których użytkownicy mogą określać zawartość dla określonych kart. Ładuję wiele wystąpień edytora WordPress przez wp_editor()
funkcję. Działa idealnie. (To wszystko po stronie administratora, w typie posta „Strona”)
Zacząłem jednak wprowadzać kilka ulepszeń, w tym możliwość dynamicznego dodawania / usuwania kart (wcześniej załadowałem 6 edytorów na stronie). Użytkownicy mogą mieć 1-7 kart.
Gdy użytkownicy dodają kartę, musi ona dodać instancję edytora do strony. Jednak bez względu na to, co próbuję, nie mogę go poprawnie załadować i wyświetlić.
Oto 2 rzeczy, których do tej pory próbowałem:
- Utwórz plik php, który zawiera bootstrap administratora, a następnie załaduj edytor
wp_editor()
. Następnie wykonuję jQuery,$.load
aby wywołać stronę i dołączyć wynikowy kod HTML w obszarze, który musi wyświetlić. Nie działa to jednak tak naprawdę, ponieważ znikają przyciski formatowania edytorów (warto zauważyć, że podciągając stronę bezpośrednio w górę, edytor wyświetla i działa idealnie) - Załadowałem edytor na stronę, w ukrytym div, a następnie po dodaniu karty użyj jquery, aby przenieść ją na miejsce. To ładuje takt edytora, ale nie możesz użyć żadnego z przycisków edytora (wyświetlają się, ale nic nie robią), i nie możesz umieścić kursora w polu tekstowym (ciekawe, że przejście do trybu HTML umożliwia pisanie i interakcję z przyciskami trybu HTML)
Pytanie brzmi, czy ktoś miał szczęście dodając redaktorów za pośrednictwem połączeń AJAX? Jakakolwiek rada?
$('#sph-tabs-section-tab'+newTab).load('/wp-admin/admin-ajax.php?action=sph_add_editor');
a następnie dodałem funkcję, która zwraca wp_editor()
. Jest wywoływany bez problemu, ale nadal zwraca tylko edytor bez przycisków. (dokładnie takie same wyniki jak pozycja 1 w PO)
admin-ajax.php
? Jeśli nie,admin-ajax.php