Tag Manager - vlastné HTML na začiatku stránky

Programovacie jazyky, rady, poradňa...
matoa
Star
Star
Príspevky: 611
Registrovaný: 10 dec 2006, 13:24
Kontaktovať používateľa:

Tag Manager - vlastné HTML na začiatku stránky

Príspevok od používateľa matoa »

Zdravím,
mám stránku spravenú cez WP, téma Sydney.
Potrebujem vložiť kúsok HTML, tak aby sa zobrazoval stále na vrchu stránky.
Bude to taká lišta na každej stránke.
Problém je, že ju dá až pod pätičku.

Niekde na nete som našiel, že mám v TM nastaviť trigger Model DOM ready a vtedy by to malo spúšťať úplne na začiatku body.
No stále to zobrazí až pod pätičkou.

Neviete niekto poradiť, ako by som to mal spraviť? Ďakujem
*****HERO*****
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2006
Registrovaný: 08 máj 2006, 1:34

Re: Tag Manager - vlastné HTML na začiatku stránky

Príspevok od používateľa *****HERO***** »

Nemas FTP pristup? Lepsie by bolo ten kus HTML kodu vlozit priamo do suboru s temou nez to riesit cez nejake javascriptove doplnky.

Ak nie tak dom ready sa spusta praveze az na konci - ked uz je stranka vyrendrovana.Ake dalsie moznosti tam mas?
matoa
Star
Star
Príspevky: 611
Registrovaný: 10 dec 2006, 13:24
Kontaktovať používateľa:

Re: Tag Manager - vlastné HTML na začiatku stránky

Príspevok od používateľa matoa »

Mám prístup do FTP.
Cez TM som to chcel preto, že na niektorých podstránkach budem potrebovať po čase upraviť text.
Teda všade bude rovnaký ale na článku 4 a 9 bude text iný. A to mi príde jednoduchšie spraviť cez TM.
Hensym
VIP
VIP
Používateľov profilový obrázok
Príspevky: 5973
Registrovaný: 24 apr 2011, 0:53
Bydlisko: Zvolen

Re: Tag Manager - vlastné HTML na začiatku stránky

Príspevok od používateľa Hensym »

Máš nejaký konkrétn dôvod prečo chceš markup pridávať cez GTM? Lebo to mi znie ako s prepáčením "cigánčina".

Sydney je celkom populárna téma. Choď do FTP, vo wp-content/themes budeš mať zložku s témou. Ideálne aby si neupravoval zdrojáky témy (pri aktualizácii sa ti môže tvoja robota vymazať). Stiahni si najnovšiu Sydney "child" tému, nainštaluj a aktivuj si tú. Link: https://athemes.com/download/sydney-child-theme/

Následne nájdi v zložke s témou Sydney súbor s hlavičkou (zrejme to bude header.php, header-default.php a pod.). Chceš nájsť súbor, v ktorom bude definovaný <body> tag, čiže začiatok vykreslovania stránky. Tento súbor skopíruj a vlož ho do zložky s child-témou. Upravovať budeš tento (vždy upravuj iba zdrojáky v childe).

V princípe tam iba hneď za <body> tag hodíš HTML-ko ktoré chceš (tú lištu) a malo by to byť na vrchu stránky (ak tá lišta nemá nastavené nejaké inline CSS s pozíciou naspodu). Jediný problém ktorý ti tu môže vzniknúť je, že sa ti posunie hlavička od vrchu, a ak má tá téma niktoré skripty (napr. trigger na sticky header) nastavené na fixnú pozíciu, môže to trochu blbnúť a bude to treba odladiť.

Dá sa to spraviť aj bez toho aby si prepisoval header.php, ideálne cez 'wp_body_open' hook, ale to už ťa nejdem zbytočne pliesť.

EDIT: Už vidím prečo si to chcel cez GTM. Tak či tak to nie je úplne ideálne riešenie. Ak potrebuješ dynamicky meniť text pre jednotlivé články, je lepšie si tie texty ukladať lokálne v databáze webu (keď aj napr. cez ACF pre každý článok osobitne) a potom v danom HTML kóde pre tú lištu iba PHP-čkom ťahať požadované texty - buď existuje nastavený konkrétny text pre daný článok (ak áno zobrazí ten), ak neexistuje zobrazí nejaký defaultný. Výhodou je že nespravuješ web v appke tretej strany, všetko si vieš zmeniť v admine, a obsah ti negeneruje skript (ktorý sa ani nemusí spustiť, ak ho má niekto bloknutý), prípadne sa spustí s oneskorením a pod.
*****HERO*****
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2006
Registrovaný: 08 máj 2006, 1:34

Re: Tag Manager - vlastné HTML na začiatku stránky

Príspevok od používateľa *****HERO***** »

tak idealne by si bolo dobre na to spravit widget alebo pridat nejaky custom field k clanku, z ktoreho by sa tahal obsah. na co ale samozrejme treba trochu scriptovania.

dalsia moznost je tiez so scriptovanim, ale takym jednoduchsim. nieco jak pisal Hensym, treba najst kde v tej teme zacina body a do toho vlozit kus kodu. s tym, ze by sa zobrazoval podla ID clanku.

Kód: Vybrať všetko

$id = nejakaWPMetodaNaZistenieIDAktualnehoClanku();
echo '<div id="hlavicka">';
if($id == 45){
   echo 'Hlavicka clanku #45';
}elseif($id == 7746){
   echo 'Hlavicka clanku #7746';
}else{
   echo 'Univerzana hlava';
}
echo '</div>';
dalej bez scriptovania napr cez CSS s pouzitim toho TM pluginu. nech je ta hlavicka aj na konci HTML - nastav jej v CSS position=fixed,top=0, left=0, right=0, height=(vyska)px a ostatny obsah odsad o tu vysku, cize kludne aj na body{padding-top:(vyska)px;}

alebo napr. este vacsia prasacina - mozes si tu hlavicku nechat vyrendrovat TM pluginom a potom ju presunut cez jQuery navrch $('body').prepend($('#hlavicka'))
matoa
Star
Star
Príspevky: 611
Registrovaný: 10 dec 2006, 13:24
Kontaktovať používateľa:

Re: Tag Manager - vlastné HTML na začiatku stránky

Príspevok od používateľa matoa »

No. To by chcelo absolvovať aspoň základy programovania :D
Ďakujem za odpovede, zhruba som to pochopil, nejako to vyhútam.
Napísať odpoveď