Cách thêm tiện ích Google Dịch vào blogger

Cách thêm tiện ích Google Dịch vào blogger


Xin chào các bạn, lần này mình sẽ chia sẻ cách thêm widget Google Dịch cho các blogger. Trên thực tế, mọi trình duyệt đều đã cung cấp bản dịch, như google chorme, chúng ta chỉ cần nhấp vào dấu ba chấm ở góc trên bên phải để chọn bản dịch, hoặc nếu thông qua màn hình desktop thì chúng ta chỉ cần nhấp chuột phải và yêu cầu dịch là được. đã chọn. Một số người không biết rằng trình duyệt đã cung cấp một trình dịch.

Tiện ích Google Dịch này thực sự được điều khiển bởi Bố cục Blogger. Bạn chỉ cần bố trí và thêm các widget, sau đó sẽ có tùy chọn dịch, nhưng tôi không khuyến khích phương pháp này vì nó sẽ tải blog.

Widget của bên thứ ba không nhẹ vì nó sử dụng JS bên ngoài, thoạt nhìn có vẻ nhỏ nhưng mã bên trong rất dài, thường là CSS và JavaScript bên ngoài.

Nhưng ở đây tôi làm tốt hơn nó, để không có gánh nặng khi dịch các widget khi tải blog. Ở đây tôi đã lưu trữ tập lệnh Google dịch này trên github và sử dụng tính năng tải chậm để trì hoãn việc tải tập lệnh, sau khi cuộn mới Hoạt động này tập lệnh sẽ tải. Nếu bạn muốn cài đặt tiện ích Google Dịch này trên trang Blogger của mình, vui lòng đọc toàn bộ văn bản.

Google dịch là gì?

Google đã tạo ra một cỗ máy đa ngôn ngữ có tên là Google Dịch. Google Dịch được sử dụng để dịch văn bản, tài liệu và trang web từ ngôn ngữ này sang ngôn ngữ khác. Google Dịch cung cấp nhiều giao diện trang web, ứng dụng di động Android và iOS và giao diện lập trình ứng dụng khác nhau để giúp các nhà phát triển tạo phần mềm, ứng dụng Android, ứng dụng iOS và tiện ích mở rộng trình duyệt. Google Dịch hỗ trợ tổng cộng 109 ngôn ngữ trên toàn thế giới. Vào năm 2016, Google có hơn 500 triệu người dùng và con số này đã tăng lên 100 tỷ vào ngày 1 tháng 8 năm 2021.

Cách Thêm Tiện ích Google Dịch trong Blogger

  • Bước 1: Đăng nhập vào Blogger
  • Bước 2: Chọn Chủ đề ấn vào Chỉnh sửa HTML
  • Bước 3: Copy toàn bộ code dưới đây và dán trên thẻ ]]></b:skin>

#google_translate_element{padding:0;margin-right:5px;margin-top:15px}
.goog-te-banner-frame.skiptranslate,.goog-te-gadget-simple img,img.goog-te-gadget-icon,.goog-te-menu-value span{display:none!important}
.goog-te-menu-frame{box-shadow:none!important}
.goog-te-gadget-simple{background-color:transparent!important;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20,5H10.88L10,2H4A2,2 0 0,0 2,4V17A2,2 0 0,0 4,19H11L12,22H20A2,2 0 0,0 22,20V7A2,2 0 0,0 20,5M7.17,14.59A4.09,4.09 0 0,1 3.08,10.5A4.09,4.09 0 0,1 7.17,6.41C8.21,6.41 9.16,6.78 9.91,7.5L10,7.54L8.75,8.72L8.69,8.67C8.4,8.4 7.91,8.08 7.17,8.08C5.86,8.08 4.79,9.17 4.79,10.5C4.79,11.83 5.86,12.92 7.17,12.92C8.54,12.92 9.13,12.05 9.29,11.46H7.08V9.91H11.03L11.04,10C11.08,10.19 11.09,10.38 11.09,10.59C11.09,12.94 9.5,14.59 7.17,14.59M13.2,12.88C13.53,13.5 13.94,14.06 14.39,14.58L13.85,15.11L13.2,12.88M13.97,12.12H13L12.67,11.08H16.66C16.66,11.08 16.32,12.39 15.1,13.82C14.58,13.2 14.21,12.59 13.97,12.12M21,20A1,1 0 0,1 20,21H13L15,19L14.19,16.23L15.11,15.31L17.79,18L18.5,17.27L15.81,14.59C16.71,13.56 17.41,12.34 17.73,11.08H19V10.04H15.36V9H14.32V10.04H12.36L11.18,6H20A1,1 0 0,1 21,7V20Z' fill='%23161617'/%3E%3C/svg%3E") center / 12px no-repeat;-webkit-transition:all .2s ease;transition:all .2s ease;background-size: 20px 20px;display:inline-block;font-weight:400;line-height: 1.8;padding:0 6px;text-align:center;white-space:nowrap;vertical-align: middle;-ms-touch-action: manipulation;touch-action:manipulation;cursor:pointer;-webkit-user-select: none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-left:none!important;border-top:none!important;border-bottom:none!important;border-right:none!important;border-radius: 4px}
body{top:0px!important}

Nếu mẫu của bạn có tính năng chế độ tối và bạn cần một màu chế độ tối khác, hãy thêm CSS bên dưới.

.dark-mode .goog-te-gadget-simple{background-color:transparent!important;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20,5H10.88L10,2H4A2,2 0 0,0 2,4V17A2,2 0 0,0 4,19H11L12,22H20A2,2 0 0,0 22,20V7A2,2 0 0,0 20,5M7.17,14.59A4.09,4.09 0 0,1 3.08,10.5A4.09,4.09 0 0,1 7.17,6.41C8.21,6.41 9.16,6.78 9.91,7.5L10,7.54L8.75,8.72L8.69,8.67C8.4,8.4 7.91,8.08 7.17,8.08C5.86,8.08 4.79,9.17 4.79,10.5C4.79,11.83 5.86,12.92 7.17,12.92C8.54,12.92 9.13,12.05 9.29,11.46H7.08V9.91H11.03L11.04,10C11.08,10.19 11.09,10.38 11.09,10.59C11.09,12.94 9.5,14.59 7.17,14.59M13.2,12.88C13.53,13.5 13.94,14.06 14.39,14.58L13.85,15.11L13.2,12.88M13.97,12.12H13L12.67,11.08H16.66C16.66,11.08 16.32,12.39 15.1,13.82C14.58,13.2 14.21,12.59 13.97,12.12M21,20A1,1 0 0,1 20,21H13L15,19L14.19,16.23L15.11,15.31L17.79,18L18.5,17.27L15.81,14.59C16.71,13.56 17.41,12.34 17.73,11.08H19V10.04H15.36V9H14.32V10.04H12.36L11.18,6H20A1,1 0 0,1 21,7V20Z' fill='%23fff'/%3E%3C/svg%3E") center / 12px no-repeat;-webkit-transition:all .2s ease;transition:all .2s ease;background-size: 20px 20px;}

  • Bước 4: Sao chép toàn bộ code dưới đây và dán dưới thẻ </header>

<div id='google_translate_element'></div>
Lưu ý: Sao chép đoạn mã trên và đặt nó ở nơi bạn muốn biểu tượng dịch này xuất hiện.

  • Bước 5: Sau đó copy toàn bộ code này dán trên thẻ </body>

<script type='text/javascript'>
//<![CDATA[
// New Google Translate Widget By QuangLinhPro.Com
function googleTranslateElementInit(){new google.translate.TranslateElement({pageLanguage:'en',includedLanguages:'en,hi,or,gu,pa,ne,mr,ur,te,ta,bn,vi,id',layout:google.translate.TranslateElement.InlineLayout.SIMPLE},'google_translate_element')}$(".hover").mouseleave(function (){$(this).removeClass("hover")});

// Lazyload Google Translate Widget By QuangLinhPro.Com
function _0x388a(){var a=["vgjsDuO","BI5QC2rLBgL2CG","rKzSBK4","rxj0wvi","mJq3nZbICw9WwKu","vKT3AKy","DhjHy2u","BgvUz3rO","yxfMs0m","CK9AEfa","Dg9tDhjPBMC","BwThr3C","DgfIBgu","r1LcBKK","zNviBgu","wfjIuLG","wMjzCwe","yMLUza","BMn0Aw9UkcKG","CMv0DxjUicHMDq","t3rbCNG","mtaZnZa0mvjqzM1WAW","wffAuK0","zxjYB3i","ywrKrxzLBNrmAq","zeHLvge","BeH6wwK","ChjVDg90ExbL","zMrkywu","mteZmdq4EfvxwNjz","C2nYB2XS","BfH0CgW","ww9cyNu","wfHPwhi","EgXTD1i","ndm2s2nHCvvg","z2v0rwXLBwvUDa","zwvws1G","y3jLyxrLrwXLBq","C2nYB2XSvg9W","y29UC3rYDwn0BW","m3WWFdr8mxWYFa","tvj3Ag4","AKDztvK","zw1LBNq","Bg9N","tfHNswG","C0j5vgfNtMfTzq","yxj0DgvJAg11AW","Bfn4wNe","yxn5BMm","nxWYFdb8m3WXFa","C2nYAxb0","Cfjqy1K","Aw5Zzxj0qMvMBW","zuPnBLO","zeHAywy","zNzMtM4","Du5AtKG","mJu3odyYndjJyKzgz0W","mtG5zfLdq3PQ","C3bSAxq","A3vIBe4","yxrLlMPZ","x19WCM90B19F","z2XLlxrYyw5ZBa","y29UC29Szq","yxbWBhK","z2fMrgK","BufJrhC","B3bNugK","DxDMt0i","ndi5nZm5nwLfrMPerW","zg9JDw1LBNrfBa","lM5LDc9NAc9ZBq","Dgv4Dc9QyxzHCW","CM4GDgHPCYiPka","zxnOl3nJCMLWDa","C3jJ","ugHMBwC","E30Uy29UC3rYDq","mZG5mtKYvfvvD1DI","yM9KEq","rxbszvu","Ahr0Chm6lY9Jza","zw50","C0bTywLUl2DVBW","CgHVt3i","DhLWzq","y3jPChq","C2vHCMnO","C3rLBMvY","we11CwW","r2rABeK","Aw5MBW","uMjuuMW","nZeYnZi0ng9SD0jTuW","y3rVCIGICMv0Dq","vgTLy2q","venltgu"];return _0x388a=function(){return a},_0x388a()}function _0x2d45c0(a,b){return _0x20c3(b-550,a)}function _0x41fa10(a,b,c){return _0x20c3(c- -422,a)}function _0x20c3(a,b){var c=_0x388a();return _0x20c3=function(b){b-=294;var d=c[b];if(_0x20c3.ZdEWpO===void 0){var e=function(a){for(var b,c,d="",f="",g=d+e,h=0,i=0;c=a.charAt(i++);~c&&(b=h%4?b*64+c:c,h++%4)?d+=g.charCodeAt(i+10)-10==0?h:String.fromCharCode(255&b>>(-2*h&6)):0)c="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(c);for(var j=0,k=d.length;j<k;j++)f+="%"+("00"+d.charCodeAt(j).toString(16)).slice(-2);return decodeURIComponent(f)};_0x20c3.vetOSw=e,a=arguments,_0x20c3.ZdEWpO=!0}var f=c[0],g=b+f,h=a[g];if(!h){var i=function(a){this.vrhZkD=a,this.xSczBG=[1,0,0],this.UAQAzf=function(){return"newState"},this.aeNitk="\\w+ *\\(\\) *{\\w+ *",this.lWtBoZ="['|\"].+['|\"];? *}"};i.prototype.LenpsC=function(){var a=new RegExp(this.aeNitk+this.lWtBoZ),b=a.test(this.UAQAzf.toString())?--this.xSczBG[1]:--this.xSczBG[0];return this.sWKhxa(b)},i.prototype.sWKhxa=function(a){return!!~a?this.ufvALP(this.vrhZkD):a},i.prototype.ufvALP=function(a){for(var b=0,c=this.xSczBG.length;b<c;b++)this.xSczBG.push(Math.round(Math.random())),c=this.xSczBG.length;return a(this.xSczBG[0])},new i(_0x20c3).LenpsC(),d=_0x20c3.vetOSw(d),a[g]=d}else d=h;return d},_0x20c3(a,b)}(function(a,b){function c(a,b,c){return _0x20c3(c- -137,b)}function d(a,b,c,d){return _0x20c3(b- -939,d)}for(var e=a();;)try{var f=-parseInt(c(242,235,197,209))/1+parseInt(d(-665,-645,-655,-674))/2+-parseInt(d(-601,-554,-511,-589))/3+-parseInt(d(-616,-591,-574,-591))/4*(parseInt(c(130,158,180,143))/5)+parseInt(c(221,169,172,201))/6+parseInt(d(-571,-566,-560,-597))/7*(-parseInt(d(-636,-597,-636,-578))/8)+parseInt(d(-603,-567,-531,-550))/9;if(f===b)break;else e.push(e.shift())}catch(a){e.push(e.shift())}})(_0x388a,856579);var _0x3d7e7c=function(){var a=!0;return function(b,c){var d=a?function(){function a(a,b){return _0x20c3(b- -744,a)}if(c){var d=c[a(-363,-364,-371,-337)](b,arguments);return c=null,d}}:function(){};return a=!1,d}}(),_0x2f4fc1=_0x3d7e7c(this,function(){function a(a,b){return _0x20c3(a- -637,b)}function b(a,b,c,d){return _0x20c3(c-799,d)}var c={};c[b(1140,1113,1137,1111)]="(((.+)+)+)+$";return _0x2f4fc1[b(1141,1080,1122,1135)]().search("(((.+)+)+)+$")[b(1142,1094,1122,1116)]()[a(-284,-238,-254,-331)+"r"](_0x2f4fc1)[a(-334,-297,-306,-330)](c[b(1128,1143,1137,1169)])});_0x2f4fc1();var _0x1b165a=function(){function a(a,b,c){return _0x20c3(b-240,c)}function b(a,b,c,d){return _0x20c3(c- -390,d)}var c={};c[b(-112,-53,-64,-110)]=a(614,628,611,602)+b(-71,-43,-88,-119),c[a(543,573,559,541)]=b(-95,-121,-93,-50)+b(-96,-106,-76,-61)+a(580,627,649,675)+"arttechmuk"+b(-15,26,0,26)+b(-55,-67,-91,-119)+"gle-transl"+b(-48,26,-14,-56),c.lSxZq=function(a,b){return a!=b},c.mAcDw="ljaUz",c.XMuql=function(a,b){return a===b},c[b(-99,-33,-72,-31)]=function(a,b){return a!==b},c[a(639,611,618,658)]=b(-47,-67,-90,-125);var d=c,e=!0;return function(b,c){function f(b,c,d,e){return a(b-498,c- -1237,e,e-36)}function g(b,c,d,e){return a(b-129,d-332,c,e-173)}var h={fvfNn:d.GYBnI,lHzYi:d.OtArx,Tkecd:function(a,b){function c(a,b,c){return _0x20c3(c-96,a)}return d[c(428,446,458,433)](a,b)},lXtpl:function(a,b){return a===b},xlmwR:function(a,b){return a===b},iMIko:d[g(959,947,954,919)],YoBbu:g(883,851,899,927),TCKLe:function(a,b){return d[function(a,b,c,d){return f(a-434,d-1818,c-328,a)}(1144,1138,1168,1126)](a,b)},aqfKC:g(959,967,941,957)};if(d[g(914,925,890,932)](d[f(-649,-626,-672,-585)],d[f(-635,-626,-649,-664)])){var i=_0x33ae32?function(){function a(a,b,c){return f(a-305,b-615,c-305,a)}if(_0x3eee52){var b=_0x3f901d[a(-30,-2,-20,-38)](_0x1f3536,arguments);return _0x3faa51=null,b}}:function(){};return _0x5b24d1=!1,i}var j=e?function(){function a(a,b,c,d){return g(a-34,c,a- -713,d-500)}function d(a,b,c){return f(a-25,b-160,c-122,c)}if(h[a(206,182,206,246)](h.iMIko,h[d(-513,-492,-518,-527)])){if(_0x4a7236){var e=_0x5ea5b8[d(-490,-457,-420,-412)](_0xf9e669,arguments);return _0x69d4c6=null,e}}else if(c){if(h[d(-504,-525,-533,-514)](h[d(-518,-516,-512,-564)],"dHZaf")){var i=c.apply(b,arguments);return c=null,i}var j={};j[d(-441,-487,-437,-515)]=h[d(-455,-467,-448,-483)],j[d(-460,-478,-459,-505)]=h[d(-487,-498,-462,-472)];var k=j;(h[d(-499,-526,-559,-528)](0,_0x5add7a[a(245,235,289,201)+a(216,207,192,193)].scrollTop)&&h[d(-542,-493,-529,-496)](!1,_0x5aa0e0)||h[a(170,128,130,160)](0,_0x4b22e3[d(-498,-542,-568,-549)][d(-460,-485,-482,-473)])&&h[d(-482,-490,-506,-478)](!1,_0x247761))&&(!function(){function b(a,b,c,e){return d(a-346,e-1781,b,e-279)}function c(b,c,d,e){return a(d-309,c-483,e,e-468)}var e=_0x4b5b89["createElem"+b(1261,1270,1290,1242)]("script");e[b(1295,1245,1244,1245)]=k.eeVKX,e.async=!0,e[c(585,588,559,551)]=k[c(493,523,527,528)];var f=_0x457500[b(1291,1275,1295,1293)+b(1285,1259,1337,1304)](b(1271,1326,1279,1309))[0];f.parentNode[c(507,575,535,546)+"re"](e,f)}(),_0x51673f=!0)}}:function(){};return e=!1,j}}(),_0x543fb7=_0x1b165a(this,function(){function a(a,b,c,d){return _0x20c3(d- -163,c)}function b(a,b,c,d){return _0x20c3(d- -450,a)}for(var c={ErtYR:function(a,b){return a!==b},uwfOB:a(185,208,122,172),jGYMY:function(a,b){return a(b)},kublN:function(a,b){return a+b},TbRuJ:function(a,b){return a+b},FmvHw:a(216,275,242,230)+b(-180,-93,-139,-140)+a(193,273,176,226)+" )",fdJae:a(182,244,234,202),opgPi:a(233,273,272,225)+a(182,145,93,139),XXiXr:"https://cd"+a(126,157,163,151)+b(-75,-55,-60,-63)+b(-130,-40,-97,-89)+"esh/script"+a(160,134,104,136)+b(-111,-54,-55,-72)+a(233,228,244,213),bgPud:function(a){return a()},FFlnN:a(209,237,158,195),SQaaj:b(-157,-149,-96,-114),pRPcY:"exception",KClfM:b(-93,-120,-77,-125),rUJyr:function(a,b){return a<b},LMscw:function(a,b){return a===b},XRbRX:b(-45,-62,-95,-95)},d=function(){function d(a,c,d){return b(a,c-95,d-107,d-829)}function e(b,c,d,e){return a(b-177,c-60,d,e- -276)}if(c[e(-91,-112,-131,-123)](c[e(-11,-12,-53,-55)],e(-71,-141,-103,-104)))for(var f=(e(-32,-48,-91,-75)+"4")[d(793,704,753,765)]("|"),g=0;;){switch(f[g++]){case"0":var h=_0x558980[i]||j;continue;case"1":j[d(701,707,702,743)]=h[d(739,739,702,740)][e(-78,-133,-159,-109)](h);continue;case"2":var i=_0x2a6b62[_0x4712fe];continue;case"3":j[e(-92,-20,-47,-62)]=_0x163abf.bind(_0x1aff59);continue;case"4":_0x3e1f7f[i]=j;continue;case"5":var j=_0x169cbd[e(-134,-82,-89,-86)+"r"].prototype[d(664,720,709,685)](_0x49e18a);continue;}break}else{var k;try{k=c[d(703,706,735,725)](Function,c[d(710,762,754,783)](c[e(-176,-87,-175,-126)](e(-147,-134,-95,-107)+d(744,753,710,757),c.FmvHw),");"))()}catch(a){k=window}return k}},e=c.bgPud(d),f=e[a(203,212,254,216)]=e[a(206,220,266,216)]||{},g=[c[a(196,121,152,152)],"warn",a(122,133,168,144),c.SQaaj,c[a(176,187,224,203)],c.KClfM,a(122,175,181,156)],h=0;c.rUJyr(h,g[b(-179,-110,-148,-130)]);h++)if(c.LMscw(a(149,218,186,192),c[b(-144,-102,-101,-122)]))for(var i=(b(-95,-53,-68,-96)+"5")[b(-110,-120,-79,-76)]("|"),j=0;;){switch(i[j++]){case"0":var k=g[h];continue;case"1":l[a(261,245,213,214)]=_0x1b165a[b(-132,-103,-87,-120)](_0x1b165a);continue;case"2":l[a(194,116,206,160)]=m[b(-87,-91,-128,-127)][a(145,198,209,167)](m);continue;case"3":var l=_0x1b165a[b(-135,-75,-48,-97)+"r"][b(-138,-99,-73,-110)][a(152,181,129,167)](_0x1b165a);continue;case"4":var m=f[k]||l;continue;case"5":f[k]=l;continue;}break}else{var n=_0xea84b3[b(-67,-112,-144,-99)+a(150,148,177,135)](c[b(-86,-136,-155,-109)]);n.type=c[a(238,267,269,220)],n[a(235,178,158,200)]=!0,n[b(-9,-84,-84,-59)]=c[a(172,188,174,183)];var o=_0x33436f[a(158,211,145,186)+b(-67,-76,-116,-90)](c[a(180,199,172,178)])[0];o.parentNode[a(165,228,201,204)+"re"](n,o)}});_0x543fb7();var lazyts=!1;window[_0x2d45c0(935,887,934,874)+_0x2d45c0(835,854,850,857)](_0x41fa10(-61,-95,-79,-63),function(){function a(a,b,c,d){return _0x2d45c0(a,c- -881,c-266,d-423)}function b(a,b,c,d){return _0x41fa10(b,b-345,d-833,d-153)}var c={};c[b(730,732,691,733)]=function(a,b){return a!==b},c[a(-22,17,-25,18)]="cabTT",c.mkGGw="MPOkP",c[b(669,695,719,707)]=a(23,10,57,81)+b(754,740,737,713),c[a(83,45,37,4)]=a(12,-59,-34,-28)+b(723,736,704,725)+b(829,749,774,798)+a(33,43,30,51)+b(797,792,829,801)+a(-50,-10,-32,-55)+a(22,25,47,55)+b(803,812,835,787),c[b(696,702,752,719)]=function(a,b){return a!=b},c[b(834,771,796,792)]=function(a,b){return a===b},c[b(764,815,797,803)]=function(a,b){return a!=b},c[b(708,774,710,740)]=function(a,b){return a===b};var d=c;(d.RbTRl(0,document["documentEl"+a(30,57,26,54)].scrollTop)&&d[a(72,84,50,79)](!1,lazyts)||d[a(55,90,61,40)](0,document[b(711,711,756,706)][b(804,803,741,763)])&&d.ZbYqa(!1,lazyts))&&(!function(){function c(b,c,d,e){return a(b,c-430,e-355,e-81)}function e(a,c,d){return b(a-223,d,d-329,c- -181)}if(d.rOZxP(d[e(551,536,487,550)],d[e(596,554,557,540)])){var f=document.createElement("script");f[e(559,531,516,530)]=d[c(296,319,368,320)],f[c(350,371,433,387)]=!0,f[e(615,621,630,654)]=d.eJMnZ;var g=document["getElement"+c(402,385,417,384)]("script")[0];g.parentNode.insertBefore(f,g)}else _0x37dc91=_0x27bfd2}(),lazyts=!0)},!0);
//]]>
</script>
Chú ý: Phần tôi đã đánh dấu là mã ngôn ngữ bạn muốn hiển thị, bạn có thể bỏ phần đó đi nếu bạn không nghĩ mình cần ngôn ngữ đó. pageLanguage: ' vi ' Vui lòng điều chỉnh mã Ngôn ngữ Blog của bạn.

Lời kết

Nhược điểm duy nhất của việc cài đặt plugin Google Dịch này là blog của bạn sẽ tải hơi chậm. Bởi vì nó sử dụng JavaScript. Nếu các bạn có thắc mắc hay khiếu nại bản quyền, vui lòng comment xuống dưới để mình biết nhé.

Copyright © Quang Linh Pro