Content Marketing

Izvilkumu izveide PHP vai WordPress: vārdu, teikumu un rindkopu skaitīšanas metodes

Izvilkumu izveide iekšā PHP ir izplatīts uzdevums satura pārvaldībā un vietņu izstrādē. Izvilkums ir garāka satura saīsināta versija, ko bieži izmanto, lai nodrošinātu priekšskatījumu vai kopsavilkumu. PHP izstrādātājiem, iespējams, būs jāizveido fragmenti, pamatojoties uz vārdu, teikumu vai rindkopu skaitu. Šajā rakstā ir aplūkotas metodes, kā to panākt, kā arī paraugprakse un to gadījumu apstrāde, kad skaita skaits pārsniedz satura garumu.

Fragments no vārdu skaita

Izvilkuma izveide pēc vārdu skaita ietver satura saīsināšanu pēc noteikta vārdu skaita.

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

Lietošana:

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

Paraugprakse un pārskaitījumu apstrāde:

  • Pārbaudiet vārdu skaitu: Pirms saīsināšanas pārbaudiet, vai sākotnējā satura vārdu skaits pārsniedz vēlamo fragmenta garumu. Ja nē, atgrieziet sākotnējo saturu.
  • Izvairieties lauzt vārdus: Pārliecinieties, vai pēdējais vārds fragmentā ir pilnīgs, lai saglabātu lasāmību.
  • Pievienojiet elipsi: Pēc izvēles pievienojiet elipsi (...) beigās, ja saturs ir saīsināts.

Fragments pēc teikumu skaita

Lai izveidotu fragmentus pēc teikumu skaita, saturā ir jāpatur noteikts teikumu skaits.

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

Lietošana

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

Lai atjauninātu excerptBySentenceCount funkciju, lai iekļautu teikumus ar jebkādām pieturzīmēm beigās (ne tikai punktus), varat modificēt funkciju, lai sadalītu saturu ar regulāru izteiksmi, kas atbilst jebkurai tipiskai teikuma beigu pieturzīmei, piemēram, punktam, izsaukuma zīmei vai jautājuma zīmei. Lūk, kā to var izdarīt 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;
}

Šī funkcija izmanto preg_split ar regulāru izteiksmi (regex) /(?<=[.!?])\s+/ kas sadala tekstu pa atstarpēm (\s+), kas seko punktam, izsaukuma zīmei vai jautājuma zīmei ([.!?]). (?<=...) ir pozitīvs skatījums uz apgalvojumu, kas pārbauda teikuma beigu pieturzīmju esamību, neiekļaujot to sadalē. The PREG_SPLIT_NO_EMPTY karogs nodrošina, ka tiek atgriezti tikai netukši gabali.

Visbeidzot, funkcija pārbauda, ​​vai iegūtā satura pēdējā rakstzīme ir teikuma beigu pieturzīme. Ja nē, izraksta beigās tiek pievienots punkts, lai saglabātu pareizu pieturzīmju lietošanu.

Paraugprakse un pārskaitījumu apstrāde:

  • Pareiza teikuma noteikšana: Lai sadalītu teikumus, izmantojiet punktu, kam seko atstarpe. Tas ļauj izvairīties no sadalīšanas saīsinājumos izmantotajos periodos.
  • Pārbaudiet teikumu skaitu: Līdzīgi kā vārdu skaits, pārbaudiet, vai sākotnējā satura teikumu skaits ir pietiekams.
  • Saglabāt pieturzīmes: Pārliecinieties, ka fragments beidzas ar pareizām pieturzīmēm, parasti ar punktu.

Izvilkums pēc rindkopu skaita

Lai izveidotu fragmentus pēc rindkopu skaita, saturs ir jāsaīsina pēc noteikta rindkopu skaita.

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

Lietošana:

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

Paraugprakse un pārskaitījumu apstrāde:

  • Rindkopām izmantojiet jaunas rindiņas: Rindkopas parasti tiek atdalītas ar jaunām rindām (\n). Pārliecinieties, vai jūsu saturs atbilst šim formātam.
  • Pārbaudiet rindkopu skaitu: Pārbaudiet, vai satura rindkopu skaits ir pietiekams fragmentam.
  • Ievērojiet satura struktūru: Saglabājiet fragmenta rindkopu struktūru, lai saglabātu satura integritāti.

Fragments pēc HTML rindkopu skaita

Strādājot ar HTML saturu, vēlēsities izvilkt fragmentus, pamatojoties uz <p> tagus, lai saglabātu sākotnējā satura struktūru un formatējumu.

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

Lietošana:

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

Paraugprakse un pārskaitījumu apstrāde:

  • Regulāras izteiksmes tagu atbilstības noteikšanai: lietošana preg_match_all ar regulāru izteiksmi <p> tagus. Šī pieeja nodrošina, ka tiek saglabāta rindkopas tagu struktūra un atribūti.
  • Ievērojiet HTML struktūru:
    Pārliecinieties, vai fragments saglabā HTML struktūru. Izvairieties no tagu sadalīšanas, jo tas var izraisīt renderēšanas problēmas.
  • Pārbaudiet rindkopu skaitu: Tāpat kā ar vienkāršu tekstu, pārbaudiet, vai sākotnējā satura rindkopu skaits ir pietiekams fragmentam.
  • Apstrādājiet ligzdotos tagus: Atcerieties, ka rindkopās var būt citi HTML elementi, piemēram, saites vai laidumi. Nodrošiniet, lai jūsu regulārajā izteiksmē nebūtu ligzdotu tagu rindkopās.

Izvilkumu izveide, pamatojoties uz HTML rindkopu skaitu PHP, ir sarežģītāks uzdevums, salīdzinot ar vienkārša teksta apstrādi. Ir svarīgi rūpīgi lietot regulārās izteiksmes, lai saglabātu HTML struktūras integritāti. Šī metode ir īpaši piemērota tīmekļa lietojumprogrammām, kurās saturs ir jāparāda tā sākotnējā formātā. Kā vienmēr, apstipriniet oriģinālā satura garumu un, sniedzot fragmentus, ņemiet vērā lietotāja pieredzi.

Jā, WordPress ir savs funkciju un līdzekļu kopums, kas atvieglo fragmentu izveidi, kas var ievērojami vienkāršot procesu, salīdzinot ar manuālu izvilkumu apstrādi PHP. Šeit ir pārskats par galvenajām WordPress funkcijām, kas saistītas ar fragmentiem:

Izvilkuma funkcija pakalpojumā WordPress

WordPress API piedāvā stabilu sistēmu fragmentu apstrādei, padarot PHP funkciju manuālu ieviešanu nevajadzīgu tipiskākajos lietošanas gadījumos. WordPress nodrošina lietotājam draudzīgu veidu, kā pārvaldīt ziņu kopsavilkumus neatkarīgi no tā, vai tiek pielāgots garums vai mainīts lasīt vairāk tekstu vai izmantojot veidņu tagus, lai parādītu fragmentus.

the_excerpt()

Šis WordPress veidnes tags automātiski izdrukā ziņas fragmentu. To parasti izmanto motīvos, lai arhīva lapās parādītu ziņas kopsavilkumu.

  • Lietošana: Vieta the_excerpt() sadaļā The Loop motīva failos, kur vēlaties parādīt fragmentu.
  • Behavior: Pēc noklusējuma tas parāda pirmos 55 ziņas vārdus. Ja ziņu redaktorā ir manuāli iestatīts fragments, tas tiks parādīts.

get_the_excerpt()

Šī funkcija izgūst fragmentu, to nerādot, sniedzot jums lielāku kontroli pār to, kā un kur to izmantot.

  • Lietošana: get_the_excerpt($post) var izmantot, lai iegūtu konkrētas ziņas fragmentu.
  • Pielāgošana: Varat pēc vajadzības manipulēt ar atgriezto virkni pirms tās parādīšanas.

Izvilkuma garuma pielāgošana

WordPress ļauj mainīt noklusējuma fragmenta garumu, izmantojot excerpt_length filtru

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

Vairāk atzīmju un vairāk teksta fragmentu pārvaldība

the_content('Read more')

Šī funkcija parāda saturu, līdz tiek parādīts tags “vairāk”. Tas ir noderīgi, lai rādītu pielāgota garuma fragmentu tieši satura redaktorā.

Pielāgot fragmentu vairāk teksta

Varat pielāgot tekstu, kas parādās fragmenta beigās (piemēram, […]), izmantojot excerpt_more filtru

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

HTML apstrāde fragmentos

WordPress fragmenti pēc noklusējuma ir vienkāršs teksts. Ja jums ir jāsaglabā HTML tagi fragmentos, jums ir jāizveido pielāgota funkcija vai jāizmanto šim nolūkam paredzēts spraudnis.

Tomēr pielāgota kodēšana vai spraudņi var būt nepieciešami papildu prasībām, piemēram, HTML tagu saglabāšanai fragmentos vai fragmentu izveidei, pamatojoties uz konkrētiem elementiem, piemēram, teikumiem vai rindkopām.

Douglas Karr

Douglas Karr ir TKO no OpenINSIGHTS un dibinātājs Martech Zone. Duglass ir palīdzējis desmitiem veiksmīgu MarTech jaunuzņēmumu, ir palīdzējis veikt vairāk nekā 5 miljardu dolāru Martech iegādes un ieguldījumu uzticamības pārbaudi, kā arī turpina palīdzēt uzņēmumiem ieviest un automatizēt to pārdošanas un mārketinga stratēģijas. Douglas ir starptautiski atzīts digitālās transformācijas un MarTech eksperts un runātājs. Duglass ir arī publicēts Dummie rokasgrāmatas un biznesa vadības grāmatas autors.

Saistītie raksti

Atpakaļ uz augšu pogu
aizvērt

Reklāmu bloķēšana konstatēta

Martech Zone var nodrošināt jums šo saturu bez maksas, jo mēs gūstam peļņu no savas vietnes, izmantojot ieņēmumus no reklāmām, saistīto uzņēmumu saites un sponsorēšanu. Būsim pateicīgi, ja, apskatot mūsu vietni, noņemtu savu reklāmu bloķētāju.