צפה בגרסא המלאה: נפתר אם הכותרת חוט חריגה על ידי החדרה של דברים langtitle הפסקה
שמתי לב שאם מישהו ההודעות חוט בשפה אחרת כי הוא ממש מתחת לדמויות דקות על התואר חוט, וכן את התגים langtitle עובר את ההגבלה הזאת, מפשל להציג את החוט בתוך forumdisplay, תוצאות החיפוש, בדף חוט עצמו. כנ"ל אם כותרת חוט מתורגמת, עונה מישהו חוט, ו 'Re: "שולח את הכותרת הודעה על מגבלת התווים שלה.
אני לא יכול להראות דוגמה לכך כי הייתי צריך לתקן את זה בפורום שלי. אני בטוח שאם ניתן לשכפל כאן אם תזין כותרת רק תחת הכותרת להגביל אופי החוט מתורגם משפת ברירת המחדל.
r.dziadusz
13-09-11, 11:04
אתה יכול בבקשה להראות לנו בעיה, כי אני בקושי יכול להבין מתי הבעיה מופיעה
הבעיה היא כאשר "langtitle" מוכנס לתוך הכותרת חוט, הוא אינו מזהה את התואר חוט מגבלת תווים. אם תג נחתך ולא נסגר כמו שצריך, זה שובר את העמוד שבו מופיעה הכותרת.
r.dziadusz
14-09-11, 10:05
אוקי, אבל אני לא יכול לשחזר את הבעיה הזאת בפורום של המבחן שלי, שלי [langtitle] מעולם לא נחתך.
אתה יכול בבקשה לשלוח לי מידע מפורט על הבעיה הזאת. מהי מגבלת אורך langtitle שלך, כמה זמן קוץ אמור להיות (בשפה מה) כדי לשבור את הקו?
אורך התואר שלי היה גבול 85, אבל אני זה גדל ל 100. כך, למשל, אם המשתמש הכניס הכותרת היתה 95 תווים, אז אז langtitle התגיות ישלח אותו מעל לגבול. המערכת מקוצץ langtitle סגירת תג שתוצאתה לשבור את הפריסה.
r.dziadusz
18-09-11, 20:01
אוקי הצלחנו לשחזר את הבעיה הזו, ועכשיו אנחנו עובדים על זה
היי. הייתי מסוגל לשחזר אותה. זה היה ממש קשה לשכפל עשיתי את זה בטעות עובד על משהו אחר. זה היה קשה, כי זה באג vBulletin. vBET משתמש vbchop vBulletin פונקציה, אשר אמור לחתוך מחרוזת לפי האורך הרצוי בצורה בטוחה (שמירה על תווי המוח מקודד). למרבה הצער vBulletin יש באג שם עבור הודעות אשר מקודדים על בטוח UTF-8 (תווים כמו & # CODE;) נותן תוצאות בסדר.
אנו שולחים דו"ח באגים (באג vBulletin (http://tracker.vbulletin.com/browse/VBIV-13177)) vBulletin ולתקן מהר נוצר בצד vBET. אז עכשיו vBET מזהה אם vbchop חזר התוצאה כבר וחותך אותו לאחד הרצוי. כמו כן יש לנו זיהוי פשוטה כדי לבדוק האם המכתב מקודד בתבנית & # CODE; לא היה לחתוך באמצע, ואם כן, אז המילה האחרונה היא לחתוך גם (פשוט על ידי מציאת מקום אחרון). עיין פתרון מהיר למטה.
Quick Fix:
פתח / כולל / vbenterprisetranslator_functions_detection.php
מצא:
$title = vbchop($title, $vbulletin->options['titlemaxchars'] - 12).'[/langtitle]';
החלף ב:
$desiredLength = $vbulletin->options['titlemaxchars'] - 12;
$title = vbchop($title, $desiredLength);
if (strlen($title) > $desiredLength) {
$title = substr($title, 0, $desiredLength);
$lastOpen = strrpos($title,'&');
$lastSpace = strrpos($title, ' ');
$lastClose = strrpos($title,';');
if ($lastOpen!==false && $lastSpace!==false && $lastClose!==false && ($lastSpace < $lastOpen) && ($lastOpen > $lastClose)) {
$title = substr($title, 0, $lastSpace);
}
}
$title .= '[/langtitle]';
זה ייכלל במהדורה הבאה.
שים לב כי ההודעה הקודמת נערכה לספק פתרון מהיר יותר מתוחכם (לפתרון סוגיית לחתוך במכתב באמצע בפורמט & # CODE;). אז אם אתה כבר ליישם פתרון הקודם אתה יכול לשקול להשתמש באחד בפועל, או פשוט לחכות מהדורה חדשה:)
תודה מיכל - ידעתי שמשהו קורה. האם לתקן חשבון מהיר גם תשובות גם כן? לפעמים "re:" שלח את זה מעל לגבול.
לא בדקנו אותו. אם תגלו כי הנושא עדיין קיים במקרה כזה, אנא צור קשר כאן ואנו להתמודד עם זה:)
Automatic Translations (Powered by Google, Microsoft®,
Yandex, SDL Language Cloud, IBM Watson and Apertium):
Powered by vBulletin® Version 4.2.5 Copyright © 2024 vBulletin Solutions Inc. All rights reserved.