{"id":7406,"date":"2026-05-23T16:21:34","date_gmt":"2026-05-23T16:21:34","guid":{"rendered":"https:\/\/utla.edu.sv\/2026\/?page_id=7406"},"modified":"2026-05-23T16:33:39","modified_gmt":"2026-05-23T16:33:39","slug":"copia-de-calendario-academico","status":"publish","type":"page","link":"https:\/\/utla.edu.sv\/2026\/?page_id=7406","title":{"rendered":"Bolsa de Empleo"},"content":{"rendered":"\n<div id=\"instructions\" class=\"wp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<!-- =====================================================\n     UTLA \u2014 Bolsa de Empleo\n     ===================================================== -->\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Be+Vietnam+Pro:wght@300;400;500;600;700;800;900&#038;display=swap\" rel=\"stylesheet\">\n<style>\n#utla-be*,#utla-be*::before,#utla-be*::after{box-sizing:border-box;margin:0;padding:0}\n#utla-be{\n  font-family:'Be Vietnam Pro',sans-serif;\n  background:#f4f6f9;color:#1c2b3a;\n  width:100vw!important;max-width:100vw!important;\n  position:relative!important;left:50%!important;\n  margin-left:-50vw!important;overflow-x:hidden;\n  padding-bottom:72px;\n}\n\n\/* \u2500\u2500 HERO \u2500\u2500 *\/\n.be-hero{background:#003153;padding:60px 6% 52px;position:relative;overflow:hidden;}\n.be-hero::after{content:'';position:absolute;top:0;right:0;width:40%;height:100%;\n  background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);\n  background-size:20px 20px;pointer-events:none;}\n.be-hero-inner{max-width:1200px;margin:0 auto;position:relative;z-index:1;\n  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;}\n.be-hero-tag{display:inline-flex;align-items:center;gap:8px;\n  background:rgba(109,34,46,.75);color:#fff;font-size:10px;font-weight:700;\n  letter-spacing:.18em;text-transform:uppercase;padding:5px 14px;border-radius:2px;margin-bottom:16px;}\n.be-hero h1{font-size:clamp(26px,4vw,44px);font-weight:900;color:#fff;\n  line-height:1.1;letter-spacing:-.025em;margin-bottom:10px;}\n.be-hero h1 em{font-style:normal;color:#81c3d7;}\n.be-hero-sub{font-size:15px;font-weight:300;color:rgba(255,255,255,.65);\n  max-width:500px;line-height:1.75;}\n.be-hero-stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);\n  border-radius:10px;padding:16px 24px;text-align:center;flex-shrink:0;}\n.be-hero-num{font-size:32px;font-weight:900;color:#81c3d7;line-height:1;}\n.be-hero-lbl{font-size:10px;font-weight:600;color:rgba(255,255,255,.5);\n  text-transform:uppercase;letter-spacing:.1em;margin-top:4px;}\n\n\/* \u2500\u2500 CUERPO \u2500\u2500 *\/\n.be-body{max-width:1200px;margin:0 auto;padding:40px 6% 0;}\n\n\/* Loading *\/\n.be-loading{text-align:center;padding:72px 0;color:#5a6a7a;}\n.be-dot{display:inline-block;width:8px;height:8px;border-radius:50%;\n  background:#003153;margin:0 3px;animation:beDot 1.2s infinite ease-in-out;}\n.be-dot:nth-child(2){animation-delay:.2s;}.be-dot:nth-child(3){animation-delay:.4s;}\n@keyframes beDot{0%,80%,100%{transform:scale(0);opacity:.3}40%{transform:scale(1);opacity:1}}\n\n\/* Grid *\/\n.be-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}\n\n\/* \u2500\u2500 TARJETA \u2500\u2500 *\/\n.be-card{background:#fff;border-radius:12px;border:1px solid #e2e8f0;\n  overflow:hidden;display:flex;flex-direction:column;\n  transition:transform .2s,box-shadow .2s,border-color .2s;}\n.be-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,49,83,.1);border-color:#003153;}\n.be-card-accent{height:4px;background:linear-gradient(90deg,#6d222e,#003153);}\n.be-card-head{padding:18px 20px 14px;background:#fff;border-bottom:1px solid #f1f5f9;}\n.be-empresa{font-size:10px;font-weight:700;letter-spacing:.14em;\n  text-transform:uppercase;color:#6d222e;margin-bottom:5px;}\n.be-vacante{font-size:15px;font-weight:800;color:#002347;line-height:1.25;}\n.be-card-body{padding:16px 20px;flex:1;display:flex;flex-direction:column;gap:13px;background:#f8fafc;}\n.be-field-lbl{font-size:9px;font-weight:700;letter-spacing:.16em;\n  text-transform:uppercase;color:#6d222e;margin-bottom:4px;}\n.be-field-val{font-size:12.5px;font-weight:300;color:#4a5a6a;line-height:1.7;}\n.be-card-foot{padding:14px 20px;background:#fff;border-top:1px solid #f1f5f9;\n  display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;}\n.be-contacto{font-size:11.5px;color:#5a6a7a;line-height:1.5;flex:1;}\n.be-contacto b{color:#002347;display:block;font-weight:700;}\n.be-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;\n  background:#003153;color:#fff;border-radius:7px;\n  font-family:'Be Vietnam Pro',sans-serif;font-size:11px;font-weight:700;\n  text-decoration:none;text-transform:uppercase;letter-spacing:.05em;\n  white-space:nowrap;transition:background .18s,transform .15s;flex-shrink:0;}\n.be-btn:hover{background:#6d222e;transform:translateY(-1px);}\n.be-btn svg{width:11px;height:11px;stroke:#fff;fill:none;\n  stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;}\n\n.be-empty{text-align:center;padding:72px 20px;color:#5a6a7a;font-size:14px;}\n\n@media(max-width:1024px){.be-grid{grid-template-columns:repeat(2,1fr);}}\n@media(max-width:640px){\n  .be-grid{grid-template-columns:1fr;}\n  .be-hero{padding:48px 5%;}\n  .be-body{padding:28px 5% 0;}\n}\n<\/style>\n\n<div id=\"utla-be\">\n\n  <div class=\"be-hero\">\n    <div class=\"be-hero-inner\">\n      <div>\n        <div class=\"be-hero-tag\">Bienestar Estudiantil \u00b7 UTLA<\/div>\n        <h1>Bolsa de <em>Empleo<\/em><\/h1>\n        <p class=\"be-hero-sub\">Oportunidades laborales para la comunidad universitaria. Informaci\u00f3n actualizada por Bienestar Estudiantil.<\/p>\n      <\/div>\n      <div class=\"be-hero-stat\">\n        <div class=\"be-hero-num\" id=\"be-total\">\u2014<\/div>\n        <div class=\"be-hero-lbl\">Vacantes disponibles<\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <div class=\"be-body\">\n    <div id=\"be-loading\" class=\"be-loading\">\n      <span class=\"be-dot\"><\/span><span class=\"be-dot\"><\/span><span class=\"be-dot\"><\/span>\n      <p style=\"margin-top:16px;font-size:14px;\">Cargando vacantes\u2026<\/p>\n    <\/div>\n    <div id=\"be-grid\" class=\"be-grid\" style=\"display:none;\"><\/div>\n    <div id=\"be-empty\" class=\"be-empty\" style=\"display:none;\">No hay vacantes disponibles en este momento.<\/div>\n  <\/div>\n\n<\/div>\n\n<script>\n(function(){\n  var CSV='https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vRBzFpGySmxYG9IyX3eS3buCU2fNZoHP02IqDfnxbPY2BeL9xONbIsvXWF9G_K6uCKPYVQSKg39Cvmw\/pub?gid=0&single=true&output=csv';\n\n  function parseCSV(t){\n    var rows=[],cur='',inQ=false,row=[];\n    for(var i=0;i<t.length;i++){\n      var c=t[i];\n      if(c==='\"'){inQ=!inQ;}\n      else if(c===','&#038;&#038;!inQ){row.push(cur.trim());cur='';}\n      else if((c==='\\n'||c==='\\r')&#038;&#038;!inQ){\n        if(cur!==''||row.length){row.push(cur.trim());rows.push(row);}\n        cur='';row=[];if(c==='\\r'&#038;&#038;t[i+1]==='\\n')i++;\n      }else{cur+=c;}\n    }\n    if(cur!==''||row.length){row.push(cur.trim());rows.push(row);}\n    return rows;\n  }\n\n  function esc(s){return String(s).replace(\/&#038;\/g,'&amp;').replace(\/<\/g,'&lt;').replace(\/>\/g,'&gt;').replace(\/\"\/g,'&quot;');}\n\n  fetch(CSV)\n    .then(function(r){return r.text();})\n    .then(function(txt){\n      var rows=parseCSV(txt);\n      var jobs=[];\n      for(var i=1;i<rows.length;i++){\n        var r=rows[i];\n        if(!r[1]&#038;&#038;!r[2])continue;\n        jobs.push({empresa:r[1]||'',vacante:r[2]||'',funciones:r[3]||'',\n          requisitos:r[4]||'',beneficios:r[5]||'',contacto:r[6]||'',enlace:r[9]||''});\n      }\n      document.getElementById('be-total').textContent=jobs.length;\n      document.getElementById('be-loading').style.display='none';\n      if(!jobs.length){document.getElementById('be-empty').style.display='block';return;}\n      var grid=document.getElementById('be-grid');\n      grid.style.display='grid';\n      grid.innerHTML=jobs.map(function(j){\n        var btn=j.enlace\n          ?'<a href=\"'+esc(j.enlace)+'\" target=\"_blank\" rel=\"noopener\" class=\"be-btn\">Ver oferta<svg viewBox=\"0 0 24 24\"><path d=\"M5 12h14M12 5l7 7-7 7\"\/><\/svg><\/a>'\n          :'';\n        return '<div class=\"be-card\">'\n          +'<div class=\"be-card-accent\"><\/div>'\n          +'<div class=\"be-card-head\">'\n          +'<div class=\"be-empresa\">'+esc(j.empresa)+'<\/div>'\n          +'<div class=\"be-vacante\">'+esc(j.vacante)+'<\/div>'\n          +'<\/div>'\n          +'<div class=\"be-card-body\">'\n          +(j.funciones?'<div><div class=\"be-field-lbl\">Principales funciones<\/div><div class=\"be-field-val\">'+esc(j.funciones)+'<\/div><\/div>':'')\n          +(j.requisitos?'<div><div class=\"be-field-lbl\">Requisitos<\/div><div class=\"be-field-val\">'+esc(j.requisitos)+'<\/div><\/div>':'')\n          +(j.beneficios?'<div><div class=\"be-field-lbl\">Beneficios<\/div><div class=\"be-field-val\">'+esc(j.beneficios)+'<\/div><\/div>':'')\n          +'<\/div>'\n          +'<div class=\"be-card-foot\">'\n          +(j.contacto?'<div class=\"be-contacto\"><b>Contacto<\/b>'+esc(j.contacto)+'<\/div>':'<div><\/div>')\n          +btn\n          +'<\/div><\/div>';\n      }).join('');\n    })\n    .catch(function(){\n      document.getElementById('be-loading').style.display='none';\n      document.getElementById('be-empty').style.display='block';\n    });\n\n  function stretch(){\n    var el=document.getElementById('utla-be');if(!el)return;\n    el.style.marginLeft='0';el.style.width='auto';el.style.maxWidth='none';\n    var rect=el.getBoundingClientRect();\n    el.style.marginLeft='-'+rect.left+'px';\n    el.style.width=document.documentElement.clientWidth+'px';\n    document.documentElement.style.overflowX='hidden';\n    document.body.style.overflowX='hidden';\n    var p=el.parentElement;\n    while(p&&p!==document.body){\n      var s=window.getComputedStyle(p);\n      if(s.overflow==='hidden'||s.overflowX==='hidden'){p.style.overflow='visible';p.style.overflowX='visible';}\n      p=p.parentElement;\n    }\n  }\n  stretch();setTimeout(stretch,400);\n  window.addEventListener('resize',stretch);\n})();\n<\/script>\n<\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bienestar Estudiantil \u00b7 UTLA Bolsa de Empleo Oportunidades laborales para la comunidad universitaria. Informaci\u00f3n actualizada por Bienestar Estudiantil. \u2014 Vacantes disponibles Cargando vacantes\u2026 No hay vacantes disponibles en este momento.<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"no-title","meta":{"footnotes":""},"class_list":["post-7406","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/utla.edu.sv\/2026\/index.php?rest_route=\/wp\/v2\/pages\/7406","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/utla.edu.sv\/2026\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/utla.edu.sv\/2026\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/utla.edu.sv\/2026\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/utla.edu.sv\/2026\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=7406"}],"version-history":[{"count":4,"href":"https:\/\/utla.edu.sv\/2026\/index.php?rest_route=\/wp\/v2\/pages\/7406\/revisions"}],"predecessor-version":[{"id":7410,"href":"https:\/\/utla.edu.sv\/2026\/index.php?rest_route=\/wp\/v2\/pages\/7406\/revisions\/7410"}],"wp:attachment":[{"href":"https:\/\/utla.edu.sv\/2026\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=7406"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}