Jeśli korzystasz z darmowej wersji Polylang dla WordPressa, wiesz już, że nowa strona lub post, który generuje do tłumaczenia, nie kopiuje oryginalnej treści
Jest to jedna z funkcji jego płatnej wersji, a w wersji darmowej trzeba wklejać je ręcznie.
Aby to rozwiązać i przyspieszyć proces, wystarczy dodać kilka funkcji w pliku functions.php swojego szablonu .
Zawsze wskazane jest dodanie go w "motyw dziecka"w twoim własny plugin funkcyjny lub przy użyciu Wycinki kodu w przypadku, gdy nie działa w Twoim przypadku i możesz łatwo przywrócić zmiany lub w przypadku, gdy coś się zepsuje z powodu przyszłej aktualizacji WordPressa, Twojego szablonu, Polylang lub wersji PHP.
// Copying content when creating a translation with Polylang
function jb_editor_content( $content ) {
// Polylang sets the 'from_post' parameter
if ( isset( $_GET['from_post'] ) ) {
$my_post = get_post( $_GET['from_post'] );
if ( $my_post )
return $my_post->post_content;
}
return $content;
}
add_filter( 'default_content', 'jb_editor_content' );
// Copying content when creating a translation with Polylang
function jb_editor_title( $title ) {
// Polylang sets the 'from_post' parameter
if ( isset( $_GET['from_post'] ) ) {
$my_post = get_post( $_GET['from_post'] );
if ( $my_post )
return $my_post->post_title;
}
return $title;
}
add_filter( 'default_title', 'jb_editor_title' );
Nie wiem, czy działa na wszystkich szablonach (tutaj działa dobrze z GeneratePress). Znalazłem to w notatka z grudnia ubiegłego roku, więc najlepiej wypróbować go najpierw w odizolowanym środowisku testowym (inscenizacja).
Tłumaczenie tagów za pomocą Polylang, inna historia
A side note. Polylang, mimo że jest jedną z najpopularniejszych i najlżejszych darmowych wtyczek do tworzenie wielojęzycznego bloga najbardziej popularnych i lekkich wtyczek, jest jedną z niewielu, z których korzystam, a które moim zdaniem nie poprawiają się zbytnio w swojej wersji PRO. Próbowałem obu wersji i momentami jest to uciążliwe. Myślę, że musi ewoluować, aby uprościć jego użycie, poprawić tłumaczenie ciągów i uczynić go bardziej intuicyjnym.
Teraz, gdy możemy skopiować oryginalną treść z Polylangiem na nową stronę do tłumaczenia, mamy już tytuł, treść i zazwyczaj także tagi
Problem tutaj, w przypadku postów, polega na tym, że tagi są kopiowane w języku hiszpańskim, a następnie zapisywane jako nowe, dodając prefiks językowy na końcu slug, na przykład "nombredeetiqueta-en" (w przypadku angielskiego).
Powoduje to utworzenie kolejnego nowego tagu bez powiązania z oryginalnym tagiem językowym i bez tłumaczenia. Najprawdopodobniej skończy się to osieroceniem lub wykorzystaniem tylko w jednym poście
Co gorsza, tagi będą się piętrzyły do śmiesznych liczb. Uwierz mi, przed ostatnią korektą i czyszczeniem (które musisz zrobić bardzo ostrożnie, jeśli indeksujesz je w robots.txt i tworzysz przekierowania 301, ponieważ są to adresy URL twojej strony, które zostaną złamane) dodały się do nieporęcznej liczby 8848
Ponadto posiadanie zbyt wielu znaczników spowalnia zapytania do bazy danych i obniża wydajność.
Rozwiązaniem nie jest usuwanie ich w edytorze i dodawanie nowych w nowym języku, bo to nie sprawi, że zostaną usunięte, tylko będziesz tworzył ponownie te same słowa z przedrostkiem"-en" w slugu.
Idealnym sposobem, choć żmudnym, jest jasne określenie, jakich tagów (cztery lub maksymalnie pięć) zamierzasz użyć dokładnie w poście do tłumaczenia i UTWORZYĆ PRZED ich odpowiednie tłumaczenia
Po zapisaniu tłumaczeń, gdy utworzysz nową kopię postu, Polylang wyeksportuje również tagi, ale teraz przetłumaczone dla odpowiedniego wybranego języka.
Tagi służą głównie do poprawy wyszukiwania wewnętrznego na Twoim blogu i choć wielu ekspertów SEO radzi, by nie indeksować ani tagów, ani kategorii, to jeśli zrobi się to z racjonalną i ostrożną strategią, mogą one wygenerować niemałą ilość wizyt organicznych. Mogę za to ręczyć.
Z tagów można wiele wynieść, tworząc dobre opisy i logiczną hierarchię, która nie pokrywa się z nazwami kategorii oraz unikając tworzenia treści, które mogą być uznane za duplikaty.