Παρασκευή, 19 Απριλίου, 2024
More
    ΑρχικήWordpressΠως να μειώσεις το μέγεθος του excerpt στο Wordpress

    Πως να μειώσεις το μέγεθος του excerpt στο WordPress

    Πόσες φορές αυτό το excerpt βγαίνει πολύ μεγάλο ή πολύ μικρό;

    Σήμερα θα σου δείξουμε πως μπορείς να αυξήσεις ή να μειώσεις το μέγεθος του τίτλου ή του κειμένου του άρθρου σου.

    Το παρακάτω κομμάτι κώδικα, πρέπει να γίνει επικόλληση στο αρχείο functions.php του θέματος που έχεις επιλέξει στην εγκατάσταση του wordpress. Ναι απλά κάνεις copy – paste.

    function smalltext($num) {
    $limit = $num+1;
    $smalltext = explode(' ', get_the_excerpt(), $limit);
    array_pop($smalltext);
    $smalltext = implode(" ",$smalltext)."…<br><a class='moretag' href=". get_permalink($post->ID) . "> Διαβάστε περισσότερα</a>";
    echo $smalltext;
    }
    
    function content($num) {
    $theContent = get_the_content();
    $output = preg_replace('/<img[^>]+./’,", $theContent);
    $limit = $num+1;
    $content = explode(' ', $output, $limit);
    array_pop($content);
    $content = implode(" ",$content)."…";
    echo $content;
    }
    
    function title($num) {
    $limit = $num+1;
    $title = explode(' ', get_the_title(), $limit);
    array_pop($title);
    $title = implode(" ",$title)."…";
    echo $title;
    }

    Για να χρησιμοποιήσεις τα τρία functions το μόνο που χρειάζεται είναι να βάλεις στο θέμα σου, αντί για the_excerpt(), smalltext(20). Αυτό θα εμφανίσει τις πρώτες 20 λέξεις που υπάρχουν στο περιεχόμενο του άρθρου σου.

    Να εξηγήσουμε λοιπόν τι κάνουν τα παραπάνω functions. Όλα ακουλουθούν την ίδια λογική. Για παράδειγμα θα εξηγήσουμε την λειτουργία smalltext().

    Όπως βλέπετε το smalltext δέχεται παράμετρο στην μεταβλητή $num. Αυτό σημαίνει πως όταν κάποιος καλέσει την λειτουργία με παράμετρο 30 ( smalltext(30) ), τότε η τιμή 30 θα οριστεί στην μεταβλητή $num.

    Επόμενη φάση είναι να διασπάσουμε τον αριθμό των λέξεων που υπάρχουν στο the_excerpt(). Έτσι χρησιμοποιούμε την εντολή explode.

    $smalltext = explode(‘ ‘, get_the_excerpt(), $limit);

    Η εντολή αυτή διασπάει το string που θα του ορίσουμε με βάση ένα διαχωριστικό το οποίο επίσης θα ορίσουμε.Η πρώτη παράμετρος είναι το τι ορίζουμε ως διαχωριστικό μεταξύ των κομματιών. Εμείς ορίζουμε το κενό. Το διάστημα. Με αυτόν τον τρόπο θα μπορέσουμε να πάρουμε όλες τις λέξεις του κειμένου. Το $limit είναι στην ουσία το $num αυξημένο κατά μία μονάδα καθώς η καταμέτρηση πάντα ξεκινάει από το μηδέν.

    Επομένως αυτή η εντολή μας επιστρέφει τις πρώτες 30 λέξεις από το κείμενο του άρθρου μας. Χρησιμοποιώντας την array_pop και την implode ενώνουμε όλα τα κομμάτια που έχουμε διασπάσει στην επάνω γραμμή (τις πρώτες 30 λέξεις), και με echo εμφανίζουμε το αποτέλεσμα.

    Θεόδωρος Τασσόπουλος
    Θεόδωρος Τασσόπουλοςhttps://www.digispot.gr
    Τεχνολόγος Ηλεκτρονικός Μηχανικός MSc in Networking & Data Communications. MSc in Banking, Accounting and Finance. Ασχολούμαι με τον προγραμματισμό από τις αρχές του 2000. Τα τελευταία πέντε έτη ασχολούμαι με την Διοικητική Πληροφόρηση και το Business Intelligence γενικότερα. Ξεκινάω συνεχώς νέα project χωρίς να υπάρχει απαραίτητα η προοπτική του κέρδους. Λάτρης των θετικών επιστημών και θαυμαστής αυτών που τις αντιλαμβάνονται.
    RELATED ARTICLES