Πόσες φορές αυτό το 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 εμφανίζουμε το αποτέλεσμα.