בעקבות התכתובת בקבוצת הדיון, והפוסט בוורדפרס עברית החלטתי גם אני לשדרג.
נכון לרגע זה הבלוג רץ על גרסת 2.1.2 עם כל התוספים שהיו בו מקודם (פוסט בעניין כנראה מחר) והכל נראה מצויין.
אני עובדת עם טייגר אדמין שעברתתי בעבר, כך שהממשק שלי עובד היטב, ובסה"כ אין תלונות כלל
אם מישהו נתקל בבעיות – אנא עדכנו אותי.
תיקון לבעיית הדוא"ל:
קודם כל קרדיטים, התיקון הזה הוא בעצם של תום, אני גנבתי מ 2.0.
בקובץ wp-include/pluggable.php שורה 158 עשו את השינוי הבא:
מקור:
1 2 3 4 5 6 7 8 9 10 | if ( !function_exists('wp_mail') ) : function wp_mail($to, $subject, $message, $headers = '') { if( $headers == '' ) { $headers = "MIME-Version: 1.0\n" . "From: wordpress@" . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME'])) . "\n" . "Content-Type: text/plain; charset=\"" . get_option('blog_charset') . "\"\n"; } return @mail($to, $subject, $message, $headers); } endif; |
שינוי:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | if ( !function_exists('wp_mail') ) : function wp_mail($to, $subject, $message, $headers = '') { if( $headers == '' ) { $headers = "MIME-Version: 1.0\n" . "From: wordpress@" . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME'])) . "\n" . "Content-Type: text/plain; charset=\"" . get_option('blog_charset') . "\"\n"; } $subject = sprintf('=?utf-8?B?%s?=', base64_encode($subject)); $ha = explode("\n", $headers); array_walk($ha, 'arbitrary_mail_header_base64_encode'); $headers = implode("\n", $ha); return @mail($to, $subject, $message, $headers); } endif; |
כמו כן הוסיפו את הפונקציה הבאה ישר אחרי הקוד ששיניתם
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | function arbitrary_mail_header_base64_encode(&$item, $key) { // WPMUH - tsella - function that searches the sender/reciever // and encodes the relevant part //$fields = array('From: ', 'To: ', 'CC: ', 'Reply-To: '); $fields = array('From: ', 'CC: '); $lcitem = strtolower($item); $end = strpos($lcitem, '< '); // for debugging, save the item string //$bitem = $item; foreach ($fields as $field) { if (substr_count($lcitem, strtolower($field)) > 0 && $end > 0) { $start = strlen($field); preg_match ('/\"(.+)\" \< .*\>/', $item, $match); $to_encode = $match[1]; $to_item = substr($item, $end); $item = sprintf('%s"=?utf-8?B?%s?=" %s', $field, base64_encode($to_encode), $to_item); } // for debugging, write to error_log //error_log(sprintf("debug: before: %s, item: %s, start: %d, to_encode: %s, to_item: %s", $bitem, $item, $start, $to_encode, $to_item)); } return $item; } |
זהו, כותרות הדוא"ל ושם השלוח נראים הייטב עכשיו
נהניתם ? הרשמו לעדכוני RSS !
א. מזלטוב ותתחדשי.
ב. הא! אמרתי לך!
את עובדת עם הpo שפרסמתי?
יעזור לקבל כמה שיותר פידבק…
לא הצלחתי לקמפל את הפו שלך (כפי שכתבתי בקבוצת הדיון), ועל כן לא עובדת איתו.
נכון לעכשיו יש לי בעיית דוא"ל – אני מקבלת את כולם בג'יבריש
אני עוד עובדת על להבין מהיכן בדיוק זה מגיע, כל עצה תתקבל בשמחה.
מוזר… אצלי המייל מגיע בסדר חוץ מהכותרות שהפכו מג'וברשות, או לפחות GMAIL מנרמל לקידוד הנכון את גוף הדואל.
לסיכום – טייגר + PO + הוק לתיקון קידוד כותרת הדואר (אני מאמין שפשוט צריך לציין בכותרת שהקידוד UTF8 או משהו, זה בטח אצל רן ב2.0.7), ויכול להיות שזיפ אחד יהפוך לגמרי את WP מהבראנץ' הראשי לעברית מבלי לגעת בקובץ מקורי בודד, וזה די קרוב לאידאלי (אידאלי זה עברית כחלק מהבראנץ' הראשי כמובן)
גם אצלי הבעיה היא בכותרות, זה עדיין מעיק מאד …
נראה לי שמצאתי את הבעיה, אם כן אני אפרסם תיקון כמובן
אוקיי, יש לי תיקון חלקי, אני עדיין עובדת על זה
לא חלקי! עובד מלא!
how to send you an email? let us get closer