Nedávno jsem pomocí pluginu Polylang, kde byly jazyky nastaveny na vlastní domény, tvořil více jazyčný web. U výchozí domény fungovalo vše dobře, ale u ostatních jazykových mutací se přestalo zobrazovat obrázkové písmo Elegant Themes.
Tento problém byl nejvíce patrný u pluginu Monarch, kde chyběli všude ikony sociálních sítí.
Místo samotných ikon se zobrazoval symbol obráceného „obdelníku“. V konzoli se pak zobrazovala chyba:
Font from origin ‘http://domain.com’ has been blocked from loading by Cross-Origin Resource Sharing policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource. Origin ‘http://domain.com’ is therefore not allowed access. contentScript.js:234 cs: onRequestListener(Arguments[3])
Oprava chyby je vcelku jednoduchá, stačí do souboru .htaccess, který se nachází v základní složce na hostingu vložit následující kód:
# ---------------------------------------------------------------------- # Web písmo přístup # ---------------------------------------------------------------------- # Povolí načítání web písma ze všech domén.Header set Access-Control-Allow-Origin "*"
Kód dělá jen to, že povolí načítání webového písma z jiných domén.
V případě potřeby můžete * nahradit specifickou doménou nebo subdoménou.