Gracias por acompañarme en este año. ¡Los espero en el próximo!

[+/-] |
Y llega un nuevo año... |
Publicado por Anónimo a las 14:21 h. Etiquetas: Cosas mias
[+/-] |
Dos recursos más para el gadget de Etiquetas |
#Label1 ul li{
float: left;
width: 45%;
}
<b:widget id='Label1' locked='false' title='Etiquetas' type='Label'>
(<data:label.count/>)
(<b:if cond='data:showFreqNumbers == 0'>
entradas
<b:else/>
<b:if cond='data:label.count == 1'>
1 entrada
<b:else/>
<data:label.count/> entradas
</b:if>
</b:if>)
[+/-] |
Nieve que se acumula al final de la página |
En una entrada anterior habíamos visto como conseguir un efecto de nieve en el blog mediante el uso de la etiqueta "marquee" y poco después veíamos como incluir el efecto nieve usando un script.
En esta ocasión vamos a ver de nuevo como incluir nieve en el blog mediante el uso de un script. El script irá incluido directamente en la plantilla y lo he "marcado" para que, una vez pasadas las fiestas, sea fácil su localización para retirarlo.
Este script consigue un efecto muy lindo, ya que los copos que van cayendo quedan acumulados al final de la página y mientras unos caen, los del pie de la página se van deshaciendo poco a poco...
Además si movemos el ratón por la pagina, los copos cambian de dirección como movidos por un ligero viento.
Antes de decidir si vais a usarlo o no, podéis ver una demostración online en un blog donde también e incluido el script para copiar.
Lo único que hemos de hacer para conseguir el efecto nieve, es copiar el script y colocarlo en el código de nuestra plantilla antes de </head>
<!-- Comienzo del script para nieve --><script type="text/javascript">
//<![CDATA[
/*
DHTML Snowstorm! OO-style Jascript-based Snow effect
----------------------------------------------------
Version 1.4.20091115 (Previous rev: v1.3.20081215)
Code by Scott Schiller - http://schillmania.com
----------------------------------------------------
Initializes after body onload() by default (via addEventHandler() call at bottom.)
To customize properties, edit below or override configuration after this script
has run (but before body.onload), eg. snowStorm.snowStick = false;
*/
var snowStorm = null;
function SnowStorm() {
// --- PROPERTIES ---
this.flakesMax = 150; // Limit total amount of snow made (falling + sticking)
this.flakesMaxActive = 64; // Limit amount of snow falling at once (less = lower CPU use)
this.animationInterval = 33; // Theoretical "miliseconds per frame" measurement. 20 = fast + smooth, but high CPU use. 50 = more conservative, but slower
this.flakeBottom = null; // Integer for Y axis snow limit, 0 or null for "full-screen" snow effect
this.targetElement = null; // element which snow will be appended to (document body if null/undefined) - can be an element ID string, or a DOM node reference
this.followMouse = true; // Snow will change movement with the user's mouse
this.snowColor = '#fff'; // Don't eat (or use?) yellow snow.
this.snowCharacter = '•'; // • = bullet, · is square on some systems etc.
this.snowStick = true; // Whether or not snow should "stick" at the bottom. When off, will never collect.
this.useMeltEffect = true; // When recycling fallen snow (or rarely, when falling), have it "melt" and fade out if browser supports it
this.useTwinkleEffect = false; // Allow snow to randomly "flicker" in and out of view while falling
this.usePositionFixed = false; // true = snow not affected by window scroll. may increase CPU load, disabled by default - if enabled, used only where supported
// --- less-used bits ---
this.flakeLeftOffset = 0; // amount to subtract from edges of container
this.flakeRightOffset = 0; // amount to subtract from edges of container
this.flakeWidth = 8; // max pixel width for snow element
this.flakeHeight = 8; // max pixel height for snow element
this.vMaxX = 5; // Maximum X velocity range for snow
this.vMaxY = 4; // Maximum Y velocity range
this.zIndex = 0; // CSS stacking order applied to each snowflake
// --- End of user section ---
// jslint global declarations
/*global window, document, navigator, clearInterval, setInterval */
var addEvent = (typeof(window.attachEvent)=='undefined'?function(o,evtName,evtHandler) {
return o.addEventListener(evtName,evtHandler,false);
}:function(o,evtName,evtHandler) {
return o.attachEvent('on'+evtName,evtHandler);
});
var removeEvent = (typeof(window.attachEvent)=='undefined'?function(o,evtName,evtHandler) {
return o.removeEventListener(evtName,evtHandler,false);
}:function(o,evtName,evtHandler) {
return o.detachEvent('on'+evtName,evtHandler);
});
function rnd(n,min) {
if (isNaN(min)) {
min = 0;
}
return (Math.random()*n)+min;
}
function plusMinus(n) {
return (parseInt(rnd(2),10)==1?n*-1:n);
}
var s = this;
var storm = this;
this.timers = [];
this.flakes = [];
this.disabled = false;
this.active = false;
var isIE = navigator.userAgent.match(/msie/i);
var isIE6 = navigator.userAgent.match(/msie 6/i);
var isOldIE = (isIE && (isIE6 || navigator.userAgent.match(/msie 5/i)));
var isWin9X = navigator.appVersion.match(/windows 98/i);
var isiPhone = navigator.userAgent.match(/iphone/i);
var isBackCompatIE = (isIE && document.compatMode == 'BackCompat');
var noFixed = ((isBackCompatIE || isIE6 || isiPhone)?true:false);
var screenX = null;
var screenX2 = null;
var screenY = null;
var scrollY = null;
var vRndX = null;
var vRndY = null;
var windOffset = 1;
var windMultiplier = 2;
var flakeTypes = 6;
var fixedForEverything = false;
var opacitySupported = (function(){
try {
document.createElement('div').style.opacity = '0.5';
} catch (e) {
return false;
}
return true;
})();
var docFrag = document.createDocumentFragment();
if (s.flakeLeftOffset === null) {
s.flakeLeftOffset = 0;
}
if (s.flakeRightOffset === null) {
s.flakeRightOffset = 0;
}
this.meltFrameCount = 20;
this.meltFrames = [];
for (var i=0; i<this.meltFrameCount; i++) {
this.meltFrames.push(1-(i/this.meltFrameCount));
}
this.randomizeWind = function() {
vRndX = plusMinus(rnd(s.vMaxX,0.2));
vRndY = rnd(s.vMaxY,0.2);
if (this.flakes) {
for (var i=0; i<this.flakes.length; i++) {
if (this.flakes[i].active) {
this.flakes[i].setVelocities();
}
}
}
};
this.scrollHandler = function() {
// "attach" snowflakes to bottom of window if no absolute bottom value was given
scrollY = (s.flakeBottom?0:parseInt(window.scrollY||document.documentElement.scrollTop||document.body.scrollTop,10));
if (isNaN(scrollY)) {
scrollY = 0; // Netscape 6 scroll fix
}
if (!fixedForEverything && !s.flakeBottom && s.flakes) {
for (var i=s.flakes.length; i--;) {
if (s.flakes[i].active === 0) {
s.flakes[i].stick();
}
}
}
};
this.resizeHandler = function() {
if (window.innerWidth || window.innerHeight) {
screenX = window.innerWidth-(!isIE?16:2)-s.flakeRightOffset;
screenY = (s.flakeBottom?s.flakeBottom:window.innerHeight);
} else {
screenX = (document.documentElement.clientWidth||document.body.clientWidth||document.body.scrollWidth)-(!isIE?8:0)-s.flakeRightOffset;
screenY = s.flakeBottom?s.flakeBottom:(document.documentElement.clientHeight||document.body.clientHeight||document.body.scrollHeight);
}
screenX2 = parseInt(screenX/2,10);
};
this.resizeHandlerAlt = function() {
screenX = s.targetElement.offsetLeft+s.targetElement.offsetWidth-s.flakeRightOffset;
screenY = s.flakeBottom?s.flakeBottom:s.targetElement.offsetTop+s.targetElement.offsetHeight;
screenX2 = parseInt(screenX/2,10);
};
this.freeze = function() {
// pause animation
if (!s.disabled) {
s.disabled = 1;
} else {
return false;
}
for (var i=s.timers.length; i--;) {
clearInterval(s.timers[i]);
}
};
this.resume = function() {
if (s.disabled) {
s.disabled = 0;
} else {
return false;
}
s.timerInit();
};
this.toggleSnow = function() {
if (!s.flakes.length) {
// first run
s.start();
} else {
s.active = !s.active;
if (s.active) {
s.show();
s.resume();
} else {
s.stop();
s.freeze();
}
}
};
this.stop = function() {
this.freeze();
for (var i=this.flakes.length; i--;) {
this.flakes[i].o.style.display = 'none';
}
removeEvent(window,'scroll',s.scrollHandler);
removeEvent(window,'resize',s.resizeHandler);
if (!isOldIE) {
removeEvent(window,'blur',s.freeze);
removeEvent(window,'focus',s.resume);
}
};
this.show = function() {
for (var i=this.flakes.length; i--;) {
this.flakes[i].o.style.display = 'block';
}
};
this.SnowFlake = function(parent,type,x,y) {
var s = this;
var storm = parent;
this.type = type;
this.x = x||parseInt(rnd(screenX-20),10);
this.y = (!isNaN(y)?y:-rnd(screenY)-12);
this.vX = null;
this.vY = null;
this.vAmpTypes = [1,1.2,1.4,1.6,1.8]; // "amplification" for vX/vY (based on flake size/type)
this.vAmp = this.vAmpTypes[this.type];
this.melting = false;
this.meltFrameCount = storm.meltFrameCount;
this.meltFrames = storm.meltFrames;
this.meltFrame = 0;
this.twinkleFrame = 0;
this.active = 1;
this.fontSize = (10+(this.type/5)*10);
this.o = document.createElement('div');
this.o.innerHTML = storm.snowCharacter;
this.o.style.color = storm.snowColor;
this.o.style.position = (fixedForEverything?'fixed':'absolute');
this.o.style.width = storm.flakeWidth+'px';
this.o.style.height = storm.flakeHeight+'px';
this.o.style.fontFamily = 'arial,verdana';
this.o.style.overflow = 'hidden';
this.o.style.fontWeight = 'normal';
this.o.style.zIndex = storm.zIndex;
docFrag.appendChild(this.o);
this.refresh = function() {
if (isNaN(s.x) || isNaN(s.y)) {
// safety check
return false;
}
s.o.style.left = s.x+'px';
s.o.style.top = s.y+'px';
};
this.stick = function() {
if (noFixed || (storm.targetElement != document.documentElement && storm.targetElement != document.body)) {
s.o.style.top = (screenY+scrollY-storm.flakeHeight)+'px';
} else if (storm.flakeBottom) {
s.o.style.top = storm.flakeBottom+'px';
} else {
s.o.style.display = 'none';
s.o.style.top = 'auto';
s.o.style.bottom = '0px';
s.o.style.position = 'fixed';
s.o.style.display = 'block';
}
};
this.vCheck = function() {
if (s.vX>=0 && s.vX<0.2) {
s.vX = 0.2;
} else if (s.vX<0 && s.vX>-0.2) {
s.vX = -0.2;
}
if (s.vY>=0 && s.vY<0.2) {
s.vY = 0.2;
}
};
this.move = function() {
var vX = s.vX*windOffset;
s.x += vX;
s.y += (s.vY*s.vAmp);
if (s.x >= screenX || screenX-s.x < storm.flakeWidth) { // X-axis scroll check
s.x = 0;
} else if (vX < 0 && s.x-storm.flakeLeftOffset<0-storm.flakeWidth) {
s.x = screenX-storm.flakeWidth-1; // flakeWidth;
}
s.refresh();
var yDiff = screenY+scrollY-s.y;
if (yDiff<storm.flakeHeight) {
s.active = 0;
if (storm.snowStick) {
s.stick();
} else {
s.recycle();
}
} else {
if (storm.useMeltEffect && s.active && s.type < 3 && !s.melting && Math.random()>0.998) {
// ~1/1000 chance of melting mid-air, with each frame
s.melting = true;
s.melt();
// only incrementally melt one frame
// s.melting = false;
}
if (storm.useTwinkleEffect) {
if (!s.twinkleFrame) {
if (Math.random()>0.9) {
s.twinkleFrame = parseInt(Math.random()*20,10);
}
} else {
s.twinkleFrame--;
s.o.style.visibility = (s.twinkleFrame && s.twinkleFrame%2===0?'hidden':'visible');
}
}
}
};
this.animate = function() {
// main animation loop
// move, check status, die etc.
s.move();
};
this.setVelocities = function() {
s.vX = vRndX+rnd(storm.vMaxX*0.12,0.1);
s.vY = vRndY+rnd(storm.vMaxY*0.12,0.1);
};
this.setOpacity = function(o,opacity) {
if (!opacitySupported) {
return false;
}
o.style.opacity = opacity;
};
this.melt = function() {
if (!storm.useMeltEffect || !s.melting) {
s.recycle();
} else {
if (s.meltFrame < s.meltFrameCount) {
s.meltFrame++;
s.setOpacity(s.o,s.meltFrames[s.meltFrame]);
s.o.style.fontSize = s.fontSize-(s.fontSize*(s.meltFrame/s.meltFrameCount))+'px';
s.o.style.lineHeight = storm.flakeHeight+2+(storm.flakeHeight*0.75*(s.meltFrame/s.meltFrameCount))+'px';
} else {
s.recycle();
}
}
};
this.recycle = function() {
s.o.style.display = 'none';
s.o.style.position = (fixedForEverything?'fixed':'absolute');
s.o.style.bottom = 'auto';
s.setVelocities();
s.vCheck();
s.meltFrame = 0;
s.melting = false;
s.setOpacity(s.o,1);
s.o.style.padding = '0px';
s.o.style.margin = '0px';
s.o.style.fontSize = s.fontSize+'px';
s.o.style.lineHeight = (storm.flakeHeight+2)+'px';
s.o.style.textAlign = 'center';
s.o.style.verticalAlign = 'baseline';
s.x = parseInt(rnd(screenX-storm.flakeWidth-20),10);
s.y = parseInt(rnd(screenY)*-1,10)-storm.flakeHeight;
s.refresh();
s.o.style.display = 'block';
s.active = 1;
};
this.recycle(); // set up x/y coords etc.
this.refresh();
};
this.snow = function() {
var active = 0;
var used = 0;
var waiting = 0;
var flake = null;
for (var i=s.flakes.length; i--;) {
if (s.flakes[i].active == 1) {
s.flakes[i].move();
active++;
} else if (s.flakes[i].active === 0) {
used++;
} else {
waiting++;
}
if (s.flakes[i].melting) {
s.flakes[i].melt();
}
}
if (active<s.flakesMaxActive) {
flake = s.flakes[parseInt(rnd(s.flakes.length),10)];
if (flake.active === 0) {
flake.melting = true;
}
}
};
this.mouseMove = function(e) {
if (!s.followMouse) {
return true;
}
var x = parseInt(e.clientX,10);
if (x<screenX2) {
windOffset = -windMultiplier+(x/screenX2*windMultiplier);
} else {
x -= screenX2;
windOffset = (x/screenX2)*windMultiplier;
}
};
this.createSnow = function(limit,allowInactive) {
for (var i=0; i<limit; i++) {
s.flakes[s.flakes.length] = new s.SnowFlake(s,parseInt(rnd(flakeTypes),10));
if (allowInactive || i>s.flakesMaxActive) {
s.flakes[s.flakes.length-1].active = -1;
}
}
storm.targetElement.appendChild(docFrag);
};
this.timerInit = function() {
s.timers = (!isWin9X?[setInterval(s.snow,s.animationInterval)]:[setInterval(s.snow,s.animationInterval*3),setInterval(s.snow,s.animationInterval)]);
};
this.init = function() {
s.randomizeWind();
s.createSnow(s.flakesMax); // create initial batch
addEvent(window,'resize',s.resizeHandler);
addEvent(window,'scroll',s.scrollHandler);
if (!isOldIE) {
addEvent(window,'blur',s.freeze);
addEvent(window,'focus',s.resume);
}
s.resizeHandler();
s.scrollHandler();
if (s.followMouse) {
addEvent(document,'mousemove',s.mouseMove);
}
s.animationInterval = Math.max(20,s.animationInterval);
s.timerInit();
};
var didInit = false;
this.start = function(bFromOnLoad) {
if (!didInit) {
didInit = true;
} else if (bFromOnLoad) {
// already loaded and running
return true;
}
if (typeof s.targetElement == 'string') {
var targetID = s.targetElement;
s.targetElement = document.getElementById(targetID);
if (!s.targetElement) {
throw new Error('Snowstorm: Unable to get targetElement "'+targetID+'"');
}
}
if (!s.targetElement) {
s.targetElement = (!isIE?(document.documentElement?document.documentElement:document.body):document.body);
}
if (s.targetElement != document.documentElement && s.targetElement != document.body) {
s.resizeHandler = s.resizeHandlerAlt; // re-map handler to get element instead of screen dimensions
}
s.resizeHandler(); // get bounding box elements
s.usePositionFixed = (s.usePositionFixed && !noFixed); // whether or not position:fixed is supported
fixedForEverything = s.usePositionFixed;
if (screenX && screenY && !s.disabled) {
s.init();
s.active = true;
}
};
function doStart() {
s.start(true);
}
if (document.addEventListener) {
// safari 3.0.4 doesn't do DOMContentLoaded, maybe others - use a fallback to be safe.
document.addEventListener('DOMContentLoaded',doStart,false);
window.addEventListener('load',doStart,false);
} else {
addEvent(window,'load',doStart);
}
}
snowStorm = new SnowStorm();
//]]>
</script>
<!-- Fin del script para nieve -->
[+/-] |
Generador de mensaje de Navidad |
Una nota para felicitar las fiestas navideñas a los visitantes de vuestro blog que podéis crear fácilmente desde PagePlugins.
<embed align="middle" allowscriptaccess="samedomain" flashvars="t=Queridos amigos.&m=Deseo para todos vosotros una Feliz Navidad y un prospero 2010 cargado de felicidad. &f=&px=43.9&py=51.45&dom=http://elescaparatederosa.blogspot.com" height="320" name="Christmas Notes" pluginspage="http://www.macromedia.com/go/getflashplayer" quality="high" src="http://www.pageplugins.com/generators/christmas-note/christmasnote.swf" type="application/x-shockwave-flash" width="400" wmode="transparent"></embed>
[+/-] |
Pack de iconos navideños |
Ya está disponible para descarga en Smashing Magazine una nueva colección de iconos navideños creación de IconEden.
[+/-] |
Crear una página de fans en Facebook para tu blog |
[+/-] |
Pack de iconos "Page Peel" |
El pack contiene 16 iconos para redes sociales en formato PNG y dos tamaños (128x128 y 64x64) diseñados por Gopal Raju.
Publicado por Anónimo a las 9:43 h. Etiquetas: Iconos, Marcadores sociales
[+/-] |
Solución al diseño del gadget de suscripción |
Hace tiempo que desde Diseño podemos añadir un gadget de Blogger que permite a nuestras visitas el suscribirse a entradas y comentarios de nuestro blog.
div.subscribe div.top{filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-XyTjsncBnbcd5dyXVPusHIemAqt7Mi2KKox3NoXSC6YHnBpQ91PeWkdOKbp6NPuzg44j2HKQ3nT2tRw_DTAhoC4UZn_CY18Y376LzyheHNSNU5KfoR5SvB9qDKOsrhcxEyvU7wmkS_y7/s1600/s_top180.png',sizingMethod='crop');font-size:1em;padding:4px 5px 1px 5px;width:180px;}
html>body div.subscribe div.top{background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-XyTjsncBnbcd5dyXVPusHIemAqt7Mi2KKox3NoXSC6YHnBpQ91PeWkdOKbp6NPuzg44j2HKQ3nT2tRw_DTAhoC4UZn_CY18Y376LzyheHNSNU5KfoR5SvB9qDKOsrhcxEyvU7wmkS_y7/s1600/s_top180.png) top left no-repeat;background-color: transparent;}
div.subscribe div.bottom{filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgV_wtFJ1Y9TVjbbSd2-c2_zsoU0tH9kXChxJejruo4GLxSqxknuU0RfFTf1Hk8lTpKaCVNQxOSY6ZLpV6OsMT1_uFb8rx-8G5AGvoqDGBGjN7dbYBJLRYQ7GSyO_WS5VjsyAftNpzSrVgU/s1600/s_bottomx180.png',sizingMethod='crop');height:3px;font-size:3px;line-height:0;}
html>body div.subscribe div.bottom{background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgV_wtFJ1Y9TVjbbSd2-c2_zsoU0tH9kXChxJejruo4GLxSqxknuU0RfFTf1Hk8lTpKaCVNQxOSY6ZLpV6OsMT1_uFb8rx-8G5AGvoqDGBGjN7dbYBJLRYQ7GSyO_WS5VjsyAftNpzSrVgU/s1600/s_bottomx180.png) bottom left no-repeat;width:180px;margin-bottom:0;padding-bottom:0;}
[+/-] |
Nuevas opciones del editor de entradas (Blogger in Draft) |
Si accedes a tu panel de Blogger desde Blogger in Draft comprobarás que hay añadidas nuevas funciones en su editor.
[+/-] |
Enlace Siguiente Blog en la Navbar mejorado |
Desde Blogger Buzz nos informan de una nueva mejora que se ha incluido en la Navbar de Blogger.
[+/-] |
Como usar correctamente el Leer más (More) en Blogger |
Son muchas las personas que me solicitan ayuda últimamente para resolver el mismo problema: la sidebar sin motivo aparente se ve debajo de las entradas.
Esto puede ser causado por diferentes motivos, aunque en estos últimos días el problema común parece ser el uso de la "Leer más" o More que Blogger ha incluido en su nuevo editor.
El problema está en que el nuevo editor de Blogger incluye la opción de Leer más para ser usada desde la pestaña de Redactar, así que una vez hemos formateado la entrada a nuestro gusto, incluimos el More donde mejor nos parece y le damos a "Publicar entrada", podríamos llevarnos la desagradable sorpresa de encontrar que nuestra sidebar se "ha venido abajo".
Para solucionar esto una vez preparada nuestra entrada (antes de publicarla), debemos comprobar desde la pestaña Edición de HTML de nuestro editor que el More está bien colocado.
Ejemplo:
Supongamos que queremos publicar una entrada donde el texto de la misma vamos a mostrarlo centrado.
Una vez la hemos redactado seleccionamos el texto, lo centramos con el botón del editor e incluimos el Leer más o More, desde la pestaña Redactar del editor en la que estamos la entrada se vería como esta:
[+/-] |
Problema en "Diseño" del panel de Blogger |
Llevo varios días recibiendo consultas sobre un problema aparecido en la parte de Diseño (añadir elementos de página) del panel de Blogger.
En todos los casos que me han consultado e incluso en el mio propio, los elementos de Diseño aparecen centrados, aunque esto no implica para nada a la vista "real" del blog o a su funcionamiento, ha provocado la alarma en muchos usuarios.
Parece ser que el error solo afecta a las plantillas con cambios en su diseño (customizadas), en el caso de las plantillas originales de Blogger sin cambios de diseño posteriores a su instalación, esto no sucede.
En el caso del Escaparte, así es como aparecen desde hace días los elementos de página:
Saturday, November 07, 2009
"Layout" rearranging for users with customized templates is currently broken. We are investigating the issue.
Publicado por Anónimo a las 13:40 h. Etiquetas: Blogger, Plantillas
[+/-] |
Gadget para Twitter |
Me he encontrado en kadazuro blog con este gadget diseñado en flash para mostrar los updates de Twitter en el blog.
Muestra nuestro avatar de Twitter y además mediante las flechitas que tiene incorporadas podemos ir retrocediendo a updates anteriores.
Para colocarlo solo tenemos que copiar y pegar el código en un gadget HTML aunque funciona perfectamente en las entradas, como podéis comprobar aquí mismo:
<object width="170" height="140" bgcolor="#FFFFFF">
<param name="movie" value="http://kadazuro.com/twitter/twitterReader.swf?userId=RosaTorre&mainColor=0x336699&fontColor=0xFFFFFF&dateColor=0x336699&layoutMode=left">
</param>
<embed src="http://kadazuro.com/twitter/twitterReader.swf?userId=RosaTorre&mainColor=0x336699&fontColor=0xFFFFFF&dateColor=0x336699&layoutMode=left" type="application/x-shockwave-flash" width="170" height="140" bgcolor="#FFFFFF">
</embed>
</object>
[+/-] |
Moderar los comentarios |
Esta es una función de Blogger muy útil que podemos usar cómodamente desde nuestro propio panel, y que nos dará la posibilidad de ver todos los comentarios antes de que se publiquen en nuestro blog, lo que nos permitirá aceptarlos o rechazarlos según nos interese.
Se que es una función de sobra conocida por muchos de vosotros, pero últimamente he estado recibiendo emails sobre el tema de nuevos usuarios de Blogger que desconocían como activar esta opción, así que he decidido publicarlo para los que necesiten la información.
Esta opción se encuentra en la pestaña de Opciones - Comentarios, donde encontramos también las demás opciones de comentarios. Simplemente tenemos que marcar la opción "Siempre":
Publicado por Anónimo a las 23:58 h. Etiquetas: Blogger, Comentarios
[+/-] |
Botón "enviar entradas a FaceBook" |
Hace unos días que a través de la última entrada de Blogger Widgets, me enteraba de que Facebook presentaba de forma oficial un botón que posibilita el envío de entradas.
El botón está disponible en cuatro modelos, todos ellos con un contador que mostrará la cantidad de veces que la entrada ha sido compartida en FaceBook.
<div class='post-header-line-1'/>y justo después, copiamos el código del botón elegido.
<data:post.body/>y justo antes, copiamos el código del botón elegido.
<div style="float:right;padding:4px;">
<a expr:share_url='data:post.url' name='fb_share' rel='nofollow' type='box_count'/>
<script type="text/javascript" src="http://static.ak.fbcdn.net/connect.php/js/FB.Share"/>
</div>
<div style="float:right;padding:4px;">
<a expr:share_url='data:post.url' name='fb_share' rel='nofollow' type='button_count'/>
<script type="text/javascript" src="http://static.ak.fbcdn.net/connect.php/js/FB.Share"/>
</div>
[+/-] |
Iconos Twitter para Halloween |
Ya quedan pocos días para Halloween, así que en DesingBlog han pensado que sería una buena idea para aquellos que gusten de decorar su blog con este motivo, el disponer de un icono "terrorífico" para el enlace de Twitter.
En DesingBlog nos la presentan como una "espeluznante" calabaza, aunque a decir verdad, a mi me parece de los más simpática.
Están disponibles en un archivo PNG con tres tamaños diferentes.
[+/-] |
Navbar transparente Blogger |
A través de un comentario me entero por Fran administrador de Bailadicción que hay dos nuevas opciones para mostrar la barra de Blogger (Navbar) que yo aún no había visto: "Claro transparente" y "Oscuro transparente".
[+/-] |
Imagen y fondo de color en los títulos de la sidebar |
Colocar una imagen a la derecha del título
.sidebar h2{
background: #CEF7FF url(url_de_la_imagen) no-repeat right;
border: 1px solid #808080;
padding:5px;
}
.TitleIcon {
background: #CEF7FF url(url_de_la_imagen) no-repeat right;
border: 1px solid #808080;
padding:5px;
}
.TitleIcon {Algunos gadget como el de Archivos por ejemplo, podrían no tener una clase añadida en el código del título:
background: #CEF7FF url(url_de_la_imagen) no-repeat left;
border: 1px solid #808080;
padding: 5px 5px 5px 35px;
}
<b:if cond='data:title'>
<h2><data:title/></h2>
</b:if>
<b:if cond='data:title'>
<h2 class='Archivo'><data:title/></h2>
</b:if>
.Archivo {
background: #FF99CC url(url_de_la_imagen) no-repeat right;
border: 1px solid #999900;
padding:5px;
}
Publicado por Anónimo a las 2:47 h. Etiquetas: Gadget, Trucos imagenes
[+/-] |
Enlaces del sitio en Google |
Una de las preguntas que me hacen varias veces incluso a diario, es que hacer para que en las búsquedas de Google se muestren debajo del título del blog los enlaces mas relevantes del sitio.
Publicado por Anónimo a las 1:41 h. Etiquetas: Posicionamiento
[+/-] |
Entradas Relacionadas con miniatura de imagen |
En una entrada anterior vimos como colocar un gadget de "Entradas relacionadas" al pie de cada entrada usando LinkWithin, con este sistema de Blogger Widget conseguiremos un resultado casi idéntico tal y como veis en la imagen.
<!--Entradas relacionadas con imagen-->
<b:if cond='data:blog.pageType == "item"'>
<style type="text/css">
#related-posts {
float:center;
text-transform:none;
height:100%;
min-height:100%;
padding-top:5px;
padding-left:5px;
}
#related-posts h2{
font-size: 15px;
font-weight: bold;
color: #000;
font-family: Georgia, “Times New Roman”, Times, serif;
margin-bottom: 0.75em;
margin-top: 0em;
padding-top: 0em;
}
#related-posts a{
color: #000;
}
#related-posts a:hover{
color:#000;
}
#related-posts a:hover {
background-color:#d4eaf2;
}
</style>
<script src='http://blogergadgets.googlecode.com/files/relatedthumbs21.js' type='text/javascript'/>
</b:if>
<!--Entradas relacionadas con imagen-->
<div class='post-footer-line post-footer-line-1'>
<p class='post-footer-line post-footer-line-1'>
<!-- Entradas relacionadas codigo-->
<b:if cond='data:blog.pageType == "item"'>
<div id='related-posts'>
<b:loop values='data:post.labels' var='label'>
<b:if cond='data:label.isLast != "true"'>
</b:if>
<b:if cond='data:blog.pageType == "item"'>
<script expr:src='"/feeds/posts/default/-/" + data:label.name + "?alt=json-in-script&callback=related_results_labels_thumbs&max-results=6"' type='text/javascript'/></b:if></b:loop><a href='http://www.bloggerplugins.org/2009/08/related-posts-thumbnails-blogger-widget.html' style='display:none;'>Related Posts with thumbnails for blogger</a><a href='http://www.bloggerplugins.org/' style='display:none;'>blogger widgets</a>
<script type='text/javascript'>
var currentposturl="<data:post.url/>";
var maxresults=5;
var relatedpoststitle="Entradas relacionadas";
removeRelatedDuplicates_thumbs();
printRelatedLabels_thumbs();
</script>
</div><div style='clear:both'/>
</b:if>
<!-- Entradas relacionadas codigo-->
<div class='post-footer-line post-footer-line-3'>
var maxresults=5;
var relatedpoststitle="Entradas relacionadas";
[+/-] |
Nuevo editor y avatar en comentarios |
Nuevo editor Blogger
Noto en los emails y comentarios que muchos aún no os habéis enterado de las nuevas funcionalidades integradas en Blogger...
Hace días que Blogger ha puesto a nuestra disposición un nuevo editor de entradas que ya llevaba tiempo implementado en Blogger in Draft.
El nuevo editor incluye algunas mejoras y otras que no lo son tanto, aunque según mi opinión, es mejor que el antiguo, de hecho llevo tiempo usándolo desde Blogger in Draft.
A destacar el manejo de imágenes, que podremos colocar donde situemos el cursor del ratón y no como en el antiguo que se colocan arriba por defecto, una vez subidas a la entrada podremos alinearlas a derecha o izquierda con el texto de la entrada y escoger su tamaño, entre otras cosas.
Hay alguna otra función de menor importancia para dar formato al texto e incluso podemos agrandar el tamaño de la pantalla del editor "tirando" de el con el ratón desde la esquina inferior derecha de la ventana... se trata de probar e ir viendo las posibilidades.
Para activar el uso del nuevo editor, hemos de ir en nuestro panel de Blogger a la pestaña "Configuración" y luego a "Básico".
<dl id='comments-block'>
<dl expr:class='data:post.avatarIndentClass' id='comments-block'>
<b:loop values='data:post.comments' var='comment'>
<dt expr:class='"comment-author " + data:comment.authorClass' expr:id='data:comment.anchorName'>
<a expr:name='data:comment.anchorName'/>
<b:if cond='data:comment.authorUrl'>
<b:if cond='data:blog.enabledCommentProfileImages'>
<data:comment.authorAvatarImage/>
</b:if>
<dl expr:class='data:post.avatarIndentClass' id='comments-block'>
<b:loop values='data:post.comments' var='comment'>
<dt expr:class='"comment-author " + data:comment.authorClass' expr:id='data:comment.anchorName'>
<a expr:name='data:comment.anchorName'/>
<b:if cond='data:blog.enabledCommentProfileImages'>
<data:comment.authorAvatarImage/>
</b:if>
<b:if cond='data:comment.authorUrl'>