Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if(function_exists('number_format_i18n')){
- if(is_admin()){return;}
- add_filter('number_format_i18n', 'wpbanglatools_i18n_digit', 10, 1);
- //add_filter('date_i18n', 'wpbanglatools_i18n_date',10,2); //enable this line if need to make the date bengali.
- }
- function wpbanglatools_i18n_digit($en_number){
- $en_digits = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9');
- $bn_digits = array('০', '১', '২', '৩', '৪', '৫', '৬', '৭', '৮', '৯');
- $en_number = str_replace($en_digits, $bn_digits, $en_number);
- //var_dump($en_number);
- return $en_number;
- }
- function wpbanglatools_i18n_date($en_date, $format){
- //var_dump($format);
- //check format in wp codex http://codex.wordpress.org/Formatting_Date_and_Time
- //month
- $en_months = array('January','February','March','April','May','June','July','August','September','October','November','December');
- $bn_months = array('জানুয়ারী','ফেব্রুয়ারী','মার্চ','এপ্রিল','মে','জুন','জুলাই','আগস্ট','সেপ্টেম্বর','অক্টোবর','নভেম্ভর','ডিসেম্বর');
- $en_months_short = array('January','February','March','April','May','June','July','August','September','October','November','December');
- $bn_months_short = array('জানুয়ারী','ফেব্রুয়ারী','মার্চ','এপ্রিল','মে','জুন','জুলাই','আগস্ট','সেপ্টেম্বর','অক্টোবর','নভেম্ভর','ডিসেম্বর');
- //week
- $en_weeks= array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');
- $en_weeks_short= array('Sun','Mon','Tue','Wed','Thu','Fri','Sat');
- $en_weeks_short_initial= array('S','M','T','W','T','F','S');
- $bn_weeks = array ('রবিবার','সোমবার','মঙ্গলবার','বুধবার','বৃহঃবার','শুক্রবার','শনিবার');
- $bn_weeks_short = array ('রবি','সোম','মঙ্গল','বুধ','বৃহঃ','শুক্র','শনি');
- $bn_weeks_short_initial= array('র','সো','ম','বু','বৃ','শু','শ');
- //meriian ...
- $en_meridian = array('am','pm');
- $bn_meridian = array('পুর্বাহ্ন','অপরাহ্ণ');
- //ordinal
- $en_ordinal = array('st','nd','rd','th');
- $bn_ordinal = array('','','','','');
- //let's apply regex depending on format
- //parse english month with data format
- //details about dataformat used in wordpress is here http://codex.wordpress.org/Formatting_Date_and_Time
- if(strpos($format,'F') !== FALSE)
- {
- //F Textual full January – December
- $en_date = str_replace($en_months, $bn_months, $en_date);
- }
- if(strpos($format,'M'))
- {
- //M Textual three letters Jan - Dec
- $en_date = str_replace($en_months_short, $bn_months_short, $en_date);
- }
- //now parse weekday depending on data format
- if(strpos($format,'l'))
- {
- //l Full name (lowercase 'L') Sunday – Saturday
- $en_date = str_replace($en_weeks, $bn_weeks, $en_date);
- }
- if(strpos($format,'D'))
- {
- //D Three letter name Mon – Sun
- $en_date = str_replace($en_weeks_short, $bn_weeks_short, $en_date);
- }
- if(strpos($format,'a') || strpos($format,'A'))
- {
- //a Lowercase am, pm
- //A Uppercase AM, PM
- $en_date = str_ireplace($en_meridian, $bn_meridian, $en_date); // why not run a case insensitive regex :P
- }
- if(strpos($format,'j') && strpos($format,'S'))
- {
- $en_date = str_ireplace($en_ordinal, $bn_ordinal, $en_date);
- }
- //at last make the digits bangla :D
- //though we need to make digit banglafy for date if $format contains d,j,m,n,Y,y,
- return wpbanglatools_i18n_digit($en_date);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement