Αν το ιστολόγιό σας είναι μερικών ετών και κάποια στιγμή μεταπηδήσατε στον επεξεργαστή Gutenberg, αφήνοντας όλες τις παλιές δημοσιεύσεις σας δημοσιευμένες στην κλασική μορφή του επεξεργαστή, ίσως να θέλετε να τις μετατρέψετε σε μπλοκ Gutenberg τώρα.
Η κίνηση αυτή μπορεί να προσφέρει κάποια οφέλη για το SEO και τις επιδόσεις. Αυτά εξηγούνται στο τέλος αυτής της ανάρτησης.
Μετατροπή σε μπλοκ Το μόνο εναπομείναν αξιοπρεπές πρόσθετο που διευκολύνει αυτή τη μετατροπή είναι το Convert To Blocks . Απλά εγκαταστήστε το. Δεν διαθέτει ρυθμίσεις ή πίνακα ελέγχου και δεν χρειάζεται.
Όταν ανοίξετε τη λίστα των καταχωρήσεων, θα βρείτε μια νέα στήλη στα δεξιά του τίτλου, η οποία υποδεικνύει αν η καταχώριση έχει δημοσιευτεί στον κλασικό επεξεργαστή ή στον επεξεργαστή μπλοκ Gutenberg. Ωστόσο, δεν μπορούν να ταξινομηθούν.
Δεν είναι τόσο σπουδαίο, επειδή αυτό μπορεί να γίνει με μια λειτουργία που προσθέτει μια στήλη στα δεξιά που δείχνει "Classic" ή "Gutenberg" σε κάθε μήνυμα. Κάτι τέτοιο:
// Añadir la columna personalizada en la lista de entradas que muestre si fueron publicadas con el editor Clásico o Gutenberg
function add_editor_type_column($columns) {
$columns['editor_type'] = 'Editor';
return $columns;
}
add_filter('manage_posts_columns', 'add_editor_type_column');
// Mostrar el contenido de la columna personalizada
function display_editor_type_column($column_name, $post_id) {
if ($column_name === 'editor_type') {
$content = get_post_field('post_content', $post_id);
if (strpos($content, '<!-- wp:') !== false) {
echo 'Gutenberg';
} else {
echo 'Clásico';
}
}
}
add_action('manage_posts_custom_column', 'display_editor_type_column', 10, 2);
// Hacer que la columna sea ordenable
function make_editor_type_column_sortable($columns) {
$columns['editor_type'] = 'editor_type';
return $columns;
}
add_filter('manage_edit-post_sortable_columns', 'make_editor_type_column_sortable');
// Modificar la consulta para ordenar por el tipo de editor
function sort_posts_by_editor_type($query) {
if (!is_admin() || !$query->is_main_query()) {
return;
}
if ($query->get('orderby') === 'editor_type') {
$query->set('meta_key', '_editor_type');
$query->set('orderby', 'meta_value');
}
}
add_action('pre_get_posts', 'sort_posts_by_editor_type');
// Guardar el tipo de editor como metadato al guardar el post
function save_editor_type_metadata($post_id) {
if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) {
return;
}
$content = get_post_field('post_content', $post_id);
$editor_type = (strpos($content, '<!-- wp:') !== false) ? 'gutenberg' : 'classic';
update_post_meta($post_id, '_editor_type', $editor_type);
}
add_action('save_post', 'save_editor_type_metadata');
Το ενδιαφέρον με το πρόσθετο είναι ότι μετατρέπει "εν κινήσει". Αυτό σημαίνει ότι αν επεξεργαστείτε οποιαδήποτε δημοσίευση, θα μετατραπεί αυτόματα σε Gutenberg όταν ανοίξετε τον επεξεργαστή. Αν κάτι πάει στραβά, μπορείτε να το δείτε και να βγείτε χωρίς αποθήκευση, να απορρίψετε τις αλλαγές για να επεξεργαστείτε αυτό που υποψιάζεστε ότι προκάλεσε το σφάλμα μετατροπής και να δοκιμάσετε ξανά.
Αυτό είναι καλό για τη μετατροπή μερικών δεκάδων μηνυμάτων. Λειτουργεί πολύ καλά και μετατρέπει με επιτυχία σχεδόν όλα τα μηνύματα που δοκίμασα. Το Convert to Blocks προειδοποιεί ότι από προεπιλογή δεν μετατρέπει προσαρμοσμένα μπλοκ.
Μαζική μετατροπή ή μετατροπή παρτίδας Τι γίνεται όμως αν έχετε εκατοντάδες ή χιλιάδες μηνύματα προς μετατροπή, όπως στην περίπτωσή μου; Εδώ είναι που μπαίνει στο παιχνίδι το πιο χρήσιμο χαρακτηριστικό της επέκτασης. Επιτρέπει τη μαζική μετατροπή με χρήση του WP-CLI . Αν γνωρίζετε ήδη πώς να χρησιμοποιείτε το WP-CLI, μπορείτε να παραλείψετε αυτή την ενότητα, ενώ αν δεν γνωρίζετε, μπορείτε να μεταβείτε σε αυτόν τον σύνδεσμο.
Στη σελίδα τους στο GitHub μπορείτε να βρείτε μια λίστα με εντολές που μπορείτε να χρησιμοποιήσετε.
NOMBRE
wp convert-to-blocks start
DESCRIPCIÓN
Inicia una nueva Migración. El comando imprime la URL que debe abrirse en un navegador para conectarlo a la CLI de WP.
SYNOPSIS
wp convert-to-blocks start [--post_type=<post_type>] [--per_page=<per_page>] [--page=<page>] [--only=<only>] [--catalog] [--reset]
OPCIONES
[--post_type=<post_type>]
Lista opcional delimitada por comas de los tipos de entrada a migrar. Por defecto post,page
[--per_page=<per_page>]
Número opcional de posts a migrar por lote. Por defecto no hay límite. Combinar con --page para paginar.
[--page=<page>]
Número de página opcional desde el que iniciar la migración. Por defecto es 1.
[--only=<only>]
Lista opcional delimitada por comas de ID de post a migrar.
[--catalog]
Bandera opcional para migrar sólo las entradas etiquetadas del editor clásico. Requiere que el plugin Block Catalog esté presente y haya sido indexado.
[--reset]
Detiene cualquier migración en curso y restablece el estado de la migración.
NOMBRE
wp convert-to-blocks stop
DESCRIPCIÓN
Detiene la migración en curso si está activa.
NOMBRE
wp convert-to-blocks status
DESCRIPCIÓN
Imprime el estado de la migración en curso.
Αν έχετε κοινόχρηστη φιλοξενία ή απλά δεν θέλετε να επιβραδύνετε την ταχύτητα λήψης λόγω της υψηλής χρήσης της CPU για τη μετατροπή (θυμηθείτε ότι δεν μετατρέπει μόνο, αλλά πρέπει επίσης να αποθηκεύσει/δημοσιεύσει όλα τα μηνύματα ένα προς ένα), σας συνιστώ να το κάνετε σε παρτίδες.
Επέλεξα την επιλογή να μετατρέψω έναν ορισμένο αριθμό μηνυμάτων προσθέτοντας περίπου 100 μπλοκ ετικετών σε κάθε παρτίδα.
Ξέρουμε πώς να δούμε το αναγνωριστικό του μηνύματος, επειδή στην εκτύπωση εμφανίζεται στη διεύθυνση URL, αλλά τώρα πρέπει να εξάγουμε όλα τα αναγνωριστικά των μηνυμάτων που δημοσιεύονται με τον κλασικό συντάκτη, χωρισμένα με κόμμα και χωρίς κενά.
Έχω επίσης μια λειτουργία γι' αυτό.
// Función para obtener los IDs de posts creados con el editor clásico
function obtener_ids_posts_editor_clasico() {
global $wpdb;
// Consulta para obtener los IDs de los posts que NO contienen bloques de Gutenberg
$query = "
SELECT ID
FROM {$wpdb->posts}
WHERE post_content NOT LIKE '%<!-- wp:%'
AND post_status = 'publish'
AND post_type = 'post' -- Solo posts, excluye páginas y otros tipos
AND post_content != '' -- Excluye posts vacíos
AND post_title != '' -- Excluye posts sin título
AND post_name != '' -- Excluye posts sin slug válido
";
$results = $wpdb->get_col($query);
// Convierte el array de IDs en una cadena separada por comas
$ids_comma_separated = implode(',', $results);
return $ids_comma_separated;
}
// Shortcode para mostrar el listado de IDs y el número total de posts con el editor clásico
add_shortcode('listado_ids_clasico', function() {
// Obtener la lista de IDs
$ids_posts_clasico = obtener_ids_posts_editor_clasico();
// Contar el número total de IDs
$total_posts = count(explode(',', $ids_posts_clasico));
// Mostrar el contador y la lista de IDs
return 'Total de posts creados con el editor clásico: ' . $total_posts . '<br>IDs de posts: ' . $ids_posts_clasico;
});
Uso:
1. Copia el código en el archivo functions.php de tu tema o en un plugin personalizado.
2. Inserta el shortcode [listado_ids_clasico] en cualquier página o entrada de WordPress no hace falta que la publiques. Te bastará hacer una vista previa del borrador.
3. El shortcode mostrará el número total de posts creados con el editor clásico y una lista de sus IDs.
- Este código lista solo los posts publicados que no contienen bloques de Gutenberg.
- Excluye páginas, revisiones, posts vacíos, posts sin título y posts sin slug válido.
- Si necesitas incluir otros tipos de contenido (por ejemplo, páginas), cambia `post_type = 'post'` por `post_type IN ('post', 'page')`.
- Si quieres excluir otros tipos de contenido no deseado, agrega más condiciones a la consulta SQL.
Και αυτό είναι το αποτέλεσμα (*έχω προσθέσει στην αναθεώρηση ότι θα προσθέσω και το σύνολο).
Τώρα μπορείτε να επιλέξετε όσες ταυτότητες θέλετε και να τις μετατρέψετε σε παρτίδες όπως επιθυμείτε.
Δεδομένου ότι η LucusHost έχει εγκαταστήσει το WP-CLI, έχω ένα τερματικό cPanel έτοιμο να του δώσω το ραβδί.
Ανοίγει και συνδέεται στη διαδρομή root της εγκατάστασης του WP.
cd public_html/staging
Enter
Τέλος, γράφουμε μια εντολή με τα αναγνωριστικά των προς μετατροπή μηνυμάτων. Παράδειγμα:
wp convert-to-blocks start --only=3017,3100,3145,3281,3357,4121,4505,4564,4586,4623,4647,4665,4688,4706,4712,4727,4793,16019,50411,87386
Πατώντας ξανά enter, λαμβάνουμε τη διεύθυνση url, η οποία πρέπει να ανοίξει σε νέο παράθυρο για να ξεκινήσει η διαδικασία.
Μετατροπή... Τώρα πρέπει απλώς να περιμένουμε να τελειώσει και να δούμε τις τροποποιήσεις για να δούμε αν υπάρχει κάτι που πρέπει να γυαλίσουμε και να βελτιώσουμε.
Οφέλη SEO και απόδοσης Πολλοί είναι ακόμα πιστοί στον μινιμαλισμό του κλασικού επεξεργαστή , αλλά ο Gutenberg έχει βελτιωθεί πολύ από την κυκλοφορία του, αν και απελπιστικά αργά. Η χρήση του κάνει ήδη περισσότερο καλό παρά κακό.
Τα οφέλη του SEO: Μην περιμένετε ότι ο ιστότοπός σας θα ανέβει στην κορυφή των αποτελεσμάτων αναζήτησης από τη μια μέρα στην άλλη κάνοντας αυτή την αλλαγή, αλλά κάθε βελτίωση θα αποδίδει.
Καλύτερη δομή περιεχομένου: Το Gutenberg σας επιτρέπει να δημιουργείτε πιο δομημένο περιεχόμενο χρησιμοποιώντας μπλοκ (παράγραφοι, επικεφαλίδες, λίστες κ.λπ.). Θα βοηθήσει τις μηχανές αναζήτησης να κατανοήσουν καλύτερα την ιεραρχία και τη συνάφεια του περιεχομένου. Βελτιστοποίηση των τίτλων (H1, H2, H3 κ.λπ.): Είναι ευκολότερη η προσθήκη και η διαχείριση επικεφαλίδων, γεγονός που βελτιώνει την αναγνωσιμότητα και την οργάνωση του περιεχομένου. Περισσότερες βελτιστοποιημένες εικόνες: Το Gutenberg σάς επιτρέπει να προσθέτετε χαρακτηριστικά alt, τίτλους και περιγραφές απευθείας σε μπλοκ εικόνων. Χρήση ειδικών μπλοκ για SEO: Εάν χρησιμοποιείτε πρόσθετα όπως το Yoast SEO ή το Rank Math , παρέχουν συγκεκριμένα μπλοκ για τη βελτίωση του SEO (π.χ. μπλοκ FAQ ή Schema Markup). Περισσότερο διαδραστικό περιεχόμενο: Τα διαδραστικά μπλοκ (πίνακες, κουμπιά, ακορντεόν) βελτιώνουν την εμπειρία του χρήστη και μειώνουν το ποσοστό αναπήδησης. Οι μακροσκελείς καταχωρίσεις με πολλά στοιχεία που δημοσιεύονται με τον κλασικό επεξεργαστή τείνουν να έχουν υψηλή τιμή CLS και είναι επίσης πιο αργές, οπότε ευρετηριάζονται λιγότερο καλά ή χάνουν τη θέση τους. Πλεονεκτήματα απόδοσης: Ένας καθαρότερος και ελαφρύτερος κώδικας: Το Gutenberg παράγει καθαρότερη και πιο σημασιολογική HTML, η οποία μειώνει το μέγεθος της σελίδας και βελτιώνει τους χρόνους φόρτωσης. Υπολογισμένη φόρτωση πόρων: Ορισμένα μπλοκ (όπως οι εικόνες) επιτρέπουν από τη φύση τους τη χαλαρή φόρτωση. Λιγότερη εξάρτηση από τους σύντομους κωδικούς: Το Gutenberg επιτρέπει την αντικατάσταση πολλών σύντομων κωδικών από πιο αποδοτικά εγγενή μπλοκ. Βελτιστοποίηση ορατού περιεχομένου (παραπάνω): Διευκολύνει τη δημιουργία βελτιστοποιημένου περιεχομένου στο ορατό τμήμα της σελίδας χωρίς κύλιση. Χρειάζονται λιγότερες επεκτάσεις: Μειώστε τον φόρτο της επέκτασής σας ενσωματώνοντας λειτουργίες όπως στήλες, πίνακες ή κουμπιά. Πρόσθετα οφέλη:
Μια καλύτερη εμπειρία επεξεργασίας: Προσφέρει μια πιο σύγχρονη και διαισθητική εμπειρία επεξεργασίας. Συμβατότητα με σύγχρονα θέματα και επεκτάσεις: Πολλά θέματα και επεκτάσεις είναι ήδη βελτιστοποιημένα για το Gutenberg.
Το μέλλον του εκδότη.
Δεν είμαι τόσο σίγουρος γι' αυτό. Το Gutenberg είναι το (μοναδικό) μέλλον του WordPress, αν και δεν πιστεύω τόσο πολύ στο FSE (Full Site Editing), επειδή δεν είναι όλα τα πρότυπα FSE και πολλά από τα πιο δημοφιλή πρότυπα δεν έχουν κυκλοφορήσει εκδόσεις FSE. Επίσης, το προσωπικό εξακολουθεί να χρησιμοποιεί το Elementor ή το Bricks ως οικοδόμο ή το GenerateBlocks ή/και το Kadence, ως υποστηρικτικά μπλοκ.