Astra theme: Το τελευταίο διάστημα ίσως παρατηρήσατε αλλαγές στην σελίδα του iGuRu.gr. Ναι σωστά, γιατί αλλάξαμε theme. Χρησιμοποιούσαμε το Genesis με ένα Custom child, ενώ τώρα χρησιμοποιούμε το Astra, με ένα custom child επίσης.
Επιλέξαμε το Astra theme γιατί είναι ελαφρύ, γρήγορο με πολλές επιλογές παραμετροποίησης, αλλά και γιατί είναι SEO friendly. Όσον αφορά την παραμετροποίηση, εμείς του αλλάξαμε τα φώτα, με πρόσθετο κώδικα php και css για να το φέρουμε λίγο πολύ στην εμφάνιση του παλαιού Genesis theme.
Μια από τις αλλαγές που πραγματοποιήσαμε στο Astra αμέσως μόλις το δοκιμάσαμε για πρώτη φορά ήταν και το unlink του χρήστη από τις δημοσιεύσεις, καθώς θεωρούμε ότι είναι ένα επιπλέον ρίσκο στην ασφάλεια.
Τι εννοώ:
Σχεδόν όλα τα WordPress themes διαθέτουν ένα link συνδεδεμένο με το όνομα του αρθρογράφου κάθε δημοσίευσης. Το link αυτό οδηγεί σε μια σελίδα με όλες τις δημοσιεύσεις του αρθρογράφου. Όμως εμφανίζει δημόσια το login name.
για παράδειγμα
http://iguru.gr/author/to_onoma_syndesis/
Γιατί είναι ρίσκο; Όλες οι WordPress ιστοσελίδες διαθέτουν μια προεπιλεγμένη σελίδα σύνδεσης, που αν την γνωρίζεις μπορείς εύκολα να πραγματοποιήσεις επιθέσεις brute force. Το συγκεκριμένο link κάνει τα πράγματα πιο εύκολα για τον hacker καθώς του δίνει στο πιάτο το login name του αρθρογράφου. Έτσι θα πρέπει να ψάξει μόνο για τον κωδικό πρόσβασης.
Έτσι επειδή έχουμε σαν αρχή να κάνουμε τα πράγματα λίγο πιο δύσκολα για κάθε επίδοξο hacker σε όλα μας τα themes απενεργοποιούμε το συγκεκριμένο link.
Ας δούμε πως γίνεται στο Astra.
Προσθέστε τον παρακάτω κώδικα στο functions.php του child που χρησιμοποιείτε:
add_filter('astra_post_author_output' , 'call_back'); function call_back(){ $author_info_array = sprintf( ' 'posted-by vcard author', ) ); echo '>'; // Translators: Author Name. ?> 'url fn n', ) ); ?> > 'author-name', ) ); ?> >', sprintf( ' ', esc_html__( 'About The Author', 'astra-addon' ), get_avatar( get_the_author_meta( 'email' ), 100 ), ' ', esc_html( get_the_author() ), wp_kses_post( get_the_author_meta( 'description' ) ), astra_attr( 'author-url-info', array( 'class' => '', ) ), astra_attr( 'author-name-info', array( 'class' => '', ) ) ), astra_attr( 'author-item-info', array( 'class' => '', ) ), astra_attr( 'author-desc-info', array( 'class' => '', ) ) ); return $author_info_array; } add_filter('astra_post_author' , 'author_call_back', 15 ); function author_call_back(){ ob_start(); echo '