WordPress. Յուրաքանչյուր կատեգորիայի համար ինքնաբերաբար ստեղծեք կողային գծեր

Կողմնագծերը գրանցելու յուրաքանչյուր WordPress կատեգորիայի համար գործառույթ

Ես պարզեցրել եմ այս կայքը `արագության ժամանակը բարելավելու և կայքը ավելի լավ դրամայնացնելու փորձ կատարելու համար` առանց իմ ընթերցողներին նյարդայնացնելու: Կան բազմաթիվ եղանակներ, որոնցով ես վաստակել եմ կայքը… այստեղ դրանք ամենից շատ եկամտաբեր են.

  • Ուղղակի հովանավորչություն գործընկեր ընկերություններից: Մենք աշխատում ենք կոլեկտիվ ռազմավարությունների վրա, որոնք ներառում են ամեն ինչ ՝ վեբինարներից մինչև սոցիալական լրատվամիջոցների բաժնետոմսեր ՝ իրենց միջոցառումները, արտադրանքները և (կամ) ծառայությունները խթանելու համար:
  • Affiliate marketing դուստր ձեռնարկությունների հարթակից: Ես որոնում և բացահայտում եմ ընկերություններին, համոզվում եմ, որ դրանք հեղինակավոր են և կիսվում եմ իմ կողմից գրված հատուկ հոդվածներով կամ գովազդներով:
  • Ռեսուրսների շուկայավարում ազատող գործընկերոջից շուկայավարման հետ կապված իրադարձություններ, դեպքերի ուսումնասիրություններ և սպիտակ փաստաթղթեր.
  • Բաներային գովազդ Google- ից, որտեղ համապատասխան գովազդները ավտոմատ կերպով ցրվում են իմ ձևանմուշի և բովանդակության միջոցով:

WordPress կողային գծեր

Դուստր ձեռնարկությունների շուկայավարմամբ `որոշ պատշաճ եկամուտ ապահովելով, ես որոշեցի, որ ուզում եմ ուշադրություն դարձնել շատ հատուկ գովազդատուներին, որոնք հիմնված են կայքի կատեգորիայի վրա, ուստի ուզում էի դինամիկ կերպով ստեղծել կողային գծեր` առանց կայքի յուրաքանչյուր կողային կոճակի կոդավորելու: Այս եղանակով, եթե ես կատեգորիա ավելացնեմ, կողային սյունն ինքնաբերաբար հայտնվում է իմ Վիջեթի տարածքում, և ես կարող եմ գովազդ ավելացնել:

Դա անելու համար ինձ անհրաժեշտ էր որոշակի կոդ ՝ functions.php իմ երեխայի թեմայի ֆայլը: Բարեբախտաբար, ես գտա, որ ինչ-որ մեկն արդեն գրել էր գրեթե ամեն ինչ, ինչ ինձ պետք էր. WordPress- ում յուրաքանչյուր կատեգորիայի համար ստեղծեք լայնածավալ կողային գծեր, Ես պարզապես ուզում էի մի քանի լրացուցիչ հսկողություն, թե որ կատեգորիաներում ես կցանկանայի ցուցադրել կողային գծերը:

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

Կատեգորիաներ ստանալու համար փաստարկների զանգվածով ես կարող եմ ներառել և բացառել ցանկացած կատեգորիա, որը ես կցանկանայի թիրախավորել: Foreach հայտարարության շրջանակներում ես կարող եմ փոփոխել և համապատասխանեցնել դասավորությունը WordPress կայքի իմ ընդհանուր կողային ձևաչափման հետ:

Բացի այդ, իմ մեջ functions.php, Ես ուզում եմ ավելացնել մի գործառույթ, որպեսզի տեսնեմ ՝ կա արդյոք կողային տող և դրան ավելացված է վիջեթ.

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

Հետո, իմ թեմայի շրջանակներում ՍԱՀՄԱՆԱԴՐՈՒԹՅՈՒՆ ձևանմուշի ֆայլ, ես կոդ եմ ավելացնում տարածքը դինամիկորեն ցուցադրելու համար, եթե կողային տողը գրանցված է և դրա մեջ կա վիջեթ:

$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- ի կողային գծեր յուրաքանչյուր կատեգորիայի համար

Արդյունքն այն է, ինչ ես ուզում էի.

WordPress վիդջեթների կողային գծեր յուրաքանչյուր կատեգորիայի համար

Հիմա, անկախ նրանից ՝ ես կատեգորիաներ կավելացնեմ, կխմբագրեմ կամ կջնջեմ… իմ կողային գոտու հատվածները միշտ արդիական կլինեն:

Այս կայքը օգտագործում է Akismet- ը սպամի նվազեցման համար: Իմացեք, թե ինչպես է ձեր տվյալները մշակվում.