Nie konfigurowalne adresy URL dla przetłumaczonych stron
Struktura linków stron jest zdefiniowana w jeden sposób i nie można jej zmienić.
Definiujesz nazwę głównego linku (dla głównego języka), a inne języki mają rozszerzenie ich linku o sufiks kończący się odpowiadającym językiem.
Jako przykład: jeśli używasz 3 języków: angielski (en), niemiecki (de), hiszpański (es) i zdefiniowałeś swoje 2 strony jako:
urlpatterns = [
*candy.path('', views.home, name = 'home'),
*candy.path('contact', views.contact, name='contact')
]
Otrzymasz następujące adresy URL dostępne dla użytkowników witryny:
http://MySite.com
http://MySite.com/de
http://MySite.com/es
http://MySite.com/contact
http://MySite.com/contact/de
http://MySite.com/contact/es
Twój główny język nigdy nie otrzymuje przyrostka a sufiks dla innych języków, ma postać 2 liter, zgodnie z definicją w:
ISO 639-1
Może się wydarzyć żę plik sitemap.xml nie w pełni odpowiadać będzie Twojej witrynie
Mapa witryny powinna być właściwie wygenerowana dla większości stron internetowych, ale powinieneś to sprawdzić w swoim projekcie.
Istnieje sposób na ręczne dodanie brakujących adresów URL lub usunięcie tych, które nie powinny w nim być.
Możesz to zrobić z 3 listami o nazwie „add_pages”, „remove_pages” i „remove_paths”. Wszystkie są opcjonalne do tworzenia sitemap.
Przykłady:
urlpatterns = [
...
*candy.sitemap(add_pages=["http://MySite.com/PageToAdd"])
]
urlpatterns = [
...
*candy.sitemap(remove_pages=["http://MySite.com/PageToRemoveFromSitemap",
"http://MySite.com/PageToRemoveFromSitemap2"])
]
urlpatterns = [
...
*candy.sitemap(remove_paths=["http://MySite.com/PageAndSubpagesToRemoveFromSitemap",
"http://MySite.com/PageAndSubpagesToRemoveFromSitemap2"])
]
urlpatterns = [
...
*candy.sitemap(
add_pages=["http://MySite.com/PageToAdd"],
remove_pages=["http://MySite.com/PageToRemoveFromSitemap",
"http://MySite.com/PageToRemoveFromSitemap2"]
remove_paths=["http://MySite.com/PageAndSubpagesToRemoveFromSitemap",
"http://MySite.com/PageAndSubpagesToRemoveFromSitemap2"]
)
]
Nie możesz mieć wielu wersji tego samego języka
Standard HTML pozwala rozróżnić język w oparciu o miejsce, w którym jest on używany.
Możesz na przykład mieć inną wersję strony w brytyjskim angielskim i amerykańskim angielskim. Z Candy Translate możesz mieć tylko jedną wersję każdego języka