rogi Opublikowano 29 Maja 2010 Zgłoś Opublikowano 29 Maja 2010 Witajcie. Mam taki problem: na jednym blogu podstawionym na wordpress wklejam do nagłówka (head.php) między liniki <link media... kod: <link media="screen" rel="stylesheet" type="text/css" href="st.css" /><script type="text/javascript" src="jquery.js"></script><script type="text/javascript"><? if(empty($_COOKIE['zablokuj'])){ ?>$(window).load(function() {$.prompt('abcdefghijk',{ overlayspeed: 2 });});<? setcookie("zablokuj", 1, time()+(60*60*1)); } ?></script> na blogu X popup działa tylko na stronie głównej, na blogu Y nie działa wcale gdy wkleję zamiast powyższego kodu ten (bez ciasteczek): <link media="screen" rel="stylesheet" type="text/css" href="st.css" /><script type="text/javascript" src="jquery.js"></script><script type="text/javascript">$(window).load(function() {$.prompt('abcdefghijk',{ overlayspeed: 2 });});</script> to na blogu X nadal działa tylko na głównej, a na blogu Y działa na każdej podstronie Dlaczego tak się dzieję? Chcę, aby na blogu X i Y, popup otwierał się na każdej podstronie i zapisywał ciasteczko, tzn. nie otworzy się drugi raz. Bardzo proszę o pomoc. Pozdrawiam :) Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
olo21 Opublikowano 29 Maja 2010 Zgłoś Opublikowano 29 Maja 2010 Może nazwij ciasteczka inaczej na stronie X i Y. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
rogi Opublikowano 29 Maja 2010 Zgłoś Opublikowano 29 Maja 2010 Zmieniłem nazwy i nadal jest tak samo. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
ULLISSES Opublikowano 30 Maja 2010 Zgłoś Opublikowano 30 Maja 2010 Problem w tym, że fragment: <? if(empty($_COOKIE['zablokuj'])){ ?>to nie jest JS lecz PHP. 1. Spróbuj zamienić: <?na<?php. 2. Upewnij się, że serwer gdzie jest postawiony blog, pozwala na wstawki PHP. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
rogi Opublikowano 30 Maja 2010 Zgłoś Opublikowano 30 Maja 2010 Niestety nadal nie działa. Serwer obsługuje PHP, bo mam na nim zainstalowanego wordpressa. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
ULLISSES Opublikowano 30 Maja 2010 Zgłoś Opublikowano 30 Maja 2010 1. Nie wiem, jaką wersję WP masz, ale pobrałem specjalnie wersję 2.9.x i nie widzę tam takiego pliku. 2. Daj linki do blogów, bo jakoś tego nie widzę w opisany przez Ciebie sposób. 3. Weź pod uwagę, że jeśli blogi są w tej samej domenie, to po otwarciu pierwszego bloga musisz wyczyścić ciastka, aby skrypt ruszył na drugiej stronie. Podobnie gdy chcesz sprawdzić, czy działa na podstronach. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
rogi Opublikowano 30 Maja 2010 Zgłoś Opublikowano 30 Maja 2010 (edytowane) Blogi są na innym domenach. Mam najnowszą wersję wodpressa, pliki st.css i jquery.js są osobno dograne w katalogu skórki i w głównym bloga. Dziwne jest to, że ten sam kod umieszczony w tym samym miejscu i różnie się zachowuje. zajrzałem w źródło strony w przeglądarce i zamiast kodu, które wstawiałem jest: <link media="screen" rel="stylesheet" type="text/css" href="http://mojastrona.pl/wp-content/themes/colorvoid/st.css" /><script type="text/javascript" src="http://mojastrona.pl/wp-content/themes/colorvoid/jquery.js"></script><script type="text/javascript">$(window).load(function() {$.prompt('abcdefghijk',{ overlayspeed: 2 });});<br /><b>Warning</b>: Cannot modify header information - headers already sent by (output started at /home/user/domains/mojastrona.pl/public_html/wp-content/themes/colorvoid/index.php:4) in <b>/home/user/domains/mojastrona.pl/public_html/wp-content/themes/colorvoid/header.php</b> on line <b>20</b><br /></script> Edytowane 30 Maja 2010 przez rogi Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
ULLISSES Opublikowano 30 Maja 2010 Zgłoś Opublikowano 30 Maja 2010 1. Kodu PHP nie zobaczysz w przeglądarce - jest wykonywany po stronie serwera. 2. Ustawianie ciastka należy wykonać zanim wyślesz cokolwiek do przeglądarki, a więc przed: <doctype 3. Zrób tak: Sprawdź, czy ciastko jest (zapisując wynik w zmiennej), a potem je ustaw - wszystko przed <doctype <?php if(empty($_COOKIE['zablokuj'])) {$zablokuj = 'n';setcookie("zablokuj", 1, time()+(60*60*1)); } ?> Następnie wyświetl komunikat, jeśli trzeba: <?php if ($zablokuj=='n') { ?><script type="text/javascript">$(window).load(function() {$.prompt('abcdefghijk',{ overlayspeed: 2 });});</script><?php } ?> Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
rogi Opublikowano 30 Maja 2010 Zgłoś Opublikowano 30 Maja 2010 Na górze strony wyświetla się Warning: Cannot modify header information - headers already sent by... i popup nie działa. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
nappy Opublikowano 30 Maja 2010 Zgłoś Opublikowano 30 Maja 2010 (edytowane) http://www.scratch99.com/2008/09/setting-cookies-in-wordpress-trap-for-beginners/ tu cos o tym pisza. i tutaj: http://blog.5ubliminal.com/posts/setting-cookies-in-wordpress-with-php/ Edytowane 30 Maja 2010 przez nappy Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
rogi Opublikowano 30 Maja 2010 Zgłoś Opublikowano 30 Maja 2010 dałem to na początku kodu, ale błąd dalej się wyświetla Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
ULLISSES Opublikowano 30 Maja 2010 Zgłoś Opublikowano 30 Maja 2010 Sprawdź, czy przypadkiem edytor nie używa kodowania UTF8+BOM. W razie czego użyj PSPad. Drugi fragment kodu powinien być oczywiście w nagłówku, najlepiej tuż przed </head>. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
rogi Opublikowano 30 Maja 2010 Zgłoś Opublikowano 30 Maja 2010 Zapisuje bez BOOM, wstawiłem tak, jak piszesz, dalej nie działa. Dziwne to, na drugim blogu wszystko działa, tylko znów tam pojawia się popup tylko na stronie głównej. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
ULLISSES Opublikowano 31 Maja 2010 Zgłoś Opublikowano 31 Maja 2010 Podaj linki do obu blogów + zawartość pliku po Twoich zmianach. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
rogi Opublikowano 1 Czerwca 2010 Zgłoś Opublikowano 1 Czerwca 2010 Nie chciałbym podawać linków do bloga, może bez tego się obejdzie. Kod pliku header.php z edytora wordpressa: <?php if(empty($_COOKIE['zablokuj'])) {$zablokuj = 'n';setcookie("zablokuj", 1, time()+(60*60*1)); } ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>><head profile="http://gmpg.org/xfn/11"><meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" /><title><?php bloginfo('name'); ?> <?php if ( is_single() ) { ?> » Archiwum bloga <?php } ?><?php wp_title(); ?></title><link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen" /><link rel="alternate" type="application/rss+xml" title="<?php bloginfo('name'); ?> RSS Feed" href="<?php bloginfo('rss2_url'); ?>" /><link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" /><?php if ($zablokuj=='n') { ?><script type="text/javascript">$(window).load(function() {$.prompt('abcdefghijk',{ overlayspeed: 2 });});</script><?php } ?></head><body><div id="layout_wrapper"><div id="layout_edgetop"></div><div id="layout_container"> <div id="site_title"> <h1 class="left"><a href="<?php echo get_option('home'); ?>/"><?php bloginfo('name'); ?></a></h1> <h2 class="right"><?php bloginfo('description'); ?></h2> <div class="clearer"> </div> </div> <div id="top_separator"></div> <div id="navigation"> <div id="tabs"> <ul><?php if ( is_home() ) : ?> <li class="current_page_item"><a href="<?php echo get_option('home'); ?>/"><span>Strona główna</span></a></li><?php else : ?> <li><a href="<?php echo get_option('home'); ?>/"><span>Strona główna</span></a></li><?php endif;?> <?php cdt_list_pages('depth=1&title_li=') ?> </ul> <div class="clearer"> </div> </div> </div> <div class="spacer h5"></div> <div id="main"> <div class="left" id="main_left"> <div id="main_left_content"><?php ob_end_flush(); ?> Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
ULLISSES Opublikowano 2 Czerwca 2010 Zgłoś Opublikowano 2 Czerwca 2010 Heh, z tego wszystkiego zapomnieliśmy o małym drobiazgu: <script type="text/javascript" src="http://mojastrona.pl/wp-content/themes/colorvoid/jquery.js"></script>Kod ten powinien się znajdować w nagłówku tuż przed "<?php if" Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
rogi Opublikowano 2 Czerwca 2010 Zgłoś Opublikowano 2 Czerwca 2010 (edytowane) Teraz już popup się pojawia, ale zachowuje się dziwnie. Po wyczyszczeniu ciasteczek, wchodzę na stronę główną, pojawia się popup, gdy odświeżam znów się pojawia, dopiero, gdy kliknę w inny link na blogu, wtedy się pojawia ostatni raz. Nadal pojawia się błąd Warning: Cannot modify header information - headers already sent by... - tylko na stronie głównej. Kod nagłówka: <?php if(empty($_COOKIE['zablokuj'])) {$zablokuj = 'n';setcookie("zablokuj", 1, time()+(60*60*1)); }?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>><head profile="http://gmpg.org/xfn/11"><meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" /><title><?php bloginfo('name'); ?> <?php if ( is_single() ) { ?> » Archiwum bloga <?php } ?><?php wp_title(); ?></title><link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen" /><link rel="alternate" type="application/rss+xml" title="<?php bloginfo('name'); ?> RSS Feed" href="<?php bloginfo('rss2_url'); ?>" /><link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" /><link media="screen" rel="stylesheet" type="text/css" href="st.css" /><script type="text/javascript" src="http://mojastrona.pl/wp-content/themes/colorvoid/jquery.js"></script><?php if ($zablokuj=='n') { ?><script type="text/javascript">$(window).load(function() {$.prompt('abcdefghijk',{ overlayspeed: 2 });});</script><?php } ?></head><body><div id="layout_wrapper"><div id="layout_edgetop"></div><div id="layout_container"> <div id="site_title"> <h1 class="left"><a href="<?php echo get_option('home'); ?>/"><?php bloginfo('name'); ?></a></h1> <h2 class="right"><?php bloginfo('description'); ?></h2> <div class="clearer"> </div> </div> <div id="top_separator"></div> <div id="navigation"> <div id="tabs"> <ul><?php if ( is_home() ) : ?> <li class="current_page_item"><a href="<?php echo get_option('home'); ?>/"><span>Strona główna</span></a></li><?php else : ?> <li><a href="<?php echo get_option('home'); ?>/"><span>Strona główna</span></a></li><?php endif;?> <?php cdt_list_pages('depth=1&title_li=') ?> </ul> <div class="clearer"> </div> </div> </div> <div class="spacer h5"></div> <div id="main"> <div class="left" id="main_left"> <div id="main_left_content"> Edytowane 2 Czerwca 2010 przez rogi Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
ULLISSES Opublikowano 4 Czerwca 2010 Zgłoś Opublikowano 4 Czerwca 2010 Info nadal będzie. Aby się go pozbyć, trzeba by się dobrać do funkcji WordPress, które wysyłają ciastko i się tam dopisać. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...