Analytiikka ja testausSisältö Markkinointi

Sanamäärän seuraaminen WordPressissä ja GA4:ssä parempien sitoutumistietojen saamiseksi

Markkinoijat puhuvat paljon sitoutumisesta, mutta harvoin he yhdistävät sen yhteen sisällön suorituskyvyn perustavanlaatuisimmista tekijöistä: pituuteen. Sanamäärä vaikuttaa siihen, kuinka syvällisesti lukijat lukevat artikkelin, kuinka todennäköisesti he selaavat sitä, kuinka paljon aikaa he viettävät sivulla ja konvertoivatko he. Pitkä sisältö tukee usein hakutulosten näkyvyyttä ja auktoriteettia, kun taas lyhyemmät muodot voivat kannustaa nopeampaan kulutukseen ja laajempaan jakamiseen. Ilman johdonmukaisen ja tarkan sanamäärän tallentamista jokaiselle artikkelille näitä malleja on kuitenkin mahdotonta mitata, varsinkaan artikkelin sisällä. GA4.

WordPress itse näyttää sanamäärän lohkoeditorissa, mutta tämä arvo lasketaan tarvittaessa. Se katoaa heti, kun suljet editorin, eikä sitä koskaan tallenneta tietokantaan. Tämä tarkoittaa, että et voi suorittaa raportteja siitä, mitkä sisällön pituudet vaikuttavat sitoutumisaikaan, vierityssyvyyteen tai konversioihin. Ainoa tapa analysoida pituuden ja suorituskyvyn välistä suhdetta on laskea sanamäärä palvelinpuolella, tallentaa se postmetaan ja välittää se GA4:lle mukautettuna tapahtumaparametrina.

Seuraava lisäosa tekee juuri tämän. Se puhdistaa ja normalisoi jokaisen viestin sisällön tallennuksen yhteydessä, poistaa näkymättömät elementit, kuten HTML-kommentit ja lyhytkoodit, laskee tarkan lukijan näkemän sanamäärän, tallentaa sen postmetaan ja lähettää arvon GA4:ään yksittäisten viestien katselukerroilla. Kun se on määritetty GA4:ssä, voit vihdoin tutkia, miten pituus vaikuttaa käyttäjien sitoutumiseen koko sisältökirjastossasi.

Sanamäärän seurantalaajennus WordPressille (koko koodi)

<?php
/**
 * Plugin Name: WP Clean Word Count + GA4 Integration
 * Description: Stores a clean word count for posts on save and sends it to GA4 as an event parameter.
 * Version: 1.0.0
 * Author: Douglas Karr
 * Author URl: https://dknewmedia.com
 */

/**
 * Generate a cleaned, human-visible word count.
 */
function wpccwc_get_clean_word_count( $content ) {

    // Remove HTML comments
    $content = preg_replace( '/<!--(.|\s)*?-->/', ' ', $content );

    // Remove shortcodes
    $content = strip_shortcodes( $content );

    // Remove all HTML tags (anchor tags included)
    $content = wp_strip_all_tags( $content );

    // Normalize whitespace
    $content = trim( preg_replace( '/\s+/', ' ', $content ) );

    if ( empty( $content ) ) {
        return 0;
    }

    // Count visible words
    return str_word_count( $content );
}

/**
 * Store the cleaned word count whenever a post is saved or updated.
 */
add_action( 'save_post', 'wpccwc_store_word_count', 20, 3 );
function wpccwc_store_word_count( $post_id, $post, $update ) {

    // Prevent autosave or revisions
    if ( wp_is_post_autosave( $post_id ) || wp_is_post_revision( $post_id ) ) {
        return;
    }

    if ( $post->post_type !== 'post' ) {
        return;
    }

    $word_count = wpccwc_get_clean_word_count( $post->post_content );
    update_post_meta( $post_id, '_clean_word_count', $word_count );
}

/**
 * Send the stored word count to GA4 on single post views.
 */
add_action( 'wp_footer', 'wpccwc_send_wordcount_to_ga4' );
function wpccwc_send_wordcount_to_ga4() {

    if ( ! is_singular( 'post' ) ) {
        return;
    }

    global $post;
    $word_count = get_post_meta( $post->ID, '_clean_word_count', true );
    $word_count = $word_count ? intval( $word_count ) : 0;

    ?>
    <script>
        window.dataLayer = window.dataLayer || [];
        function gtag(){ dataLayer.push(arguments); }

        gtag('event', 'post_view', {
            post_id: '<?php echo intval( $post->ID ); ?>',
            post_title: '<?php echo esc_js( get_the_title( $post ) ); ?>',
            word_count: <?php echo $word_count; ?>
        });
    </script>
    <?php
}

Kuinka sanamäärälaajennus toimii

Lisäosalla on kolme vastuuta: sisällön puhdistaminen, sanamäärän tallentaminen ja sen lähettäminen GA4:lle.

Sanojen puhdistaminen ja laskeminen

WordPress-sisältö sisältää usein lyhytkoodeja, HTML-rakenteita, kommentteja ja muotoiluja, joita tavalliset lukijat eivät koskaan näe. Näiden elementtien laskeminen paisuttaisi artikkelin todellista pituutta ja vääristäisi sitoutumismittareita. Lisäosa ratkaisee tämän poistamalla näkymättömät elementit ennen sanojen laskemista. Se poistaa HTML-kommentit, poistaa kaikki lyhytkoodit, eliminoi ankkuritunnisteet ja muun HTML:n, normalisoi välilyönnit ja palauttaa vain lukijalle näkyvät sanat. Tämä tuottaa vakiintuneen, laajalti hyväksytyn sanamäärän määritelmän, jota käytetään kirjoittamisessa ja SEO-työkaluissa.

Sanamäärän tallentaminen

Siivousfunktio suoritetaan aina, kun viesti tallennetaan tai päivitetään. WordPress ei tallenna sanamääriä natiivisti, joten lisäosa lisää _clean_word_count postmeta-merkinnän. Tämä varmistaa, että arvoa voidaan käyttää uudelleen ilman uudelleenlaskentaa ja että se on käytettävissä raportointiin, kyselyihin tai mallipohjien sisällä käytettäväksi.

Sanamäärän lähettäminen GA4:ään

Yksittäisten viestien näkymissä laajennus hakee tallennetun sanamäärän ja näyttää GA4-tapahtuman alatunnisteessa. Tapahtuman nimi on post_view, ja se sisältää kolme parametria: viestin tunnuksen, viestin otsikon ja puhdistetun sanamäärän. GA4 voi sitten ottaa nämä metatiedot huomioon sitoutumisajan, vierityssyvyyden, konversioiden ja muiden käyttäjätoimintojen ohella.

Google Analyticsin määrittäminen sanamäärän tallentamiseen

Kun lisäosa on aktiivinen ja viestisi on tallennettu, jolloin jokaisella on tallennettu määrä, voit määrittää GA4:n tunnistamaan parametrin ja raportoimaan siitä.

  1. Tarkista tapahtuma DebugView'ssaAvaa sivustosi, siirry mihin tahansa yksittäiseen viestiin ja tarkista GA4:n DebugView. Sinun pitäisi nähdä post_view-tapahtuma, jossa on mukana word_count. Tämä vahvistaa, että parametri syötetään oikein.
  2. Luo mukautettu ulottuvuusGA4 edellyttää rekisteröityä mukautettua ulottuvuutta, jotta tapahtumaparametrit näkyvät raporteissa.
    • avoin Ylläpitäjä > Mukautetut määritelmät.
    • Valita Luo oma ulottuvuus.
    • Nimeä se Sanamäärä.
    • Asettaa Laajuus että tapahtuma.
    • Syötä parametrin nimi täsmälleen muodossa word_count.
  3. Tallenna määritelmä.

GA4 alkaa täyttää tätä ulottuvuutta raporteissasi noin päivän kuluessa.

Luo raportteja ja vertailuja

Kun ulottuvuus on aktiivinen, voit alkaa mitata, miten pituus vaikuttaa suorituskykyyn. Voit ryhmitellä julkaisuja sanamäärän mukaan, verrata pitkiä ja lyhyitä osia tai tutkia pituuden ja sitoutumisajan välisiä korrelaatioita. Voit myös yhdistää ulottuvuuden vierityssyvyystapahtumiin tai konversiotietoihin ymmärtääksesi, johtaako pidempi sisältö merkityksellisempiin toimiin.

MySQL-kysely sanamäärää varten

Tämän viestin vanhempi versio tarjosi MySQL kyselyn saadaksesi sanamääräsi postitse. Jos haluat saada nopean kyselyn WordPress-julkaisuistasi ja niiden sanamäärästä, voit myös suorittaa kyselyn käyttämällä PHPMyAdminia tai suosikkikyselymoottoriasi.

SELECT 
    ID,
    post_title,
    (
        LENGTH(
            TRIM(
                REGEXP_REPLACE(
                    REGEXP_REPLACE(
                        REGEXP_REPLACE(post_content, '<!--(.|\n)*?-->', ' '), 
                    '<[^>]+>', ' '),
                '[[:space:]]+', ' ')
            )
        )
        - LENGTH(
            REPLACE(
                TRIM(
                    REGEXP_REPLACE(
                        REGEXP_REPLACE(
                            REGEXP_REPLACE(post_content, '<!--(.|\n)*?-->', ' '), 
                        '<[^>]+>', ' '),
                    '[[:space:]]+', ' ')
                ), 
            ' ', '')
        )
        + 1
    ) AS word_count
FROM wp_posts
WHERE post_type = 'post'
  AND post_status = 'publish';

Aiheeseen liittyvät artikkelit

Takaisin alkuun -painiketta
lähellä

Adblock havaittu

Luotamme mainoksiin ja sponsorointiin pysyäksemme Martech Zone ilmainen. Harkitse mainostenestolaitteen poistamista käytöstä – tai tue meitä edullisella, mainoksettomalla vuosijäsenyydellä (10 dollaria Yhdysvalloissa):

Rekisteröidy vuosittaiseen jäsenyyteen