Marketing Περιεχόμενο

WordPress: Δημιουργήστε αυτόματα πλευρικές γραμμές για κάθε κατηγορία

Απλοποίησα αυτόν τον ιστότοπο για να βελτιώσω τους χρόνους ταχύτητας και να προσπαθήσω να δημιουργήσω έσοδα από τον ιστότοπο καλύτερα χωρίς να ενοχλήσω τους αναγνώστες μου. Υπάρχουν πολλοί τρόποι με τους οποίους έχω δημιουργήσει έσοδα από τον ιστότοπο… εδώ είναι από τους περισσότερους έως τους λιγότερο επικερδείς:

  • Άμεσες χορηγίες από συνεργαζόμενες εταιρείες. Εργαζόμαστε σε συλλογικές στρατηγικές που ενσωματώνουν τα πάντα, από διαδικτυακά σενάρια έως κοινόχρηστα μέσα κοινωνικής δικτύωσης για την προώθηση των εκδηλώσεων, των προϊόντων και / ή των υπηρεσιών τους.
  • Μάρκετινγκ θυγατρικών από μια σειρά από πλατφόρμες θυγατρικών. Εξετάζω και αναγνωρίζω τις εταιρείες, διασφαλίζω ότι είναι αξιόπιστες και μοιράζομαι συγκεκριμένα άρθρα που γράφω ή διαφημίσεις που παρέχουν.
  • Μάρκετινγκ πόρων από έναν συνεργάτη που απελευθερώνει εκδηλώσεις που σχετίζονται με το μάρκετινγκ, μελέτες περιπτώσεων και λευκές βίβλους.
  • Διαφήμιση banner από την Google όπου οι σχετικές διαφημίσεις διασκορπίζονται αυτόματα μέσω του προτύπου και του περιεχομένου μου.

Sidebars του WordPress

Με το μάρκετινγκ συνεργατών που παρέχει κάποια αξιοπρεπή έσοδα, αποφάσισα ότι ήθελα να επισημάνω πολύ συγκεκριμένους διαφημιζόμενους με βάση την κατηγορία του ιστότοπου, οπότε ήθελα να δημιουργήσω δυναμικά τις πλαϊνές μπάρες χωρίς να χρειάζεται να κάνω σκληρό κώδικα κάθε πλευρικής γραμμής στον ιστότοπο. Με αυτόν τον τρόπο, αν προσθέσω μια κατηγορία - η πλευρική γραμμή εμφανίζεται αυτόματα στην περιοχή Widget και μπορώ να προσθέσω μια διαφήμιση.

Για να το κάνω αυτό, χρειαζόμουν έναν συγκεκριμένο κωδικό στο functions.php αρχείο του παιδικού μου θέματος. Ευτυχώς, βρήκα ότι κάποιος είχε ήδη γράψει σχεδόν όλα όσα χρειαζόμουν: Δημιουργήστε Widgetized Sidebars για κάθε κατηγορία στο 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, Θέλω να προσθέσω μια συνάρτηση για να δω αν υπάρχει πλευρική γραμμή και έχει προστεθεί widget σε αυτήν:

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

Τότε, μέσα στο θέμα μου sidebar αρχείο προτύπου, προσθέτω κώδικα για να εμφανίσω δυναμικά την περιοχή εάν η πλαϊνή γραμμή είναι καταχωρημένη και έχει widget σε αυτό.

$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 Sidebars για κάθε κατηγορία

Το αποτέλεσμα είναι ακριβώς αυτό που ήθελα:

Sidebars Widget WordPress για κάθε κατηγορία

Τώρα, ανεξάρτητα από το αν προσθέτω, επεξεργάζομαι ή διαγράφω κατηγορίες… οι περιοχές πλευρικής γραμμής μου θα είναι πάντα ενημερωμένες!

Douglas Karr

Douglas Karr είναι ΚΟΑ του OpenINSIGHTS και ο ιδρυτής του Martech Zone. Ο Ντάγκλας έχει βοηθήσει δεκάδες επιτυχημένες νεοφυείς επιχειρήσεις της MarTech, έχει βοηθήσει στη δέουσα επιμέλεια άνω των 5 δισεκατομμυρίων δολαρίων σε εξαγορές και επενδύσεις της Martech και συνεχίζει να βοηθά τις εταιρείες στην εφαρμογή και την αυτοματοποίηση των στρατηγικών πωλήσεων και μάρκετινγκ. Ο Ντάγκλας είναι ένας διεθνώς αναγνωρισμένος ειδικός και ομιλητής στον ψηφιακό μετασχηματισμό και στη MarTech. Ο Ντάγκλας είναι επίσης δημοσιευμένος συγγραφέας ενός οδηγού Dummie και ενός βιβλίου επιχειρηματικής ηγεσίας.

Σχετικά άρθρα

Επιστροφή στην κορυφή κουμπί
Κλεισιμο

Εντοπίστηκε μπλοκ διαφημίσεων

Martech Zone είναι σε θέση να σας παρέχει αυτό το περιεχόμενο χωρίς κόστος, επειδή δημιουργούμε έσοδα από τον ιστότοπό μας μέσω εσόδων από διαφημίσεις, συνδέσμων συνεργατών και χορηγιών. Θα εκτιμούσαμε εάν καταργούσατε το πρόγραμμα αποκλεισμού διαφημίσεων καθώς προβάλλετε τον ιστότοπό μας.