سؤال

كيف يمكنني تقسيم الدعابة من بقية المحتوى في node.tpl.php للف النص الدعائي في علامة خاصة؟

هل كانت مفيدة؟

المحلول

يمكنك معالجة متغيرات السمة المسبقة لاسترداد الدعابة وتخزينها بشكل منفصل ، وإلا فإن Drupal يتعامل معها داخليًا ولن تمنحك خيارًا.

هنا هو الرمز: http://www.mydiary.digiprosoft.com/؟p=244 وفي ما يلي الأحداث البارزة من هذا الرابط.


في template.php

function phptemplate_preprocess_node(&$variables) {
    // we like to display teasers on the node view pages in a different style,
    // but only if they were NOT set to “show summary on full view” (which seems
    // backward, but the implication with that checkbox is that the teaser is
    // PART of the node’s body, instead of an actual summary of the entire
    // node’s body). if a node’s unbuilt body starts with , then
    // a teaser has been manually set, and “show summary” is not checked.
    if ($variables['page'] == TRUE) { // only do this on full page views.
        $node = node_load($variables['nid']); // we reload the node because
        // by the time it gets here has already been filtered out.
        // this if logic stolen from node.module’s node_teaser_include_verify().
        if (strpos($node->body, '') === 0) {
            $variables['style_teaser_differently'] = TRUE;
            $variables['teaser'] = check_markup($node->teaser, $node->format, FALSE);
        }
    }
}

في Node.tpl.php

<?php
    if ($style_teaser_differently){
        print '<div class="fullview-teaser">'.$teaser.'<div>';
}
?>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top