Cum pot filtra in asa fel incat pe pagina siteului meu 404 sa nu am reclama adsense insa restul continutului din sidebaruri sa existe?
Versiune printabilă
Cum pot filtra in asa fel incat pe pagina siteului meu 404 sa nu am reclama adsense insa restul continutului din sidebaruri sa existe?
@florescualin - Creează o pagină cu numele "404.php" -> copiezi "index.php" (codul) în 404 și după ștergi codurile cu reclamă. :)
sau dai redirect 301 din pagina 404 catre index ;)
Sau poti apela la o functie built-in:
Cod PHP:if (!is_404() ) { // daca nu este pagina 404... atunci se afiseaza reclama
// cod js
}
cel mai bine este sa iti faci sidebaruri pentru fiecare sectiune in parte, pentru page, post, samd. Uite ce iti propun:
In functions.php din tema, pune:
Si tot asa in functie de cate sidebaruri diferite ai nevoie, de obicei eu fac sidebar Index, Categorii, Pagini, Articole.Cod PHP:<?php
if ( function_exists('register_sidebar') ) {
register_sidebar(array(
'name' => 'Sidebar Prima Pagina',
'id' => 'sidebar-1',
'before_widget' => '<div id="%1$s" class="sidebar-box %2$s">',
'after_widget' => '</div>',
'before_title' => '<span class="headings-sidebar">',
'after_title' => '</span>',
));
register_sidebar(array(
'name' => 'Sidebar Articole',
'id' => 'sidebar-2',
'before_widget' => '<div id="%1$s" class="sidebar-box %2$s">',
'after_widget' => '</div>',
'before_title' => '<span class="headings-sidebar">',
'after_title' => '</span>',
));
}
?>
Apoi in cadrul fisierului sidebar.php am asa:
Explicatie: in functions.php am creat niste sidebar-uri, 2 in cazul de sus, dar tu creeaza cate ai nevoie, iar in sidebar.php avem niste if-uri care selecteaza in ce sectiune sa apara sidebarul dorit.Cod PHP:<?php if(is_home()) { if(!function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar-1')) : endif; } ?>
<?php if(is_single()) { if(!function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar-2')) : endif; } ?>
De exemplu, daca suntem home (index) afiseaza sidebarul cu id-ul sidebar-1
Daca suntem intr-in articol (post), afiseaza sidebar-2:Cod PHP:<?php if(is_home()) { if(!function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar-1')) : endif; } ?>
si tot asa...Cod PHP:<?php if(is_single()) { if(!function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar-2')) : endif; } ?>
Tu poti sa folosesti ce a zis Casparel, asa:
in functions.php pui:
in sidebar.php pui:Cod PHP:<?php
if ( function_exists('register_sidebar') ) {
register_sidebar(array(
'name' => 'Sidebar 404',
'id' => 'sidebar-3',
'before_widget' => '<div id="%1$s" class="sidebar-box %2$s">',
'after_widget' => '</div>',
'before_title' => '<span class="headings-sidebar">',
'after_title' => '</span>',
));
Iar acum daca te duci in Widgets ai sa vezi ca iti apar sidebar-urile create si astfel ai posibilitatea de a adauga widget-urile doar in sectiunea dorita.Cod PHP:<?php if(is_404()) { if(!function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar-3')) : endif; } ?>
Multumesc tuturor pentru sfaturi. am ales varianta propusa de robciucionut. La mine era problema ca google adsense mi-a scazut din venituri din cauza erorilor crawel. Am 96 pagini care apar la erori crawal in contul adsense, iar in dreptul lor apare pagina nu exista. Banuiesc ca asta era problema ca aveam continut adsens si in pagina 404, in sidebaruri ceea ce nu e normal. Am scos reclamele, iar acum sper sa fie bine.
Poti folosi un plugin ( Adinjection de exemplu )
sau creezi o pagina custom pt 404 si in robots.txt pe primele linii adaugi
"
User-agent: Mediapartners-Google*
Disallow:
"