WordPress: Sidebarren automatesch fir all Kategorie erstellen

Funktioun fir Sidebarë fir All WordPress Kategorie anzeschreiwen

Ech hunn dëse Site vereinfacht fir Geschwindegkeetszäiten ze verbesseren an ze probéieren de Site besser ze monetiséieren ouni meng Lieser ze irritéieren. Et gi verschidde Weeër fir déi ech de Site monetiséiert hunn ... hei si se am meeschten op d'mannst lukratativ:

  • Direkte Parrainagen vu Partnerfirmen. Mir schaffen u kollektive Strategien déi alles vu Webinaren bis zu de soziale Medien Aktien integréieren fir hir Eventer, Produkter an / oder Servicer ze promoten.
  • Affiliate Marketing aus enger Rei vu Filialplattformen. Ech sichen an identifizéieren d'Firmen, suergen datt se unerkannt sinn, an deelen spezifesch Artikelen déi ech schreiwen oder Annoncen déi se ubidden.
  • Ressource Marketing vun engem Partner dee verëffentlecht Marketingbezunnen Eventer, Fallstudien a Wäissbicher.
  • Banner Annoncéieren vu Google wou relevant Annoncen automatesch duerch mäi Schabloun an Inhalt verspreet ginn.

WordPress Sidebaren

Mat Affiliate Marketing deen e puer anstänneg Akommes ubitt, hunn ech decidéiert datt ech ganz spezifesch Annonceuren op der Basis vun der Kategorie vum Site beliicht wollten, also wollt ech d'Sidebarren dynamesch erstellen ouni all Sidebar um Site ze haart ze kodéieren. Dëse Wee, wann ech eng Kategorie bäifügen - d'Sidebar erschéngt automatesch a mengem Widget Beräich an ech kann eng Annonce bäifügen.

Fir dëst ze maachen, brauch ech e spezifesche Code an der functions.php Dossier vu mengem Kand Thema. Glécklecherweis hunn ech festgestallt datt een scho bal alles geschriwwen huet wat ech gebraucht hunn: Erstellt Widgetiséierter Sidebar fir all Kategorie op WordPress. Ech wollt just e puer zousätzlech Kontrollen iwwer wéi eng Kategorien ech d'Sidebaren anstelle kann.

function add_category_sidebars() {
    $args = array(
        'type'                     => 'post',
        'orderby'                  => 'name',
        'order'                    => 'ASC',
        'hide_empty'               => 1,
        'hierarchical'             => 1,
        'exclude'                  => '',
        'include'                  => '',
        'number'                   => '',
        'taxonomy'                 => 'category'
        ); 
    
    $categories = get_categories($args);

    foreach ($categories as $category) {
        if (0 == $category->parent)
            register_sidebar( array(
                'name' => $category->cat_name,
                'id' => $category->category_nicename . '-sidebar',
                'description' => 'This is the ' . $category->cat_name . ' widgetized area',
                'before_widget' => '<aside id="%1$s" class="widget %2$s">',
                'after_widget' => '</aside>',
                'before_title' => '<h3 class="widget-title">',
                'after_title' => '</h3>',
            ));
        }
}
add_action( 'widgets_init', 'add_category_sidebars' );

Mat der Array vun Argumenter fir Kategorien z'erreechen, kann ech all Kategorien enthalen an ausschléissen déi ech wëll viséieren. An der Foreach Erklärung kann ech de Layout änneren a meng WordPress Säit Sidebar Formatéierung passen.

Zousätzlech, a mengem functions.php, Ech wëll eng Funktioun bäifügen fir ze kucken ob eng Sidebar existéiert an e Widget derbäi huet:

function is_sidebar_active($cat_name) {
    global $wp_registered_sidebars;
    $cat_id = get_cat_ID($cat_name);
    $widgetlist = wp_get_sidebars_widgets();
    if ($widgetlist[$cat_id])
        return true;
    return false;
}

Dann, a mengem Thema Newsfeed Schablounendatei, ech addéiere Code fir de Beräich dynamesch ze weisen wann d'Sidebar registréiert ass an e Widget huet.

$queried_object = get_queried_object();
if ($queried_object) {
    $post_id = $queried_object->ID;
}
if(is_category() || in_category($cat_name, $post_id)) {
    $sidebar_id = sanitize_title($cat_name);
    if( is_sidebar_active($sidebar_id)) {
        dynamic_sidebar($sidebar_id);
    }
}

WordPress Sidebar fir all Kategorie

D'Resultat ass genau dat wat ech wollt:

WordPress Widget Sidebar fir all Kategorie

Elo, egal ob ech Kategorien bäifügen, änneren oder läschen ... meng Sidebar Beräicher sinn ëmmer um neiste Stand!

Wat denks du?

Dëse Site benotzt Akismet fir Spam ze reduzéieren. Léiert wéi Är Kommentarfaten veraarbecht ginn.