WordPress και η search engine του
Η ενσωματωμένη μηχανή αναζήτησης του WordPress θεωρείται ακόμα και από ένθερμους οπαδούς του cms αυτού (μέσα στους οποίους συμπεριλαμβάνομαι και εγώ) σαν ένα από τα αδύναμα σημεία της πλατφόρμας αυτής που επιτρέπει κατά τα άλλα την εύκολη δημιουργία και διαχείριση δυναμικών ιστοσελίδων και για τον λόγο αυτό παραμένει όμως , και δικαίως κατά την γνώμη μου, η δημοφιλέστερη blogging πλατφόρμα και η προσωπική μου επιλογή για την κατασκευή μιας ιστοσελίδας. Στο άρθρο που ακολουθεί παραθέτουμε τρεις απλές πανεύκολες μετατροπές σε αυτήν που μπορούν να την βελτιώσουν και να αναβαθμίσουν την λειτουργία της.
Ανακατεύθυνση στο πρώτο post αν βρεθεί μόνο 1 σχετικό post σε μια αναζήτηση Ας αρχίσουμε με ένα snippet που αυτόματα θα κάνει redirect τον αναγνώστη αν βρει μόνο ένα σχετικό post κατά την αναζήτηση. Απλά κάντε paste τον ακόλουθο κώδικα στο αρχείο functions.php και αυτό ήταν όλο. add_action('template_redirect', 'redirect_single_post'); function redirect_single_post() { if (is_search()) { global $wp_query; if ($wp_query->post_count == 1) { wp_redirect( get_permalink( $wp_query->posts['0']->ID ) ); } } }
Εμφάνιση του αριθμού των αποτελεσμάτων σε μια αναζήτηση στο WordPress Όταν ένας επισκέπτης πραγματοποιήσει μια αναζήτηση στο wordpress αυτό δεν επιστρέφει τον αριθμό των αποτελεσμάτων που βρήκε. Φυσικά σε αρκετές περιπτώσεις είναι ιδιαίτερα χρήσιμο
κάποιος να γνωρίζει πόσα σχετικά αποτελέσματα υπάρχουν και ακολουθεί ο τρόπος για να το επιτύχουμε. Απλά εντοπίζουμε το αρχείο search.php και μέσα σε αυτό ψάχνουμε για την ακόλουθη γραμμή κώδικα: <h2>Search Results</h2>
Το αντικαθιστούμε με τον ακόλουθο κώδικα <h2>Search Results for <?php /* Search Count */ $allsearch = &new WP_Query("s=$s&showposts=-1"); $key = wp_specialchars($s, 1); $count = $allsearch->post_count; _e(''); _e('<span>'); echo $key; _e('</span>'); _e(' — '); echo $count . ' '; _e('articles'); wp_reset_query(); ?></h2>
Φωτισμένο κείμενο στα αποτελέσματα αναζήτησης Ένας απλός τρόπος για να κάνετε τα αποτελέσματα της αναζήτησης να εμφανίζονται με ένα πιο φιλικό τρόπο προς τον χρήστη από αυτόν που παρέχει το wordpress. Για να το επιτύχετε αυτό απλά ανοίξτε το search.php αρχείο και βρείτε την συνάρτηση the_title() Αντικαταστήστε την με: echo $title;
Τώρα πριν την γραμμή που μόλις τροποποιήσατε απλά προσθέστε τον ακόλουθο κώδικα: <?php
?>
$title = get_the_title(); $keys= explode(" ",$s); $title = preg_replace('/('.implode('|', $keys) .')/iu', '<strong></strong>', $title);
Σώστε το αρχείο search.php και ανοίξτε το αρχείο style.css. Προσθέστε την ακόλουθη γραμμή κώδικα σε αυτό : strong.search-excerpt { background: yellow; }
Αυτό ήταν όλο! Ελπίζω το άρθρο μου να σας φανεί χρήσιμο.