Nekoretní znaky při převodu postu do FCB

Úvodní stránka Fórum podpory WordPressu Problémy s WordPressem Nekoretní znaky při převodu postu do FCB

Zvolené téma obsahuje celkem 12 odpovědí. Do diskuze (4 účastníci) se naposledy zapojil uživatel  admin a poslední změna je stará 8 let, 11 měsíců.

Aktuálně je na stránce zobrazeno 13 příspěvků - 1. až 13. (z celkem 13)
  • Autor
    Příspěvky
  • #1197

    rimsy
    Participant

    Dobrý den,

    mám WP 3.2.1 (CZ local.); komunitní Facebook tlačítko pod každým příspěvkem má text přenést na Facebook, ovšem po kliknutí následuje nekorektní převod českých znaků. Příklad http://final.herniweb.cz/?p=16623 (čistý text převede do tvaru: “…oznámil zahájení betaverze..). Vypadalo to na problém v UTF8 nebo BOM značkou ale ani jedno se zatím nepotvrdilo. Děkuji za každou radu.

    #9354

    admin
    Keymaster
    Web

    Zajímavé, zkoušel jsem to a název odkazovaného příspěvku je převeden správně, problém je pouze v textu. Jakým způsobem tam máte vloženo tlačítko? Používáte nějaký plugin nebo vlastní funkci v šabloně?

    #9355

    rimsy
    Participant

    Share tlačítko je v theme (LIKE tlačitko je plugin). Nazev to převedlo správně protože je v URL jako parametr (popis si Facebook taha sam).

    #9356

    admin
    Keymaster
    Web

    Jakou používáte přesně šablonu, abychom to mohli vyzkoušet? Jakou funkci pro sdílení textů šablona používá?

    #9357

    rimsy
    Participant

    Problém vyřešen, jednalo se o specifickou záležitost (zásah do scriptu mimo WP). Nyní bojujem s connect pluginem (pro změnu nekorektní zobrazení jména uživ.). Předpokládám že server googlu posílá udaje v UTF8; s tím se snad poperem. V každém případě díky za rychlou reakci.

    #9358

    martinvlorenc
    Participant

    Dobrý den, mám podobný problém.

    Šablonu Twentyeleven, pluginy: Advanced Custom Fields (správa custom_fields), GD Star Rating (hlasování článků), WordPress User Frontend (správa článků frontend uživateli přímo na stránce).

    Na homepage mám like button pomocí tohoto kodu generovaného na devepl.fcb

    <div id="fb-root"></div>
    <script>(function(d, s, id) {
    var js, fjs = d.getElementsByTagName(s)[0];
    if (d.getElementById(id)) {return;}
    js = d.createElement(s); js.id = id;
    js.src = "//connect.facebook.net/cs_CZ/all.js#xfbml=1&appId=233572050043576";
    fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));</script>
    <div class="fb-like" data-send="false" data-layout="button_count" data-width="100" data-show-faces="false" data-font="verdana"></div>

    a na jiné stránce share button pomocí kodu

    <!--div id="facebook-share">
    <a name="fb_share">Sdílej</a>
    <script src="http://static.ak.fbcdn.net/connect.php/js/FB.Share"
    type="text/javascript">
    </script> -->
    <!-- <?php if (function_exists('fbshare_manual')) echo fbshare_manual(); ?> -->
    <!-- /div -->

    Kodování správné, při pokusu vložení na fb špatné zobrazení názvu i textu. Název(titul) je pomocí fce <?php the_title(); ?> a text pomocí custom field <?php echo get_post_meta($post->ID, 'popis_kandidata', true) ?>

    Nevíte, co s tím? :D Díky.

    #9359

    admin
    Keymaster
    Web

    U toho sdílecího tlačítka by asi měly být odstraněny všechny komentáře, aby se to vůbec zobrazovalo? Mám na mysli <!-- a -->. Ale v tom asi nebude spočívat popisovaný problém…

    Jakým způsobem je tomuto tlačítku odesílán název a popis? Zmiňujete funkce, ale nikde je v uvedeném kódu nevidím? Používáte k tomu nějaký plugin? Problém by mohl být právě v těchto funkcích, případně třeba i kódování databáze, ale to už se vyskytuje jen výjimečně – jaký máte hosting?

    Zkuste ještě upřesnit další podrobnosti, jakým způsobem informace na Facebook odesíláte, v jakém souboru šablony jste provedl úpravy a kde přesně…

    P.S. Duplicitní dotaz, zatím bez odpovědi…

    #9360

    neteyescz
    Participant

    admin: Alespoň to ukazuje, které fórum je High-quality :-)

    #9361

    admin
    Keymaster
    Web

    Tady jsme toho ale také zatím moc nezjistili :-(

    #9362

    martinvlorenc
    Participant

    Díky, takže:

    hositng u Blueboard, plná podpora, problém není,

    DB kódování utf8_general_ci,

    Tlačítkem to právě vůbec není, páč jsou další stránky, kde žádný skript od FB není a přesto je špatné kódování.

    Pro custom fields používám ACF plugin, do teď žádný problém také nebyl.

    Šablona Twentyeleven, úpravy proběhly vlastně v každém ze souborů. Každý poctivě upravován v PSPadu, uložen do UTF-8, vytvořil jsem pár šablon ke stránkám se stejným postupem. Toto vše jsem zkontroloval, přeuložil, 2x přeinstaloval a stále nic.

    Vůbec to nechápu, protože na WP už nějaký pátek jezdím a s tím, že bych nenašel řešení jsem se ještě nesetkal :D

    #9363

    admin
    Keymaster
    Web

    Tlačítkem to právě vůbec není, páč jsou další stránky, kde žádný skript od FB není a přesto je špatné kódování.

    Tomuto úplně přesně nerozumím – problém se objevuje i na jiném webu nebo jen jiných stránkách?

    Můžete poslat administrátorské přístupy na email pavelevap@separatista.net, abychom se na to mohli podívat? Nebo vytvořte nějakou testovací subdoménu, kde bychom mohli celý problém podrobněji prozkoumat…

    Problém s kódováním databáze může být způsoben i v přístupu k databázi (aneb DB_COLLATION, manuál), ale s tím už jsem se také velmi dlouho nesetkal. Zmiňovaný web web vznikl klasickou novou instalací nebo přenosem či aktualizací nějakého staršího webu?

    #9364

    martinvlorenc
    Participant

    Díky za pomoc, přístup pošlu.

    Problém se vyskytuje na jiných stránkách na stejném webu.

    Pracuji na WP 3.2.1. Upravoval jsem šablonu Twentyeleven – to vše na localhostu a vše OK

    Po přenesení na ostrou doménu začal problém.

    #9365

    admin
    Keymaster
    Web

    Když už koncem roku čistím staré emaily, tak se ještě vrátím k tomuto tématu a doplním některé informace, i když bohužel nemohu 100% potvrdit, že vedly k vyřešení tohoto problému… Obdržel jsem nedjříve přihlašovací údaje a trochu jsme to zkoušeli…

    admin (5.12.2011 21:59):

    Databáze vypadá v pořádku.

    Na Facebook nejsem žádný specialista, ale trochu si tím kódem na webu nejsem jist:

    – Na localhostu to vše správně fungovalo?

    – Zkoušel jste nějakou jinou variantu kódu (tedy např. FBML)?

    – Zkoušel jste nějaký jednoduchý WordPress plugin pro Like?

    – Debug:

    http://developers.facebook.com/tools/debug – Jakým způsobem tam v tom kódu vlastně říkáte Facebooku, že název je the_title()? A co popis a URL?

    martinvlorenc (5.12.2011 22:12):

    Zdravím a přeji dobrý večer,

    na localh. vše skutečně dobře pracovalo. Zkoušel jsem všechny 3 mě známé varianty kodu, které jsou na FBdevelop. Celkem jsem vyzkoušel 3 pluginy pro FB, každý s absolutně stejným efektem – špatné kodování. Koukám na Váš odkaz a nestačím se divit, páč (nevím jestli jste upravoval index) ale index webu se přenáší na FB zeď bez problémů se správnou diakritikou, ovšem ostatní stránky jsou pořád špatně. Jak se přenáší <?php the_title(); ?>? Myslím, že je to nastaveno jako výchozí hodnota někde v core WP. Žádné speciální meta jsem tomu nedával. Mám pocit, že si to z nás dělá srandu, nicméně myslím, že jste mně nakopl správným směrem, uvidíme.

    Děkuji Vám za Váš čas, opravdu si toho vážím.

    admin (5.12.2011 22:17):

    Dobrý večer,

    ano, index.php jsem dnes drobně upravoval několikrát.

    Marně ale bohužel vzpomínám na poslední úpravu, mám pocit, že jsem vše vrátil do původního stavu…

    A hlavně to funguje, neuvěřitelné :-)

    Jdu se na to ještě podívat…

    martinvlorenc (5.12.2011 22:38):

    Něco se někomu z nás dvou podařilo, protože sekce hlasuj, o kterou jde nejvíc, funguje validně. Já jsem přidal do header.php ony meta tagy pro FB.

    Jak je vidět z celé posloupnosti, tak šlo vlastně o dva problémy, z nichž jeden byl patrně vyřešen přidáním klasických meta dat protokolu Open Graph. Mnohem podivnější byl ale první problém se špatným kódováním, který z ničeho nic prostě sám od sebe zmizel. A dnes jsem konečně narazil na zajímavý článek, který to celé patrně vysvětluje. Doporučuji ho přečíst, ale stručně řečeno jde o to, že pokud použijete Debugger Facebooku, tak se testovaná stránka nějakým způsobem celá znovu načte do paměti. Takže je možné, že byl problém odstraněn právě tímto načtením pomocí Debuggeru, čímž došlo k vymazání nějaké interní cache Facebooku. Nebo je to zatím jediné vysvětlení, které mě napadá a nasvědčují tomu všechny události…

Aktuálně je na stránce zobrazeno 13 příspěvků - 1. až 13. (z celkem 13)

Pokud chcete odpovědět na toto téma, musíte se nejdříve přihlásit.

WordPress – novinky, návody a zajímavosti