sadržaj Marketing

Izrada izvoda u PHP-u ili WordPress-u: tehnike brojanja riječi, rečenica i pasusa

Kreiranje odlomaka u PHP je uobičajen zadatak u upravljanju sadržajem i razvoju web stranica. Odlomak je skraćena verzija dužeg dijela sadržaja, koji se često koristi za pružanje pregleda ili sažetka. PHP programeri će možda morati da kreiraju izvode na osnovu broja reči, rečenica ili pasusa. Ovaj članak istražuje metode za postizanje ovog cilja, zajedno s najboljim praksama i rješavanjem slučajeva u kojima broj prelazi dužinu sadržaja.

Izvod prema broju riječi

Kreiranje izvoda po broju riječi uključuje skraćivanje sadržaja nakon određenog broja riječi.

function excerptByWordCount($content, $wordCount) {
    $words = explode(' ', $content);
    if (count($words) > $wordCount) {
        $words = array_slice($words, 0, $wordCount);
        $content = implode(' ', $words);
    }
    return $content;
}

Upotreba:

// Excerpt of first 50 words
$wordCountExcerpt = excerptByWordCount($originalContent, 50); 

Najbolje prakse i rješavanje prekoračenja:

  • Provjerite broj riječi: Prije skraćivanja provjerite da li broj riječi originalnog sadržaja premašuje željenu dužinu isječka. Ako nije, vratite originalni sadržaj.
  • Izbjegavajte lomljenje riječi: Uvjerite se da je posljednja riječ u izvodu potpuna kako biste zadržali čitljivost.
  • Dodajte elipsu: Po želji, dodajte trotočku (...) na kraju ako je sadržaj skraćen.

Odlomak po broju kazni

Kreiranje odlomaka po broju rečenica uključuje zadržavanje određenog broja rečenica iz sadržaja.

function excerptBySentenceCount($content, $sentenceCount) {
    $sentences = explode('.', $content);
    if (count($sentences) > $sentenceCount) {
        $sentences = array_slice($sentences, 0, $sentenceCount);
        $content = implode('. ', $sentences) . '.';
    }
    return $content;
}

upotreba

// Excerpt of first 3 sentences
$sentenceCountExcerpt = excerptBySentenceCount($originalContent, 3); 

Za ažuriranje excerptBySentenceCount funkciju da uključuje rečenice sa bilo kojom interpunkcijom na kraju (ne samo tačke), možete modifikovati funkciju da podeli sadržaj regularnim izrazom koji odgovara bilo kojoj tipičnoj interpunkciji na kraju rečenice, kao što je tačka, uzvičnik ili upitnik. Evo kako to možete učiniti u PHP-u:

function excerptBySentenceCount($content, $sentenceCount) {
    // Use a regular expression to split the content by sentence-ending punctuation
    $sentences = preg_split('/(?<=[.!?])\s+/', $content, -1, PREG_SPLIT_NO_EMPTY);

    if (count($sentences) > $sentenceCount) {
        $sentences = array_slice($sentences, 0, $sentenceCount);
        $content = implode(' ', $sentences);
        // Check the last character to ensure it ends with punctuation
        if (!preg_match('/[.!?]$/', $content)) {
            $content .= '.';
        }
    }
    return $content;
}

Ova funkcija koristi preg_split sa regularnim izrazom (regularni izraz) /(?<=[.!?])\s+/ koji dijeli tekst na razmake (\s+) koji prate tačku, uzvičnik ili upitnik ([.!?]). The (?<=...) je pozitivna tvrdnja look-behind koja provjerava prisutnost interpunkcije na kraju rečenice bez uključivanja u podjelu. The PREG_SPLIT_NO_EMPTY flag osigurava da se vrate samo neprazni komadi.

Konačno, funkcija provjerava da li je posljednji znak rezultirajućeg sadržaja interpunkcija koja završava rečenicu. Ako nije, dodaje tačku za održavanje pravilne interpunkcije na kraju odlomka.

Najbolje prakse i rješavanje prekoračenja:

  • Pravilno otkrivanje rečenice: Koristite tačku nakon koje slijedi razmak da podijelite rečenice. Ovo izbjegava podjelu na tačke koje se koriste u skraćenicama.
  • Provjerite broj rečenica: Slično kao kod broja riječi, provjerite da li je broj rečenica originalnog sadržaja dovoljan.
  • Održavajte interpunkciju: Osigurajte da se izvod završava pravilnom interpunkcijom, obično tačkom.

Izvod po paragrafu Count

Kreiranje odlomaka prema broju pasusa uključuje skraćivanje sadržaja nakon određenog broja pasusa.

function excerptByParagraphCount($content, $paragraphCount) {
    $paragraphs = explode("\n", $content);
    if (count($paragraphs) > $paragraphCount) {
        $paragraphs = array_slice($paragraphs, 0, $paragraphCount);
        $content = implode("\n", $paragraphs);
    }
    return $content;
}

Upotreba:

// Excerpt of first 2 paragraphs
$paragraphCountExcerpt = excerptByParagraphCount($originalContent, 2); 

Najbolje prakse i rješavanje prekoračenja:

  • Koristite nove redove za pasuse: Paragrafi su obično odvojeni novim redovima (\n). Uvjerite se da vaš sadržaj slijedi ovaj format.
  • Provjerite broj pasusa: Potvrdite da li je broj pasusa sadržaja adekvatan za izvod.
  • Poštujte strukturu sadržaja: Zadržite strukturu pasusa u izvodu kako biste sačuvali integritet sadržaja.

Izvod prema broju HTML paragrafa

Kada se bavite HTML sadržajem, htjet ćete izdvojiti izvode na osnovu <p> oznake za održavanje strukture i formatiranja originalnog sadržaja.

function excerptByHtmlParagraphCount($content, $paragraphCount) {
    preg_match_all('/<p[^>]*>.*?<\/p>/', $content, $paragraphs);
    $paragraphs = $paragraphs[0];

    if (count($paragraphs) > $paragraphCount) {
        $paragraphs = array_slice($paragraphs, 0, $paragraphCount);
        $content = implode(' ', $paragraphs);
    }
    return $content;
}

Upotreba:

// Excerpt of first 2 paragraphs
$paragraphCountExcerpt = excerptByHtmlParagraphCount($htmlContent, 2); 

Najbolje prakse i rješavanje prekoračenja:

  • Regularni izrazi za podudaranje oznaka: upotreba preg_match_all sa regularnim izrazom za podudaranje <p> oznake. Ovaj pristup osigurava očuvanje strukture i atributa oznaka pasusa.
  • Poštujte HTML strukturu:
    Osigurajte da izvod održava HTML strukturu. Izbjegavajte razbijanje oznaka, što može dovesti do problema s prikazivanjem.
  • Provjerite broj pasusa: Kao i kod običnog teksta, provjerite da li je broj pasusa originalnog sadržaja dovoljan za izvod.
  • Rukovati ugniježđenim oznakama: Zapamtite da paragrafi mogu sadržavati druge HTML elemente kao što su veze ili rasponi. Osigurajte svoje račune regularnog izraza za ugniježđene oznake unutar paragrafa.

Kreiranje izvoda na osnovu broja pasusa u HTML-u u PHP-u je napredniji zadatak u poređenju sa rukovanjem čistim tekstom. Neophodno je pažljivo koristiti regularne izraze kako biste održali integritet HTML strukture. Ova metoda je posebno relevantna za web aplikacije gdje sadržaj treba biti prikazan u originalnom formatu. Kao i uvijek, provjerite dužinu originalnog sadržaja i uzmite u obzir korisničko iskustvo prilikom predstavljanja izvoda.

Da, WordPress ima svoj skup funkcija i funkcija koje olakšavaju kreiranje izvoda, što može uvelike pojednostaviti proces u poređenju sa ručnim rukovanjem izvadcima u PHP-u. Evo pregleda ključnih funkcija WordPress-a u vezi s odlomcima:

Funkcija izvoda u WordPressu

WordPress API nudi robustan sistem za rukovanje izvodima, čineći ručnu implementaciju PHP funkcija nepotrebnom za većinu tipičnih slučajeva upotrebe. WordPress pruža jednostavan način za upravljanje sažecima postova, bilo da se radi o prilagođavanju dužine, mijenjanju čitaj više teksta ili pomoću oznaka šablona za prikaz izvoda.

the_excerpt()

Ova oznaka WordPress šablona automatski ispisuje izvod za objavu. Obično se koristi u temama za prikaz sažetka posta na stranicama arhive.

  • Upotreba: mjesto the_excerpt() unutar The Loop u vašim datotekama teme gdje želite da se pojavi izvod.
  • Ponašanje: Podrazumevano, prikazuje prvih 55 riječi posta. Ako postoji ručno postavljeni izvod u uređivaču postova, on će ga umjesto toga prikazati.

get_the_excerpt()

Ova funkcija preuzima izvod bez njegovog prikaza, dajući vam veću kontrolu nad načinom i gdje ga koristiti.

  • Upotreba: get_the_excerpt($post) može se koristiti za preuzimanje izvoda određenog posta.
  • Prilagodba: Možete manipulirati vraćenim nizom po potrebi prije nego što ga prikažete.

Prilagođavanje dužine izvoda

WordPress vam omogućava da promijenite zadanu dužinu izvoda putem excerpt_length filter.

function custom_excerpt_length($length) {
    return 20; // Return 20 words as the new excerpt length
}
add_filter('excerpt_length', 'custom_excerpt_length');

Upravljanje više oznaka i izvoda više teksta

the_content('Read more')

Ova funkcija prikazuje sadržaj sve dok ne naiđe na oznaku „više“. Korisno je za prikazivanje izvoda prilagođene dužine direktno unutar uređivača sadržaja.

Prilagođavanje izvoda Više teksta

Možete prilagoditi tekst koji se pojavljuje na kraju odlomka (npr […]) korištenjem excerpt_more filter.

function custom_excerpt_more($more) {
    return '...'; // Replace the default [...] with ...
}
add_filter('excerpt_more', 'custom_excerpt_more');

Rukovanje HTML-om u odlomcima

WordPress isječci su po defaultu običan tekst. Ako trebate da sačuvate HTML oznake u odlomcima, morate kreirati prilagođenu funkciju ili koristiti dodatak dizajniran za ovu svrhu.

Međutim, prilagođeno kodiranje ili dodaci mogu biti potrebni za napredne zahtjeve kao što je očuvanje HTML oznaka u odlomcima ili kreiranje izvoda na osnovu specifičnih elemenata poput rečenica ili pasusa.

Douglas Karr

Douglas Karr je CMO of OpenINSIGHTS i osnivač Martech Zone. Douglas je pomogao desetinama uspješnih MarTech startupova, pomogao je u dubinskom pregledu od preko 5 milijardi dolara u Martechovim akvizicijama i investicijama, te nastavlja da pomaže kompanijama u implementaciji i automatizaciji njihovih prodajnih i marketinških strategija. Douglas je međunarodno priznati stručnjak za digitalnu transformaciju i MarTech stručnjak i govornik. Douglas je također objavljeni autor Dummie's vodiča i knjige o poslovnom liderstvu.

Vezani članci

Nazad na vrh dugmeta
blizu

Adblock otkriven

Martech Zone je u mogućnosti da vam pruži ovaj sadržaj bez ikakvih troškova jer mi unovčavamo našu stranicu putem prihoda od oglasa, partnerskih veza i sponzorstava. Bili bismo zahvalni ako biste uklonili svoj blokator oglasa dok gledate našu web stranicu.