ynhâld Marketing

WordPress: Sidebars automatysk oanmeitsje foar elke kategory

Ik haw dizze side ferienfâldige om snelheidstiden te ferbetterjen en te besykjen de side better te fertsjinjen sûnder myn lêzers te irritearjen. D'r binne meardere manieren wêrop ik de side fertsjinne haw ... hjir binne se fan meast oant minste lukrative:

  • Direkte sponsoring fan partnerbedriuwen. Wy wurkje oan kollektive strategyen dy't alles opnimme fan webinars oant sosjale media-oandielen om har eveneminten, produkten en / as tsjinsten te befoarderjen.
  • Affiliate marketing fan in array fan affiliate platfoarms. Ik sykje en identifisearje de bedriuwen, soargje derfoar dat se renommearre binne, en diel spesifike artikels dy't ik skriuw as advertinsjes dy't se leverje.
  • Boarnemarketing fan in partner dy't frijlit marketing-relatearre barrens, case studies, en wite papieren.
  • Bannerreklame fan Google wêr't relevante advertinsjes automatysk ferspraat wurde troch myn sjabloan en ynhâld.

WordPress sydbalken

Mei affiliate marketing dy't wat fatsoenlike ynkomsten levere, besleat ik dat ik heul spesifike advertearders spotlightje woe op basis fan 'e kategory fan' e side, dat ik woe de sydbalken dynamysk oanmeitsje sûnder elke sydbalke op 'e side te hardcodearjen. Op dizze manier, as ik in kategory tafoegje - ferskynt de sydbalke automatysk yn myn Widget-gebiet en kin ik in advertinsje tafoegje.

Om dit te dwaan, haw ik wat spesifike koade nedich yn 'e functions.php bestân fan myn bernetema. Gelokkich fûn ik dat immen al hast alles skreau dat ik nedich wie: Meitsje widgetisearre sydbalken foar elke kategory yn WordPress, Ik woe gewoan wat ekstra kontrôles oer hokker kategoryen ik de sydbalken wol werjaan wolle.

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' );

Mei de array fan arguminten foar it opheljen fan kategoryen kin ik alle kategoryen opnimme en útslute dy't ik wolle rjochtsje. Binnen de ferklearring fan 'e foareach kin ik de yndieling oanpasse en oanpasse oan' e sydbalke opmaak fan myn algemiene WordPress-side.

Derneist, yn myn functions.php, Ik wol in funksje tafoegje om te sjen as in sydbalke bestiet en in widget is tafoege:

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;
}

Dan, binnen myn tema's sydbalke sjabloanbestân, ik foegje koade ta om it gebiet dynamysk wer te jaan as de sydbalke is registrearre en in widget hat.

$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 sydbalken foar elke kategory

It resultaat is krekt wat ik woe:

WordPress Widget sydbalken foar elke kategory

No, ûnôfhinklik oft ik kategoryen tafoegje, bewurkje of wiskje ... myn sidebargebieten sille altyd op 'e hichte wêze!

Douglas Karr

Douglas Karr is CMO fan OpenINSIGHTS en de oprjochter fan de Martech Zone. Douglas hat holpen tsientallen suksesfolle MarTech startups, hat holpen yn 'e due diligence fan mear as $ 5 miljard yn Martech oanwinsten en ynvestearrings, en bliuwt te helpen bedriuwen by it útfieren en automatisearjen fan harren ferkeap en marketing strategyen. Douglas is in ynternasjonaal erkend digitale transformaasje en MarTech-ekspert en sprekker. Douglas is ek in publisearre skriuwer fan in Dummie's gids en in boek foar bedriuwsliederskip.

Related Articles

Werom nei topknop
Slute

Adblock ûntdutsen

Martech Zone is yn steat om jo dizze ynhâld sûnder kosten te leverjen, om't wy ús side monetearje fia advertinsje-ynkomsten, affiliate keppelings en sponsoring. Wy soene it wurdearje as jo jo advertinsjeblokkerer fuortsmite as jo ús side besjen.