Маркетингии Content

Таҳияи иқтибосҳо дар PHP ё WordPress: Усулҳои ҳисобкунии калима, ҳукм ва параграф

Эҷоди иқтибосҳо дар PHP вазифаи умумӣ дар идоракунии мундариҷа ва таҳияи вебсайт аст. Иқтибос нусхаи кӯтоҳшудаи порчаи дарозтари мундариҷа аст, ки аксар вақт барои пешниҳоди пешнамоиш ё хулоса истифода мешавад. Таҳиягарони PHP шояд лозим ояд, ки иқтибосҳоро дар асоси калимаҳо, ҷумлаҳо ё параграфҳо эҷод кунанд. Ин мақола усулҳои ноил шудан ба ин, дар якҷоягӣ бо таҷрибаҳои беҳтарин ва ҳолатҳоеро, ки шумораи ҳисобҳо аз дарозии мундариҷа зиёд аст, омӯхтааст.

Иқтибос аз ҳисоби калимаҳо

Эҷоди иқтибос аз рӯи шумораи калимаҳо буридани мундариҷаро пас аз миқдори муайяни калимаҳо дар бар мегирад.

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

Истифодабарӣ:

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

Таҷрибаҳои беҳтарин ва коркарди зиёдатӣ:

  • Шумораи калимаҳоро тафтиш кунед: Пеш аз буридан, санҷед, ки оё миқдори калимаҳои мундариҷаи аслӣ аз дарозии иқтибосҳои дилхоҳ зиёд аст. Агар не, мундариҷаи аслиро баргардонед.
  • Аз калимаҳои шикаста худдорӣ кунед: Боварӣ ҳосил кунед, ки калимаи охирин дар иқтибос пурра аст, то хонданро нигоҳ доред.
  • Эллипс илова кунед: Ихтиёрӣ, эллипс илова кунед (...) дар охир агар мундариҷа бурида шавад.

Иқтибос аз ҷониби Ҳисоби ҳукм

Эҷоди иқтибосҳо аз рӯи шумориши ҷумла нигоҳ доштани миқдори муайяни ҷумлаҳоро аз мундариҷа дар бар мегирад.

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

Истифодабарӣ

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

Барои навсозии excerptBySentenceCount функсия барои дохил кардани ҷумлаҳо бо ҳама гуна аломатҳои дар охир (на танҳо нуқтаҳо), шумо метавонед функсияро тағир диҳед, то мундариҷаро бо ибораи муқаррарӣ тақсим кунед, ки ба ҳар як аломати аломати охири ҷумла мувофиқат кунад, ба монанди нуқта, аломати нидо ё аломати савол. Ин аст, ки чӣ тавр шумо метавонед онро дар 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;
}

Ин функсия истифода мебарад preg_split бо ифодаи муқаррарӣ (регекс) /(?<=[.!?])\s+/ ки матнро ба фосилаҳо тақсим мекунад (\s+), ки пас аз нуқта, нидо ё аломати савол ([.!?]). Дар бораи мо (?<=...) як изҳороти мусбатест, ки мавҷудияти пунктуатсияҳои охири ҷумларо бидуни дохил кардани он ба тақсим тафтиш мекунад. Дар PREG_SPLIT_NO_EMPTY парчам кафолат медиҳад, ки танҳо қисмҳои холӣ баргардонида мешаванд.

Ниҳоят, функсия месанҷад, ки оё аломати охирини мундариҷаи натиҷавӣ аломати аломати охири ҷумла аст. Дар акси ҳол, он барои нигоҳ доштани аломати дуруст дар охири порча як нуқта илова мекунад.

Таҷрибаҳои беҳтарин ва коркарди зиёдатӣ:

  • Муайян кардани ҳукми дуруст: Барои тақсим кардани ҷумлаҳо як нуқта ва пас аз фосила истифода баред. Ин аз тақсимшавӣ ба давраҳое, ки дар ихтисорот истифода мешаванд, пешгирӣ мекунад.
  • Шумораи ҳукмҳоро тафтиш кунед: Монанди шумори калимаҳо, тафтиш кунед, ки шумораи ҷумлаи мундариҷаи аслӣ кофӣ аст.
  • Нигоҳ доштани пунктуатсия: Боварӣ ҳосил кунед, ки иқтибос бо аломатҳои дуруст, одатан нуқта анҷом меёбад.

Иқтибос аз ҳисоби параграф

Эҷоди иқтибосҳо аз рӯи ҳисоби параграфҳо буридани мундариҷаро пас аз шумораи муайяни параграфҳо дар бар мегирад.

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

Истифодабарӣ:

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

Таҷрибаҳои беҳтарин ва коркарди зиёдатӣ:

  • Барои параграфҳо сатрҳои навро истифода баред: Параграфҳо одатан бо сатрҳои нав ҷудо карда мешаванд (\n). Боварӣ ҳосил кунед, ки мундариҷаи шумо ин форматро риоя мекунад.
  • Шумораи параграфҳоро тафтиш кунед: Тасдиқ кунед, ки агар миқдори параграфҳои мундариҷа барои иқтибос мувофиқ бошад.
  • Сохтори мундариҷаро эҳтиром кунед: Барои нигоҳ доштани тамомияти мундариҷа сохтори параграфҳоро дар иқтибос нигоҳ доред.

Иқтибос аз ҳисоби параграфҳои HTML

Ҳангоми кор бо мундариҷаи HTML, шумо мехоҳед иқтибосҳоро дар асоси <p> барчаспҳо барои нигоҳ доштани сохтор ва форматкунии мундариҷаи аслӣ.

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

Истифодабарӣ:

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

Таҷрибаҳои беҳтарин ва коркарди зиёдатӣ:

  • Ифодаҳои муқаррарӣ барои мувофиқати барчаспҳо: истифода бурдан preg_match_all бо ифодаи муқаррарӣ барои мувофиқат <p> барчасп. Ин равиш кафолат медиҳад, ки сохтор ва атрибутҳои тегҳои параграф нигоҳ дошта мешаванд.
  • Эҳтиром ба сохтори HTML:
    Боварӣ ҳосил кунед, ки иқтибос сохтори HTML-ро нигоҳ медорад. Аз вайрон кардани барчаспҳо худдорӣ кунед, ки метавонад боиси мушкилоти рендеринг гардад.
  • Шумораи параграфҳоро тафтиш кунед: Мисли матни оддӣ, тафтиш кунед, ки оё миқдори параграфҳои мундариҷаи аслӣ барои иқтибос кофӣ аст.
  • Дастурҳои воридшуда: Дар хотир доред, ки параграфҳо метавонанд ҷузъҳои дигари HTML, ба монанди истинодҳо ё фосилаҳоро дар бар гиранд. Боварӣ ҳосил кунед, ки ҳисобҳои regex-и шумо барои барчаспҳои дар дохили параграфҳо ҷойгиршуда.

Эҷоди иқтибосҳо дар асоси ҳисобкунии параграфҳои HTML дар PHP нисбат ба коркарди матни оддӣ вазифаи пешрафтатар аст. Барои нигоҳ доштани якпорчагии сохтори HTML бодиққат истифода бурдани ибораҳои муқаррарӣ муҳим аст. Ин усул махсусан барои барномаҳои веб мувофиқ аст, ки мундариҷа бояд бо формати аслии он намоиш дода шавад. Чун ҳамеша, дарозии мундариҷаи аслиро тасдиқ кунед ва ҳангоми пешниҳоди иқтибосҳо таҷрибаи корбарро ба назар гиред.

Бале, WordPress маҷмӯи функсияҳо ва хусусиятҳои худро дорад, ки эҷоди иқтибосҳоро осон мекунанд, ки метавонанд равандро нисбат ба коркарди дастӣ иқтибосҳо дар PHP хеле содда кунанд. Ин аст шарҳи вазифаҳои калидии WordPress, ки бо иқтибосҳо алоқаманданд:

Функсияи иқтибос дар WordPress

WordPress API системаи боэътимоди коркарди иқтибосҳоро пешниҳод мекунад, ки ба таври дастӣ иҷро кардани функсияҳои PHP-ро барои аксари ҳолатҳои маъмулӣ нолозим месозад. WordPress як роҳи осони идоракунии мухтасари паёмҳоро пешниҳод мекунад, хоҳ он дарозиро танзим кунад, хоҳ тағир диҳад бештар матн, ё бо истифода аз барчаспҳои шаблон барои намоиши иқтибосҳо.

the_excerpt()

Ин теги қолаби WordPress ба таври худкор иқтибосро барои пост чоп мекунад. Он одатан дар мавзӯъҳо барои намоиши мухтасари паём дар саҳифаҳои бойгонӣ истифода мешавад.

  • Истифодабарӣ: Ҷои the_excerpt() дар доираи The Loop дар файлҳои мавзӯии худ, ки мехоҳед иқтибос пайдо шавад.
  • Омил: Бо нобаёнӣ, он 55 калимаи аввали паёмро нишон медиҳад. Агар дар муҳаррири пост иқтибосе ба таври дастӣ муқаррар карда шавад, он ба ҷои он нишон медиҳад.

get_the_excerpt()

Ин функсия иқтибосро бидуни намоиши он бармегардонад ва ба шумо назорати бештареро дар бораи чӣ гуна ва дар куҷо истифода бурдани онро медиҳад.

  • Истифодабарӣ: get_the_excerpt($post) метавонад барои гирифтани иқтибос аз як паёми мушаххас истифода шавад.
  • мутобиқсозӣ: Шумо метавонед сатри баргардонидашударо, агар лозим бошад, пеш аз намоиш додани он идора кунед.

Мутобиқсозии дарозии иқтибос

WordPress ба шумо имкон медиҳад, ки дарозии пешфарзро тавассути excerpt_length филтр

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

Идоракунии барчаспҳои бештар ва иқтибосҳои бештари матн

the_content('Read more')

Ин функсия мӯҳтаворо то он даме, ки ба теги "бештар" дучор шавад, намоиш медиҳад. Он барои нишон додани иқтибосҳои дарозии фармоишӣ дар дохили муҳаррири мундариҷа муфид аст.

Мутобиқсозии иқтибос Матни бештар

Шумо метавонед матнеро, ки дар охири порча пайдо мешавад, танзим кунед (масалан […]) бо истифода аз excerpt_more филтр

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

Идоракунии HTML дар иқтибосҳо

Иқтибосҳои WordPress бо нобаёнӣ матни оддӣ мебошанд. Агар ба шумо лозим аст, ки барчаспҳои HTMLро дар иқтибосҳо нигоҳ доред, шумо бояд функсияи фармоишӣ эҷод кунед ё плагинеро, ки барои ин мақсад пешбинӣ шудааст, истифода баред.

Аммо, рамзгузории фармоишӣ ё плагинҳо барои талаботҳои пешрафта, ба монанди нигоҳ доштани барчаспҳои HTML дар иқтибосҳо ё эҷоди иқтибосҳо дар асоси унсурҳои мушаххас ба монанди ҷумлаҳо ё параграфҳо заруранд.

Douglas Karr

Douglas Karr CMO аз OpenINSIGHTS ва асосгузори Martech Zone. Дуглас ба даҳҳо стартапҳои бомуваффақияти MarTech кӯмак кардааст, дар тафтиши зарурӣ ба маблағи беш аз 5 миллиард доллар дар харид ва сармоягузории Martech кӯмак кардааст ва ба ширкатҳо дар татбиқ ва автоматикунонии стратегияҳои фурӯш ва маркетинги онҳо кӯмак мерасонад. Дуглас трансформатсияи рақамии дар сатҳи байналмилалӣ эътирофшуда ва коршинос ва сухангӯи MarTech мебошад. Дуглас инчунин муаллифи нашршудаи дастури Dummie ва китоби роҳбарияти тиҷорат аст.

Мақолаҳо марбут

Бозгашт ба боло
наздик

Блоки рекламавӣ ошкор карда шуд

Martech Zone қодир аст, ки ин мундариҷаро ба шумо бепул пешниҳод кунад, зеро мо сайти худро тавассути даромади таблиғотӣ, истинодҳои шарикӣ ва сарпарастӣ монетизатсия мекунем. Мо миннатдор хоҳем буд, агар шумо ҳангоми дидани сайти мо блокатори таблиғоти худро хориҷ кунед.