Kontenta Merkatumado

Kreado de Eltiraĵoj en PHP aŭ WordPress: Teknikoj pri Vorto, Frazo kaj Paragrafa Nombrado

Krei eltiraĵojn en PHP estas ofta tasko en enhavadministrado kaj reteja disvolviĝo. Eltiraĵo estas mallongigita versio de pli longa peco de enhavo, ofte uzata por provizi antaŭrigardon aŭ resumon. PHP-programistoj eble bezonos krei eltiraĵojn bazitajn sur nombroj de vortoj, frazoj aŭ alineoj. Ĉi tiu artikolo esploras metodojn por atingi tion, kune kun plej bonaj praktikoj kaj pritraktado de kazoj kie la nombro superas la longon de la enhavo.

Eltiraĵo laŭ Vortkalkulo

Krei eltiraĵon laŭ vortkalkulo implikas stumpigi la enhavon post certa nombro da vortoj.

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

uzado:

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

Plej Bonaj Praktikoj kaj Pritraktado de Trokalkuloj:

  • Kontrolu Vortkalkulon: Antaŭ ol stumpigi, kontrolu ĉu la vortnombro de la originala enhavo superas la deziratan eltiraĵlongon. Se ne, redonu la originalan enhavon.
  • Evitu Rompi Vortojn: Certigu, ke la lasta vorto en la eltiraĵo estas kompleta por konservi legeblecon.
  • Aldonu elipson: Laŭvole, aldonu elipson (...) ĉe la fino se la enhavo estas stumpigita.

Eltiraĵo laŭ Frazkalkulo

Krei eltiraĵojn laŭ fraznombro implikas konservi certan nombron da frazoj el la enhavo.

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

uzado

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

Por ĝisdatigi la excerptBySentenceCount funkcio inkluzivi frazojn kun iu ajn interpunkcio ĉe la fino (ne nur punktoj), vi povas modifi la funkcion por dividi la enhavon per regula esprimo kiu kongruas kun iu ajn tipa frazfina interpunkcio, kiel punkto, krisigno aŭ demandosigno. Jen kiel vi povas fari tion en PHP:

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;
}

Ĉi tiu funkcio uzas preg_split kun regula esprimo (regex) /(?<=[.!?])\s+/ kiu dividas la tekston je spacetoj (\s+) kiuj sekvas punkton, krisignon aŭ demandosignon ([.!?]). la (?<=...) estas pozitiva retrospektiva aserto kiu kontrolas la ĉeeston de frazfina interpunkcio sen inkluzivi ĝin en la disigo. La PREG_SPLIT_NO_EMPTY flago certigas, ke nur nemalplenaj pecoj estas redonitaj.

Fine, la funkcio kontrolas ĉu la lasta signo de la rezulta enhavo estas frazfina interpunkcio. Se ne, ĝi aldonas punkton por konservi ĝustan interpunkcion ĉe la fino de la eltiraĵo.

Plej Bonaj Praktikoj kaj Pritraktado de Trokalkuloj:

  • Ĝusta Frazdetekto: Uzu punkton sekvatan de spaceto por dividi frazojn. Tio evitas disigon en punktojn uzatajn en mallongigoj.
  • Kontrolu Fraznombron: Simile al vortkalkulo, kontrolu ĉu la frazkalkulo de la originala enhavo sufiĉas.
  • Konservu Interpunkcion: Certigu, ke la eltiraĵo finiĝas per ĝusta interpunkcio, tipe punkto.

Eltiraĵo laŭ Paragrafkalkulo

Krei eltiraĵojn laŭ alineo-kalkulo implikas stumpigi la enhavon post certa nombro da alineoj.

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

uzado:

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

Plej Bonaj Praktikoj kaj Pritraktado de Trokalkuloj:

  • Uzu novajn liniojn por alineoj: Paragrafoj estas tipe apartigitaj per novaj linioj (\n). Certigu, ke via enhavo sekvas ĉi tiun formaton.
  • Kontrolu Paragrafan Nombron: Validigu ĉu la nombro de alineoj de la enhavo estas adekvata por la eltiraĵo.
  • Respektu la strukturon de la enhavo: Konservu la strukturon de la paragrafoj en la eltiraĵo por konservi la integrecon de la enhavo.

Eltiraĵo laŭ HTML-paragrafkalkulo

Kiam vi traktas HTML-enhavon, vi volos ĉerpi eltiraĵojn bazitajn sur la <p> etikedojn por konservi la strukturon kaj formatadon de la originala enhavo.

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;
}

uzado:

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

Plej Bonaj Praktikoj kaj Pritraktado de Trokalkuloj:

  • Regulaj Esprimoj por Etiked-Kongruigo: uzo preg_match_all kun regula esprimo por kongrui <p> etikedoj. Ĉi tiu aliro certigas, ke la strukturo kaj atributoj de la alineaj etikedoj estas konservitaj.
  • Respektu HTML-strukturon: Certigu, ke la eltiraĵo konservas la HTML-strukturon. Evitu rompi etikedojn, kio povas kaŭzi problemojn pri bildigo.
  • Kontrolu Paragrafan Nombron: Kiel ĉe simpla teksto, kontrolu ĉu la nombro de alineoj de la originala enhavo sufiĉas por la eltiraĵo.
  • Pritrakti Nestitajn Etikedojn: Memoru, ke paragrafoj povas enhavi aliajn HTML-elementojn kiel ligilojn aŭ interspacojn. Certigu, ke via regula esprimo konsideras nestitajn etikedojn ene de paragrafoj.

Krei eltiraĵojn bazitajn sur HTML-paragrafkalkulo en PHP estas pli progresinta tasko kompare kun pritraktado de simpla teksto. Estas esence uzi regulajn esprimojn zorge por konservi la integrecon de la HTML-strukturo. Ĉi tiu metodo estas aparte grava por TTT-aplikaĵoj, kie la enhavo devas esti montrata kun sia originala formatado. Kiel ĉiam, validigu la longon de la originala enhavo kaj konsideru la uzanto-sperton dum prezentado de eltiraĵoj.

Jes, WordPress havas sian propran aron da funkcioj kaj trajtoj, kiuj faciligas la kreadon de eltiraĵoj, kio povas multe simpligi la procezon kompare kun mana pritraktado de eltiraĵoj en PHP. Jen superrigardo de la ŝlosilaj WordPress-funkcioj rilataj al eltiraĵoj:

La funkcio Extract en WordPress

La WordPress API proponas fortikan sistemon por pritrakti eltiraĵojn, farante la manan efektivigon de PHP-funkcioj nenecesa por plej tipaj uzkazoj. WordPress provizas uzanto-amikan manieron por administri afiŝresumojn, ĉu temas pri agordi la longon, ŝanĝi la Legu pli teksto, aŭ uzante ŝablonajn etikedojn por montri eltiraĵojn.

the_excerpt()

Ĉi tiu WordPress-ŝablona etikedo aŭtomate presas eltiraĵon por afiŝo. Ĝi estas ofte uzata en temoj por montri afiŝresumon sur arkivpaĝoj.

  • uzado: loko the_excerpt() ene de La Buklo en viaj temdosieroj kie vi volas, ke la eltiraĵo aperu.
  • Konduto: Defaŭlte, ĝi montras la unuajn 55 vortojn de la afiŝo. Se estas mane agordita eltiraĵo en la afiŝredaktilo, ĝi montros tion anstataŭe.

get_the_excerpt()

Ĉi tiu funkcio prenas la eltiraĵon sen montri ĝin, donante al vi pli da kontrolo pri kiel kaj kie uzi ĝin.

  • uzado: get_the_excerpt($post) povas esti uzata por preni eltiraĵon de specifa afiŝo.
  • Personigo: Vi povas manipuli la resenditan ĉenon laŭbezone antaŭ ol montri ĝin.

Agordigo de Eltiraĵa Longo

WordPress permesas al vi ŝanĝi la defaŭltan eltiraĵlongon per la excerpt_length filtrilo

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

Administri Pliajn Etikedojn kaj Eltiri Pliajn Tekstojn

the_content('Read more')

Ĉi tiu funkcio montras la enhavon ĝis ĝi renkontas etikedon "pli". Ĝi utilas por montri eltiraĵon kun propra longo rekte en la enhavredaktilo.

Agordi Eltiraĵon Pli da Teksto

Vi povas adapti la tekston, kiu aperas ĉe la fino de eltiraĵo (kiel […]) per uzado de la excerpt_more filtrilo

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

Pritraktado de HTML en Eltiraĵoj

WordPress-eltiraĵoj estas defaŭlte simpla teksto. Se vi bezonas konservi HTML-etikedojn en eltiraĵoj, vi devas krei propran funkcion aŭ uzi kromprogramon desegnitan por ĉi tiu celo.

Tamen, kutima kodado aŭ kromaĵoj povus esti necesaj por altnivelaj postuloj kiel konservado de HTML-etikedoj en eltiraĵoj aŭ kreado de eltiraĵoj bazitaj sur specifaj elementoj kiel frazoj aŭ paragrafoj.

Douglas Karr

Douglas Karr estas frakcia Ĉefa Merkatiga Oficisto specialiĝanta pri SaaS kaj AI-kompanioj, kie li helpas skaligi merkatigajn operaciojn, stimuli mendogeneradon kaj efektivigi AI-funkciigitajn strategiojn. Li estas la fondinto kaj eldonisto de Martech Zone, ĉefa publikaĵo en… Pli »
Reen al la supra butono
Fermi

Adbloko Detektita

Ni dependas de reklamoj kaj sponsoradoj por konservi Martech Zone senpaga. Bonvolu konsideri malŝalti vian reklamo-blokilon — aŭ subtenu nin per pagebla, senreklama jara membreco (10 usonaj dolaroj):

Registriĝu por Jara Membreco