أهلا وسهلا بك زائرنا الكريم في PBBoard Community Forum، لكي تتمكن من المشاركة ومشاهدة جميع أقسام المنتدى وكافة الميزات ، يجب عليك إنشاء حساب جديد بالتسجيل بالضغط هنا أو تسجيل الدخول اضغط هنا إذا كنت عضواً .







طلب تعديل قالب portal_last_news

السلام عليكم ورحمة الله وبركاته كيف يمكن إظهار تنسيقات الموضوع بالكامل في بوابة المنتدى مع الإستعلام بعدد الكلمات كما هو ..



02-10-2020 05:54 مساء
عبدالاله الهذلي
عضـو متميز
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 23-08-2016
رقم العضوية : 6837
المشاركات : 507
الدولة : المملكة العربية السعودية
الجنس : ذكر
تاريخ الميلاد : 17-9-1999
الدعوات : 2
قوة السمعة : 1090
PBBoard Version : 3.0.3
 offline 
السلام عليكم ورحمة الله وبركاته
كيف يمكن إظهار تنسيقات الموضوع بالكامل في بوابة المنتدى مع الإستعلام بعدد الكلمات كما هو موضح في (عدد كلمات طول الخبر)

القالب قبل التعديل:


$num =$PowerBB->_CONF['template']['_CONF']['info_row']['portal_news_along'];
$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = $PowerBB->Powerparse->replace($PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text']);
$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = strip_tags($PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text']);
$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = str_replace('<br>',"

",$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text']);
$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = str_replace('<br />',"

",$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text']);
$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = $PowerBB->Powerparse->censor_words($PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text']);
$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = $PowerBB->functions->words_count($PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'],$num);

القالب بعد التعديل:

$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = $PowerBB->Powerparse->replace($PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text']);
$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = $PowerBB->Powerparse->censor_words($PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text']);


upsetالمطلوب نضمين :

$num =$PowerBB->_CONF['template']['_CONF']['info_row']['portal_news_along'];

 
توقيع :عبدالاله الهذلي
~ سبحان الله وبحمده , سبحان الله العظيم , أستغفرالله وأتوب إليه ~
2flw5


02-10-2020 06:07 مساء
مشاهدة مشاركة منفردة [1]
عبدالاله الهذلي
عضـو متميز
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 23-08-2016
رقم العضوية : 6837
المشاركات : 507
الدولة : المملكة العربية السعودية
الجنس : ذكر
تاريخ الميلاد : 17-9-1999
الدعوات : 2
قوة السمعة : 1090
PBBoard Version : 3.0.3
 offline 
look/images/icons/i1.gif طلب تعديل قالب portal_last_news
قمت بستخدام 

$num =$PowerBB->_CONF['template']['_CONF']['info_row']['portal_news_along'];

$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = $PowerBB->Powerparse->replace($PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text']);

$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = $PowerBB->Powerparse->censor_words($PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text']);

$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = $PowerBB->functions->words_count($PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'],$num);


ولكن عند إستخدام عدد كلمات الخبر بعدد محدد مثلًا أتوقع راح يخرب القالب بالكامل بسبب عدم إغلاق الكود مثلا:
MTYwMzkyMQ1212%D8%AA%D9%86%D8%B2%D9%8A%D9%84
 
  تنزيل.png   تحميل png تنزيل.png مرات التحميل :(0)
الحجم :(13.114) KB
 

توقيع :عبدالاله الهذلي
~ سبحان الله وبحمده , سبحان الله العظيم , أستغفرالله وأتوب إليه ~
2flw5


03-10-2020 03:00 صباحا
مشاهدة مشاركة منفردة [2]
Soliman
PBB Management
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 18-07-2009
رقم العضوية : 1
المشاركات : 11927
الدولة : السعودية
الجنس : ذكر
تاريخ الميلاد : 6-1-1980
الدعوات : 51
قوة السمعة : 70056
موقعي : زيارة موقعي
PBBoard Version : 3.0.3
 offline 
look/images/icons/i1.gif طلب تعديل قالب portal_last_news
المشاركة الأصلية كتبت بواسطة: عبدالاله الهذلي
قمت بستخدام 

$num =$PowerBB->_CONF['template']['_CONF']['info_row']['portal_news_along'];

$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = $PowerBB->Powerparse->replace($PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text']);

$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = $PowerBB->Powerparse->censor_words($PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text']);

$PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'] = $PowerBB->functions->words_count($PowerBB->_CONF['template']['while']['LastNews_subjectList'][$this->x_loop]['text'],$num);


ولكن عند إستخدام عدد كلمات الخبر بعدد محدد مثلًا أتوقع راح يخرب القالب بالكامل بسبب عدم إغلاق الكود مثلا:
MTYwMzkyMQ1212%D8%AA%D9%86%D8%B2%D9%8A%D9%84



ستحتاج function خاص يستثني عدم احتساب HTML tags ضمن عملية اقتصاص الكلمات 
في الكود الخاص بك استبدل words_count بـ substr_close_tags
ثم  افتح ملف: includes/functions.class.php
وابحث عن :
​function words_count($string,$words_count)

واضف اعلاها :
function substr_close_tags($code, $limit)
{
    if ( strlen($code) <= $limit )
    {
        return $code;
    }

    $html = substr($code, 0, $limit);
    preg_match_all ( "#<([a-zA-Z]+)#", $html, $result );

    foreach($result[1] AS $key => $value)
    {
        if ( strtolower($value) == 'br' )
        {
            unset($result[1][$key]);
        }
    }
    $openedtags = $result[1];

    preg_match_all ( "#</([a-zA-Z]+)>#iU", $html, $result );
    $closedtags = $result[1];

    foreach($closedtags AS $key => $value)
    {
        if ( ($k = array_search($value, $openedtags)) === FALSE )
        {
            continue;
        }
        else
        {
            unset($openedtags[$k]);
        }
    }

    if ( empty($openedtags) )
    {
        if ( strpos($code, ' ', $limit) == $limit )
        {
            return $html."...";
        }
        else
        {
            return substr($code, 0, strpos($code, ' ', $limit))."...";
        }
    }

    $position = 0;
    $close_tag = '';
    foreach($openedtags AS $key => $value)
    {
        $p = strpos($code, ('</'.$value.'>'), $limit);

        if ( $p === FALSE )
        {
            $code .= ('</'.$value.'>');
        }
        else if ( $p > $position )
        {
            $close_tag = '</'.$value.'>';
            $position = $p;
        }
    }

    if ( $position == 0 )
    {
        return $code;
    }

    return substr($code, 0, $position).$close_tag."...";
}


 

توقيع :Soliman
تذكر : لكي تتم مساعدتك في استفساراتك وطلباتك يجب عليك الالتزام بتطبيق قوانين الدعم الفني





الكلمات الدلالية
تعديل ، قالب ، portal_last_news ،


 







الساعة الآن 09:16 مساء