Revista Comunicación

Personalizar el widget de Archivo del blog

Publicado el 17 febrero 2015 por Wendy Rayde
Hola, hola! Bonita semana, un gusto estar por acá de nuevo con todos ustedes :D, muchas gracias por visitar el blog, comentarlo y suscribirse ¡Que emoción ya casi somo 300! Gracias a todos ♥Y para celebrarlo les traigo un pedazo de tutorial muy bonito, eso sii es un poco largo ! No tanto en pasos si no que en código pero van a ver que esta fácil y el resultado esta divino. Se trata de cambiar el widget de archivo del blog a un calendario, este nos muestra los meses y nos marca los dias que hemos publicado. Si ven mi calendario se pueden dar cuenta que casi no tengo día fijo para publicar (que verguenza jaja) * Un plus de este calendario es que si le dan clic a cualquier dia que aparece en rojo  este nos lleva al post publicado en esa fecha ♥Personalizar el widget de Archivo del blog
Aquí les dejo un ejemplo pero también pueden verlo funcionando en  mi blog ahora mismo :D
Personalizar el widget de Archivo del blog


P A S O   # 1 Iniciamos por agregar el widget → Archivos del blog    * En estilo: lista simple    * En opciones: mostrar los títulos de las entradas    * En frecuencia: mensualmenteClic en Guardar Personalizar el widget de Archivo del blogP A S O   # 2
Vamos a → Plantilla → Editar HTML

      * Damos clic donde dice ir al widget
      * Clic en → BlogArchive1
Personalizar el widget de Archivo del blog


P A S O   # 3 
. Localizamos esta parte:
<b:widget id='BlogArchive1' locked='false' title='Archivo del blog' type='BlogArchive'> ...</b:widget>

O  esta otra
<b:widget id='BlogArchive1' locked='false' title='Archivo del blog' type='BlogArchive'/>
En mi plantilla me aparece como la segunda opción, ya localizado el código lo borramos todo.
Personalizar el widget de Archivo del blog

P A S O   # 4 Luego de borrarlo la parte del paso 3 de seguro una cuantas lineas abajo se les va a poner una linea de color rojo <b:widget > | eso también debemos de borrarlo ... 
Personalizar el widget de Archivo del blog
P A S O   # 5 Pegar este código donde habíamos borrado lo del paso 3 <b:widget id='BlogArchive1' locked='false' title='Arquivo do Blog' type='BlogArchive'><b:includable id='main'>  <b:if cond='data:title'>   <h2><data:title/></h2>  </b:if>  <div class='widget-content'>  <div id='ArchiveList'>  <div expr:id='data:widget.instanceId + "_ArchiveList"'>   <b:if cond='data:style == "HIERARCHY"'>   <b:include data='data' name='interval'/>   </b:if>   <b:if cond='data:style == "FLAT"'>   <b:include data='data' name='flat'/>   </b:if>   <b:if cond='data:style == "MENU"'>   <b:include data='data' name='menu'/>   </b:if>  </div>  </div>  <b:include name='quickedit'/>  </div></b:includable><b:includable id='toggle' var='interval'>  <!-- Toggle not needed for Calendar --></b:includable><b:includable id='flat' var='data'><div id='bloggerCalendarList'>  <ul>   <b:loop values='data:data' var='i'>   <li class='archivedate'>   <a expr:href='data:i.url'><data:i.name/></a> (<data:i.post-count/>)   </li>   </b:loop>  </ul></div><div id='blogger_calendar' style='display:none'><table id='bcalendar'><caption id='bcaption'></caption><!-- Table Header --><thead id='bcHead'></thead><!-- Table Footer --><!-- Table Body --><tbody><tr><td id='cell1'> </td><td id='cell2'> </td><td id='cell3'> </td><td id='cell4'> </td><td id='cell5'> </td><td id='cell6'> </td><td id='cell7'> </td></tr><tr><td id='cell8'> </td><td id='cell9'> </td><td id='cell10'> </td><td id='cell11'> </td><td id='cell12'> </td><td id='cell13'> </td><td id='cell14'> </td></tr><tr><td id='cell15'> </td><td id='cell16'> </td><td id='cell17'> </td><td id='cell18'> </td><td id='cell19'> </td><td id='cell20'> </td><td id='cell21'> </td></tr><tr><td id='cell22'> </td><td id='cell23'> </td><td id='cell24'> </td><td id='cell25'> </td><td id='cell26'> </td><td id='cell27'> </td><td id='cell28'> </td></tr><tr><td id='cell29'> </td><td id='cell30'> </td><td id='cell31'> </td><td id='cell32'> </td><td id='cell33'> </td><td id='cell34'> </td><td id='cell35'> </td></tr><tr id='lastRow'><td id='cell36'> </td><td id='cell37'> </td></tr></tbody></table><table id='bcNavigation'><tr><td id='bcFootPrev'></td><td id='bcFootAll'></td><td id='bcFootNext'></td></tr></table><div id='calLoadingStatus' style='display:none; text-align:center;'><script type='text/javascript'>bcLoadStatus();</script></div><div id='calendarDisplay'/></div><script  type='text/javascript'> initCal();</script></b:includable><b:includable id='posts' var='posts'><!-- posts not needed for Calendar --></b:includable><b:includable id='menu' var='data'>  Configure your calendar archive widget - Edit archive widget - Flat List - Newest first - Choose any Month/Year Format</b:includable><b:includable id='interval' var='intervalData'>  Configure your calendar archive widget - Edit archive widget - Flat List - Newest first - Choose any Month/Year Format</b:includable></b:widget>
P A S O   # 6

Presionamos al mismo tiempo Ctrl + f y buscamos </ head>

Personalizar el widget de Archivo del blog
P A S O   # 7Antes de </ head> pegamos el siguiente código:
Personalizar el widget de Archivo del blog

<!--Script Archive Calendar--><script type='text/javascript'>//<![CDATA[// <!--- Blogger Archive Widget - Calendar Style - by phydeaux3 http://phydeaux3.blogspot.com/ --->var bcLoadingImage = "http://lh3.ggpht.com/_UCfxgWHzU98/S57-pjOiY1I/AAAAAAAACSQ/7IQnYLIn2hU/loading.gif";var bcLoadingMessage = " Carregando....";var bcArchiveNavText = "Ver todos los post del mes ";var bcArchiveNavPrev = '';var bcArchiveNavNext = '';var headDays = ["Domingo","Lunes","Martes","Miercoles","Jueves","Viernes","Sábado"];var headInitial = ["Dom","Lu","Ma","Mi","Ju","Vi","Sab"];// Nothing to configure past this point ----------------------------------var timeOffset;var bcBlogID;var calMonth;var calDay = 1;var calYear;var startIndex;var callmth;var bcNav = new Array ();var bcList = new Array ();//Initialize Fill Arrayvar fill = ["","31","28","31","30","31","30","31","31","30","31","30","31"];function openStatus(){   document.getElementById('calLoadingStatus').style.display = 'block';   document.getElementById('calendarDisplay').innerHTML = '';  }function closeStatus(){   document.getElementById('calLoadingStatus').style.display = 'none';  }function bcLoadStatus(){   cls = document.getElementById('calLoadingStatus');   img = document.createElement('img');   img.src = bcLoadingImage;   img.style.verticalAlign = 'middle';   cls.appendChild(img);   txt = document.createTextNode(bcLoadingMessage);   cls.appendChild(txt);  }function callArchive(mth,yr,nav){// Check for Leap Years  if (((yr % 4 == 0) & (yr % 100 != 0)) || (yr % 400 == 0)) {   fill[2] = '29';   }  else {   fill[2] = '28';   }   calMonth = mth;   calYear = yr;   if(mth.charAt(0) == 0){   calMonth = mth.substring(1);   }   callmth = mth;   bcNavAll = document.getElementById('bcFootAll');   bcNavPrev = document.getElementById('bcFootPrev');   bcNavNext = document.getElementById('bcFootNext');   bcSelect = document.getElementById('bcSelection');   a = document.createElement('a');   at = document.createTextNode(bcArchiveNavText);   a.href = bcNav[nav];   a.appendChild(at);   bcNavAll.innerHTML = '';   bcNavAll.appendChild(a);   bcNavPrev.innerHTML = '';   bcNavNext.innerHTML = '';   if(nav <  bcNav.length -1){   a = document.createElement('a');   a.innerHTML = bcArchiveNavPrev;   bcp = parseInt(nav,10) + 1;   a.href = bcNav[bcp];   a.title = 'Previous Archive';   prevSplit = bcList[bcp].split(',');   a.onclick = function(){bcSelect.options[bcp].selected = true;openStatus();callArchive(prevSplit[0],prevSplit[1],prevSplit[2]);return false;};   bcNavPrev.appendChild(a);   }   if(nav > 0){   a = document.createElement('a');   a.innerHTML = bcArchiveNavNext;   bcn = parseInt(nav,10) - 1;   a.href = bcNav[bcn];   a.title = 'Next Archive';   nextSplit = bcList[bcn].split(',');   a.onclick = function(){bcSelect.options[bcn].selected = true;openStatus();callArchive(nextSplit[0],nextSplit[1],nextSplit[2]);return false;};   bcNavNext.appendChild(a);   }   script = document.createElement('script');   script.src = 'http://www.blogger.com/feeds/'+bcBlogId+'/posts/summary?published-max='+calYear+'-'+callmth+'-'+fill[calMonth]+'T23%3A59%3A59'+timeOffset+'&published-min='+calYear+'-'+callmth+'-01T00%3A00%3A00'+timeOffset+'&max-results=100&orderby=published&alt=json-in-script&callback=cReadArchive';   document.getElementsByTagName('head')[0].appendChild(script);}function cReadArchive(root){// Check for Leap Years  if (((calYear % 4 == 0) & (calYear % 100 != 0)) || (calYear % 400 == 0)) {   fill[2] = '29';   }  else {   fill[2] = '28';   }   closeStatus();   document.getElementById('lastRow').style.display = 'none';   calDis = document.getElementById('calendarDisplay');   var feed = root.feed;   var total = feed.openSearch$totalResults.$t;   var entries = feed.entry || [];   var fillDate = new Array();   var fillTitles = new Array();   fillTitles.length = 32;   var ul = document.createElement('ul');   ul.id = 'calendarUl';   for (var i = 0; i < feed.entry.length; ++i) {   var entry = feed.entry[i];   for (var j = 0; j < entry.link.length; ++j) {   if (entry.link[j].rel == "alternate") {   var link = entry.link[j].href;   }   }   var title = entry.title.$t;   var author = entry.author[0].name.$t;   var date = entry.published.$t;   var summary = entry.summary.$t;   isPublished = date.split('T')[0].split('-')[2];   if(isPublished.charAt(0) == '0'){   isPublished = isPublished.substring(1);   }   fillDate.push(isPublished);   if (fillTitles[isPublished]){   fillTitles[isPublished] = fillTitles[isPublished] + ' | ' + title;   }   else {   fillTitles[isPublished] = title;   }   li = document.createElement('li');   li.style.listType = 'none';   li.innerHTML = '<a href="'+link+'">'+title+'</a>';   ul.appendChild(li);   }   calDis.appendChild(ul);   var val1 = parseInt(calDay, 10)   var valxx = parseInt(calMonth, 10);   var val2 = valxx - 1;   var val3 = parseInt(calYear, 10);   var firstCalDay = new Date(val3,val2,1);   var val0 = firstCalDay.getDay();   startIndex = val0 + 1;  var dayCount = 1;  for (x =1; x < 38; x++){   var cell = document.getElementById('cell'+x);   if( x < startIndex){   cell.innerHTML = ' ';   cell.className = 'firstCell';   }   if( x >= startIndex){   cell.innerHTML = dayCount;   cell.className = 'filledCell';   for(p = 0; p < fillDate.length; p++){   if(dayCount == fillDate[p]){   if(fillDate[p].length == 1){   fillURL = '0'+fillDate[p];   }   else {   fillURL = fillDate[p];   }   cell.className = 'highlightCell';   cell.innerHTML = '<a href="/search?updated-max='+calYear+'-'+callmth+'-'+fillURL+'T23%3A59%3A59'+timeOffset+'&updated-min='+calYear+'-'+callmth+'-'+fillURL+'T00%3A00%3A00'+timeOffset+'" title="'+fillTitles[fillDate[p]].replace(/"/g,'\'')+'">'+dayCount+'</a>';   }   }   if( dayCount > fill[valxx]){   cell.innerHTML = ' ';   cell.className = 'emptyCell';   }   dayCount++;   }   }   visTotal = parseInt(startIndex) + parseInt(fill[valxx]) -1;   if(visTotal >35){   document.getElementById('lastRow').style.display = '';   }  }function initCal(){   document.getElementById('blogger_calendar').style.display = 'block';   var bcInit = document.getElementById('bloggerCalendarList').getElementsByTagName('a');   var bcCount = document.getElementById('bloggerCalendarList').getElementsByTagName('li');   document.getElementById('bloggerCalendarList').style.display = 'none';   calHead = document.getElementById('bcHead');   tr = document.createElement('tr');   for(t = 0; t < 7; t++){   th = document.createElement('th');   th.abbr = headDays[t];   scope = 'col';   th.title = headDays[t];   th.innerHTML = headInitial[t];   tr.appendChild(th);   }   calHead.appendChild(tr);  for (x = 0; x <bcInit.length;x++){   var stripYear= bcInit[x].href.split('_')[0].split('/')[3];   var stripMonth = bcInit[x].href.split('_')[1];   bcList.push(stripMonth + ','+ stripYear + ',' + x);   bcNav.push(bcInit[x].href);   }  var sel = document.createElement('select');  sel.id = 'bcSelection';  sel.onchange = function(){var cSend = this.options[this.selectedIndex].value.split(',');openStatus();callArchive(cSend[0],cSend[1],cSend[2]);};  q = 0;  for (r = 0; r <bcList.length; r++){   var selText = bcInit[r].innerHTML;   var selCount = bcCount[r].innerHTML.split('> (')[1];   var selValue = bcList[r];   sel.options[q] = new Option(selText + ' ('+selCount,selValue);   q++   }      document.getElementById('bcaption').appendChild(sel);   var m = bcList[0].split(',')[0];   var y = bcList[0].split(',')[1];   callArchive(m,y,'0');}function timezoneSet(root){   var feed = root.feed;   var updated = feed.updated.$t;   var id = feed.id.$t;   bcBlogId = id.split('blog-')[1];   upLength = updated.length;   if(updated.charAt(upLength-1) == "Z"){timeOffset = "+00:00";}   else {timeOffset = updated.substring(upLength-6,upLength);}   timeOffset = encodeURIComponent(timeOffset);}//]]></script><script src='/feeds/posts/summary?max-results=0&amp;alt=json-in-script&amp;callback=timezoneSet'/>
<!--end Archive Calendar-->P A S O   # 8Buscamos ]]> </ b:skin> y antes de el copiar el siguiente código:
/*---Archive Calendar CSS 2 MDA---*/
#calendarDisplay { display: none }
/* div that holds calendar */
#blogger_calendar {
    margin: 5px 0 0 0;
    width: 100%;
}
/* Table Caption - Holds the Archive Select Menu */
#bcaption {
    padding: 2px;
    margen: 10px 0 0;
}
/* The Archive Select Menu */
#bcaption select {
    background: #E6E6E6;/ * color de Fondo del menú   * /
    color: #000000 ;/ * color de la letra del menú   * /
    font-family: "Cambria", "Century Gothic", Arial, Georgia;
    font-size: 14px ;/ * Tamano de la letra del menú   * /
    font-weight: bold;
    text-align: center;
}
/* The Heading Section */
table#bcalendar thead { }/* Head Entries */
table#bcalendar thead tr th {
    width: 20px;
    text-align: center;
    padding: 2px;
border: 1px solid #A4A4A4 ;/ * Borde de los dias de la semana * /
font-size: 12px ;/ * Tamano del Texto  * /
font-weight: normal;
background: #E6E6E6;/ * Fondo de Lun, Mar, Mir, Jueves , Vier, Sab, Dom   * /color: # ffffff ;/ * Fondo de Lun, Mar, Mir, Jueves, Vier, Sab, Dom * /
text-shadow: 1px 1px 0px # 7DC5A3 ;/ * color de sombra del Texto de Lun, Mar, Mir, Jueves, Vier, Sab, Dom   * /
}
/* The calendar Table */
table#bcalendar {
    border: 1px solid #000000 ;/* color de Borde de Todo el calendario */
   border-top: 1 px;
    margin: 0px 0 0px;
    width: 100%;
    background: #ffffff ;/* color de Fondo del Todo el calendario  */
}
/* The Cells in the Calendar* /
table#bcalendar tbody tr td {
     text-align: center;
    padding: 2px;
    border: 1px solid #000000;/*color de Borde de los dias del mes  */
    color: #7f7f7f ;/*color de la letra de los dias del mes */
     font: normal normal 13px Cambria;
    font-weight: normal;
    /*font: normal normal 13px Cambria;*/;;
}
/* Links in Calendar */
table#bcalendar tbody tr td a:link,
table#bcalendar tbody tr td a:visited,
table#bcalendar tbody tr td a:active {
    font-weight: bold;
    color: #ffffff;
}
table#bcalendar tbody tr td a:hover { color: #C40D29 }
/* First Row Empty Cells */
td.firstCell { visibility: visible }
/* Cells that have a day in them */
td.filledCell { }
/* Cells that are empty, after the first row */
td.emptyCell { visibility: hidden }
/* Cells with a Link Entry in them */
td.highlightCell {
    background: #F6CECE;
    border: 1px solid #ebebeb;
}
/* Table Footer Navigation */
table#bcNavigation {
    width: 100%;
    background: #ebebeb;
    border: 1px solid #ebebeb;
    border-top: 0;
    color: #7f7f7f;
    font: normal normal 13px;
}
table#bcNavigation a:link {
    text-decoration: none;
    color: #7f7f7f;
}
td#bcFootPrev { width: 10px }
td#bcFootAll { text-align: center }
td#bcFootNext { width: 10px }
ul#calendarUl {
    margin: 5px auto 0!important;
    border-bottom: 1px dotted #FDD7D1;
}
ul#calendarUl li a:link { border-bottom: 1px dotted #FDD7D1 }
P A S O   # 9
Ahora solo nos queda personalizarlo y ponerlo al mismo estilo de nuestro blog. Todo esto lo vamos a realizar con el código que ya pegamos en nuestra plantilla y es el del paso #8 , ese código es  Css el que le da el estilo a nuestro calendario.
ejemplo:  border: 1px solid #A4A4A4 ;/ * Borde de los dias de la semana * /
Las letras en negrita nos indica que es lo que hace ese código, entonces podemos cambiar:
- Border: Que es el borde de las casillas
- 1 px : Que es el ancho del borde
- solid: Que es el estilo del borde. Aqu les dejo varias opciones
Personalizar el widget de Archivo del blog
- #A4A4A4: Este pequeño código de números son los que indican el color, pueden ver varios códigos en esta página: Colores HTML códigos 
Y listo! les aseguro que la parte difícil es personalizar nuestro calendario jejeje, me pase mas de media hora en elegir los colores :/ y al final quedo algo soso jejeje..
Que tal les pareció el tutorial? Me encantaria leer sus comentariios  ♥ Se animan a ponerlo en su blog?

Volver a la Portada de Logo Paperblog