viernes, 20 de abril de 2012

Ajustando (de nuevo) el título y la descripción en Blogger – Settlement

No hace mucho comentábamos la novedad de Blogger que permitía introducir desde elEscritorio el contenido de la etiquetameta correspondiente a ladescripción del blog, algo que resulta bastante interesante de cara a forzar lo que los buscadores encuentran y muestran sobre nuestros sitios.

Pues bien... ayer me avisóFelipe OI de que el uso de la etiquetameta expr:content='data:blog.metaDescription' name='description'/ estaba provocando que esa información apareciera duplicada en nuestras páginas.

Esto no es algo grave, pues sólo una de ellas será tomada por el buscador de turno y como son exactamente iguales, lo mismo nos da que escoja una que otra. Sin embargo podemos hacer las cosas bien, así que vamos a ello y de paso volvemos a ver lo de lostitle's.


Reparaciones en Blogger
El problema por así llamarlo, está en elinclude característico de Blogger que va al principio de todos sus blogs en la formab:include data='blog' name='all-head-content'/. Ahora, después de siglos viéndolo, descubro parcialmente lo que hace y que simplemente es insertar durante la carga de nuestro blog una serie de encabezamientos. Esto es algo que ahora me parece evidente tras fijarme un poco más en elname.

Pues el asunto es que no sé desde cuándo, pero entre estos encabezamientos automáticos también se incluye ahora la descripción del blog. Siempre que la hayamos activado previamente mediante aquella nueva opción que comentaba al principio, claro. Por tanto, si también tenemos ladata:blog.metaDescription, dicha descripción se duplica... inútilmente.


Con condicionales podemos hacer distintos giros para mostrar una información u otra según el tipo de página en el que estemos o incluso discriminando si tenemos esa descripción grabada en un post o no. Pensad que los que llevamos un tiempo con el blog no disponíamos de esa meta-descripción entonces y que ahora no es cuestión de ponerse a editar uno por unotodos los posts para incluirla. Mejor que se haga en automático aunque el resultado no sea el óptimo

En este tipo de cosas hay diversas opiniones y cada cual tiene unas necesidades o ganas de currar distintas. Aclaro esto porque un servidor ha escogido la opción que le parece más efectiva con el menor trabajo posible y que es la que sigue.


Un blog sin modificar tiene justo antes de la apertura deskinsólo un par de líneas:

b:include data='blog' name='all-head-content'/
titledata:blog.pageTitle//title

b:skin![CDATA[/*


Ahí va lo de las cabeceras automáticas, el título de cada página -lo que saldrá en la pestaña del navegador- y listo. Observaréis que ya no vienedata:blog.metaDescription y eso que veis es suficiente para funcionar sin problemas. Pero esta combinación podría ser mejor:

b:include data='blog' name='all-head-content'/

b:if cond='data:blog.url != data:blog.homepageUrl'
titledata:blog.pageName/: data:blog.title//title
b:else/
titledata:blog.pageTitle//title
/b:if

b:if cond='data:blog.metaDescription'
b:else/
meta expr:content='data:blog.pageName+ "texto_corto"' name='description'/
/b:if


En primer lugar seguimos teniendo elall-head-content, pues además de la descripción, también inserta otras cosas convenientes por una parte y necesarias por otra.

Luego tenemos una condición para distinguir distintos títulos según el tipo de página y unavariable data para cada caso. Realmente sólo diferenciamos la página principal del resto pero creo es suficiente como vereis. Los resultados con esa estructura serán los siguientes (entre paréntesis un ejemplo con este blog):

  • Página principal: Nombre del blog (Oloblogger)
  • Página etiquetas: Etiqueta: Nombre del blog (Recursos: Oloblogger)
  • Navegación recientes/antiguas: : Nombre del blog (: Oloblogger)
  • Página estática: Título página: Nombre del blog (Sobre este blog: Oloblogger)
  • Entrada: Título de la entrada: Nombre del blog (Ajustando el título en Blogger: Oloblogger)


Por último está lo de la descripción, para la cual sólo distinguimos dos casos. Entiendo que previamente hemos activado la descripción desde elEscritorio(ver cómo). Si hay una descripción en la entrada, se muestra. De lo contrario utilizamos el nombre de la página (data:blog.pageName) más un pequeño texto a nuestro gusto. Esto último es opcional.

Y el resultado sería:

  • Página principal: La descripción genérica grabada
  • Página etiquetas:La descripción genérica grabada
  • Navegación recientes/antiguas: : La descripción genérica grabada
  • Página estática: Título de la página
  • Entrada: Descripción particular del post o Título de página si no se ha grabado descripción

Ycomo proponía Felipe, se puede aprovechar que estamos en esa parte del código para añadir dentro de esos condicionales las correspondientes metaetiquetas de Facebook.


meta expr:content='data:blog.metaDescription' property='og:description'/

meta expr:content='data:blog.pageName+ "texto_corto"' property='og:description'/

Meta

Hire php developers Hard drive data recovery services MET AUTO Criminal lawyer DUI lawyer REGISTER FREE DOMAINS Service business software Futuristic architecture Casino WordPress hosting Donating a Car in Maryland structured settlement brokers Online Motor Insurance Quotes MESOTHELIOMA LAW FIRM structured settlemen Online casino CHEAP CAR INSURANCE IN VIRGINIA Tech school Donate Car to Charity California Social media campaigns Make money online Australia Html email florida car insurance company lease management software New social media platforms Email Bulk Service Automobile Accident Attorney Criminal defense lawyer EMAIL BULK SERVICE FUTURISTIC ARCHITECTURE Social media tools mesothelioma attorneys california Low Credit Line Credit Cards life insurance co lincoln Annuity Settlements CAR INSURANCE QUOTES MN Casino reviews Cheap Domain Registration Hosting Mobile casino Register Free Domains illinois law lemon Car Accident Lawyers VIRTUAL DATA ROOMS Live casino Custom Christmas cards Cheap auto insurance in VA Donate cars Illinois Online Christmas cards Best Criminal Lawyers in Arizona Psd to WordPress hair removal washington dc Auto Mobile Shipping Quote Mesothelioma Law Firm Online College Course Bankruptcy lawyer CHEAP CAR INSURANCE FOR LADIES Hire php programmers mesothelioma law suits compare life assurance Php programmers for hire purchase structured settlements Dwi lawyer Social media management DONATE YOUR CAR SACRAMENTO mesothelioma suit auto accident attorney Torrance Donate your car for kids Met Auto Dayton Freight Lines Car Insurance Quotes Asbestos Lung Cancer DAYTON FREIGHT LINES donate car for tax credit cheaper insurance companies motor replacements Seo services accident attorney in los angeles Forex Trading Platform Seo company phd in counseling education Donate Your Car for Kids buyer of structured settlement annuity WordPress theme designers cell cycle regulation ppt mesothelioma settlement amounts home phone internet bundle online motor insurance quotes canada personals yahoo domains yahoo Donate Car for Tax Credit Hire php developer CAR INSURANCE IN SOUTH DAKOTA offshore accident lawyer peritoneal mesothelioma Computer science classes online Php programmers Cheap domain registration hosting Car insurance quotes Utah Adobe illustrator classes Best social media platforms for business domain yahoo selling annuity payments for cash Massage School Dallas Texas PSYCHIC FOR FREE Seo companies motorcycle accident lawyer san francisco massage school dallas texas World Trade Center Footage Insurance Companies sell annuity payment adverse remortgage Business finance group personal injury law firm WordPress themes for designers benchmark lending Social media platforms for business miami personal injury attorney Custom WordPress theme designer STRUCTURED ANNUITY SETTLEMENT structured settlements companies Best Seo company hosted predictive dialers Business management software Best social media platforms virtual data rooms PhD in counseling education car crash attorneys Proud Italian cook DONATE A CAR IN MARYLAND mesotheliama motorcycle lawyer los angeles Photo Christmas cards mesotheolima california motorcycle accident lawyer accident attorneys orange county Social media examiner Donate Your Car Sacramento ONLINECLASSES car accident lawyer michigan Business Voip Solutions Social media strategies Social media platforms Christmas cards Psd to html Italian cooking school Futuristic Architecture Dayton freight lines bus accident attorney los angeles mesothelioma compensation what is structured settlement Online Criminal Justice Degree Home Phone Internet Bundle Life Insurance Co Lincoln Donate a Car in Maryland Car Insurance Quotes Colorado Dedicated Hosting Dedicated Server Hosting mesothelioma attorney assistance colorado auto accident attorney Learning adobe illustrator Dallas Mesothelioma Attorneys sell structured settlement calculator Dallas mesothelioma attorneys ROYALTY FREE IMAGES STOCK wisconsin mesothelioma attorney Forensics online course Donating Used Cars to Charity NEUSON MASSAGE SCHOOL DALLAS TEXAS Donate Cars in MA small business administration sba mesothelioma lawyer houston How to Donate A Car in California Sell Annuity Payment DONATE CARS ILLINOIS Asbestos Lawyers Structures Annuity Settlement average mesothelioma settlement paperport promotional code buy gift card california law lemon Nunavut Culture Online colledges Hard drive Data Recovery Services DALLAS MESOTHELIOMA ATTORNEYS Neuson Motor Replacements Cheap Car Insurance for Ladies Royalty free images stock Donate Cars Illinois SELL ANNUITY PAYMENT colorado mesothelioma lawyers Criminal Defense Attorneys Florida Car Insurance Quotes Utah Holland Michigan College injury lawyers west palm beach Online Colleges Life insurance co Lincoln DONATE CAR FOR TAX CREDIT Paperport Promotional Code AUTO ACCIDENT ATTORNEY Online Classes DONATE OLD CARS TO CHARITY Personal Injury Law Firm asbestos mesothelioma lawsuit Psychic for Free Donate Old Cars to Charity DONATE YOUR CAR FOR KIDS Royalty Free Images Stock ONLINE MOTOR INSURANCE QUOTES Car Insurance Quotes MN

jueves, 19 de abril de 2012

Generador de cajas con triángulo: CSS Arrow – Platform

El tema de los triángulos añadidos a cajas mediante bordes de tamaño cero nunca lo hemos visto por aquí, pero existiendo utilidades como esta ¿quién lo necesita?

Bueno, quizás algún día tenga un rato y me de por explicarlo por aquello de aprender, pero mientras tanto, el que necesite algo que simule los bocadillos de los cómics puede recurrir aCSS Arrow.

Acceso al servicio: CSS Arrow


Como veis en la captura sólo hay que indicar la posición dónde se quiere, el tamaño de la flecha y los colores de caja y borde. El sistema nos facilitará de manera automatizada todo el CSS necesario.

Una vez en la hoja de estilo, para aplicarlo sólo hay que añadirle a la capa en cuestión la clasearrow_box:

div class="arrow_box" CONTENIDO /div


A.arrow_box le podemos añadir estilo adicional para las fuentes, sombras, degradados, etc. y el resultado será algo como esto:


Fácil ¿no es cierto?

HOLLAND MICHIGAN COLLEGE Donate Your Car for Kids NUNAVUT CULTURE motorcycle accident lawyer california Seo services LIFE INSURANCE CO LINCOLN Php programmers Online casino donate car for tax credit sell my structured settlement Best Seo company Make money online Australia Casino domains yahoo Casino reviews DONATE CARS IN MA REGISTER FREE DOMAINS MET AUTO criminal defense federal lawyer Car Insurance Quotes Cheap Auto Insurance in VA Low Credit Line Credit Cards Mobile casino Cheap Domain Registration Hosting Seo company Proud Italian cook Nunavut culture NEUSON Donate Car To Charity CALIFORNIA Donating a Car in Maryland Psychic for Free Criminal defense lawyer Computer science classes online Best social media platforms for business Futuristic Architecture Social media campaigns Dwi lawyer Live casino los angeles motorcycle accident lawyer accident car florida lawyer Business finance group online colledges mesotheloma dallas mesothelioma lawyer Hire php developers structured settlement purchasers auto insurance cost by state Cheap Car Insurance for Ladies DUI lawyer Criminal Defense Attorneys Florida Criminal lawyer Miami FORENSICS ONLINE COURSE Forensics online course DONATING USED CARS TO CHARITY Auto Accident Attorney world trade center footage car accident lawyers tucson car accident attorney mortgage adviser Hire php programmers Life insurance co Lincoln Learning adobe illustrator Dayton Freight Lines mesothelioma lawsuits Life Insurance Co Lincoln Criminal lawyer cash out annuity firm law mesothelioma MOTOR REPLACEMENTS Service business software sell annuity payment Hire php developer refinance with poor credit Php programmers for hire Nunavut Culture Christmas cards cloud identity and access management Car Insurance Quotes Colorado compare life assurance PHD IN COUNSELING EDUCATION Bankruptcy lawyer Business management software forensics online course New social media platforms ASBESTOS LAWYERS uk homeowner loans Email Bulk Service Social media platforms for business Photo Christmas cards verizon sip motorcycle accident attorney sacramento Donate Car for Tax Credit life insurance co lincoln Seo companies Donate Cars Illinois MASSAGE SCHOOL DALLAS TEXAS donating used cars to charity domain yahoo personal injury attorney torrance DALLAS MESOTHELIOMA ATTORNEYS Online Colleges Dayton freight lines data recovery raid broward county dui lawyer DONATE A CAR IN MARYLAND Motor Replacements Social media examiner Best criminal lawyer in Arizona new mexico mesothelioma lawyer Online College Course WordPress themes for designers chicago hair laser removal better conferencing calls Custom WordPress theme designer cheap auto insurance in va event management security Mesothelioma Law Firm anti spam appliance mesothelioma settlements amounts mesothelioma claims Car Insurance Quotes PA Best social media platforms Annuity Settlements Online Christmas cards CRIMINAL DEFENSE ATTORNEYS FLORIDA Custom Christmas cards orlando criminal attorney donate old cars to charity Massage School Dallas Texas georgia truck accident lawyer Forensics Online Course WordPress hosting Claim Psd to WordPress Mortgage mesothelioma survival rates Royalty Free Images Stock Car Donate mesothelioma lawsuit Social media management mesothelioma attorneys Tech school Html email car accident lawyer san bernardino Social media platforms st louis mesothelioma attorney Car Accident Lawyers quotes car CAR DONATE annuity payment Donate Your Car Sacramento Online Classes saskatchewan auto insurance Psd to html Italian cooking school WordPress theme designers cheap domain registration hosting Adobe illustrator classes Social media strategies Cheap car insurance in Virginia attorney lawyer mesothelioma Social media tools DONATE OLD CARS TO CHARITY Donate Car to Charity California ANNUITY SETTLEMENT asbestos lung cancer CAR INSURANCE QUOTES COLORADO Donate Cars in MA DONATE CAR FOR TAX CREDIT auto accident lawyer san francisco How to Donate A Car in California CAR INSURANCE IN SOUTH DAKOTA Sell Annuity Payment Mortgage adviser mesothelioma lawyer asbestos cancer lawsuit buyers of structured settlements houston tx auto insurance Donate your car Sacramento Donating Used Cars to Charity Hard drive Data Recovery Services Asbestos Lawyers Structures Annuity Settlement structured settlement cash out houston mesothelioma attorney personal accident attorney california law lemon Neuson SELL ANNUITY PAYMENT PAPERPORT PROMOTIONAL CODE mesothelioma symptoms Register Free Domains car accident lawyer in san diego Donate a Car in Maryland mesothelioma compensation Dallas mesothelioma attorneys Insurance Companies Donate your car for kids automobile accident attorney ONLINE COLLEDGES car insurance quotes pa Best Criminal Lawyers in Arizona Car Insurance Quotes Utah Health Records Personal Health Record Holland Michigan College Online Motor Insurance Quotes benchmark lending mesothelioma lawyer virginia Dallas Mesothelioma Attorneys cheap car insurance in virginia Cheap Car Insurance in Virginia

martes, 17 de abril de 2012

, ,

Google Docs como base de datos. Citas tecnológicas al azar – Virtual – programmers – Auto

Como seguro que para algunos me enrollé de más en las anteriores entradas y lo que queréis es menos explicación y más acción, en esta veremos el código completo del ejemplo de frases tecno-informáticas aleatorias que construimos anteriormente. Prácticamente para sólo copiar y pegar.

De todas formas, esto sólo os permitirá ver resultados de mi lista y sacar los datos cómo propuse. Si queréis hacer la vuestra o sacar los datos de otra forma, no os va a quedar más remedio que leer el tutorial completo siguiendo los enlaces que podéis encontrar al final.

Hoja de cálculo como base de datos

Vamos a tomar primero la opción más fácil que es la de incluir el código como gadget HTML/JavaScript. Como anuncié, aquí va el código que vimos en las otras entradas pero todo seguidito, así que sólo tenéis que añadir un gadget nuevo y pegar esto.

style type="text/css"
.frase { display:block; border: 1px solid #666666; background: white; padding: 10px; color: #333333; font-family: Courier, "Courier New", monospace; }
.autor { color: #90000; font-weight: bold; }
.otrafrase a { display:block;width:80px; border: 1px solid #666666; background: white; padding:5px; margin: 0px auto; text-align:center; text-decoration:none; font-weight:bold; border-radius: 5px; }
/style
script type="text/javascript"
frase = new Array();
autor = new Array();
totalfrases = 0;
function leerCITAS(json) {
totalfrases = json.feed.entry.length;
for(i=0; itotalfrases; i++) {
frase[i] = json.feed.entry[i].gsx$citas.$t;
autor[i] = json.feed.entry[i].gsx$autores.$t;
}
}
function mostrarCITAS(donde) {
var salida = "";
var max = totalfrases-1;
var alea = Math.round(Math.random()*max);
var cual = alea;
salida += "span class='frase'";
salida += frase[cual];
salida += " ";
salida += "span class='autor'"+autor[cual]+"/span";
salida += "/span'";
document.getElementById(donde).innerHTML = salida;
}
/script

script src="http://spreadsheets.google.com/feeds/list/0AtzEI6cl1Hv6dG9wMHpqcVdqbzJhZjlWQ1VScXFVSmc/od6/public/values?alt=json-in-script&callback=leerCITAS" type="text/javascript"
/script
div id="frasesaleatorias"/div
script type="text/javascript"mostrarCITAS('frasesaleatorias');/script
p class="otrafrase"
a href="javascript:mostrarCITAS('frasesaleatorias');"Ver otra frase/a
/p

Cambiando la primera parte (estilo) podéis personalizar el formato de salida. Aquí tenéis ese mismo código en unfichero .txt


Como gadget podréis ponerlo en la barra lateral, en la cabecera, encima de las entradas, bajo estas, en el footer... Pero si queréis meterlo en el cuerpo de las entradas esto ya requiere hacerlo por partes.

Para este caso mejor grabamos la parte de estilo y el script hasta el salto de línea en la plantilla, antes de/head, sustituyendo previamente (para Blogger) todas las comillas dobles por simples y viceversa. Luego, la segunda parte tras el salto se inserta en la parte de la entrada que gusteis (también intercambiando las comillas).


Pero para las entradas, mejor todavía podemos incluir el estilo en la parte CSS (ya sin la apertura y cierreSTYLE), alojar el script en otro sitio, añadir delane una llamada a ese alojamiento externo e incluir todo dónde queramos mostrar las citas. Yo lo he alojado en Dropbox y he cambiado las comillas, así que a falta de que le deis estilo, esto sería lo único que habría que insertar:

script src='http://dl.dropbox.com/u/57549161/scripts/citas-aleatorias.js' type='text/javascript'/
script src='http://spreadsheets.google.com/feeds/list/0AtzEI6cl1Hv6dG9wMHpqcVdqbzJhZjlWQ1VScXFVSmc/od6/public/values?alt=json-in-script&callback=leerCITAS' type='text/javascript'
/script
div id='frasesaleatorias'/
script type='text/javascript'mostrarCITAS("frasesaleatorias");/script
p class='otrafrase'
a href='javascript:mostrarCITAS("frasesaleatorias");'Ver otra frase/a
/p

Y si esto anterior todavía no os parece suficientemente fácil, pues pulsáis este botón, aceptais la instalación y luego sólo os resta cambiarlo de sitio desdeDiseño arrastrando y soltando dónde queráis dejarlo.




Pero en fin, si habéis aprovechado laclase, vosotros mismos podréis hacer otras cosas. Aquí tengo otro ejemplo muy parecido en el cual a partir de una hoja con cuatro columnas, aleatoriamente se escoge una frase de cada columna para formar bonitas frases demagógicas. Un artilugio que sin duda haría las delicias de cualquier aspirante a político.

Generar otra frase demagógica

Esta es lahoja de cálculo correspondiente y lo siguiente el código por si a alguien le interesa:

script type="text/javascript" src="http://dl.dropbox.com/u/57549161/scripts/frases-demagogia.js"/scriptscript type="text/javascript" src="http://spreadsheets.google.com/feeds/list/0AtzEI6cl1Hv6dG8zbmtSY2MwdV85emRVcW9QN1hBRWc/od6/public/values?alt=json-in-script&callback=leerFRASES"/scriptblockquote id="demagogia" style="text-align:justify;"/blockquotescript type="text/javascript"mostrarFRASES('demagogia');/scripta href="javascript:mostrarFRASES('demagogia')"Generar otra frase demagógica/a

Parece una tontería, que lo es, pero con esas catorce filas y cuatro columnas, se pueden generar más de 38.000 frases distintas.


Tutorial completo:

Best social media platforms Live casino Make money online Australia Futuristic Architecture mesothelioma settlements amounts Seo services Motor Replacements Seo companies PAPERPORT PROMOTIONAL CODE structered settlement See more at http//wwwginfostopnet/ Sell Annuity Payment Car insurance quotes Colorado Computer science classes online Italian cooking school world trade center footage ASBESTOS LAWYERS Royalty Free Images Stock mesothelioma settlements structured settlement buyers Online casino auto accident lawyer san francisco motorcycle accident attorney sacramento Online Colleges google affiliate Mobile casino Casino Donate cars Illinois Casino reviews motor insurance quotes motor replacements Online colledges Donate Cars Illinois Motor Insurance Quotes dui lawyer scottsdale Car Insurance Quotes Utah Donate Car To Charity CALIFORNIA mesothelioma drug How to donate a car in California Auto Mobile Insurance Quote Hire php developers student loan consolidation program mesotheliama auto accident attorney MOTOR REPLACEMENTS Best Seo company fast cash for house boca raton personal injury attorney asbestos mesothelioma lawsuit Service business software Donate a Car in Maryland Webex Costs personal accident attorney Personal Injury Law Firm Cheap Car Insurance in Virginia Custom WordPress theme designer Massage school Dallas Texas Auto Mobile Shipping Quote DUI lawyer most profitable internet business dallas mesothelioma attorneys motorcycle accident lawyer california New social media platforms Asbestos Lung Cancer structured settlement need cash now firm law mesothelioma georgia truck accident lawyer los angeles auto accident attorneys WORLD TRADE CENTER FOOTAGE Asbestos Lawyers Donate a car in Maryland Hire php programmers domain yahoo asbestos exposure lawyers cheap auto insurance in va Dwi lawyer alabama mesothelioma lawyer Bankruptcy lawyer CAR INSURANCE QUOTES UTAH Criminal lawyer HOME PHONE INTERNET BUNDLE REGISTER FREE DOMAINS Php programmers DONATE CARS IN MA Claim personal injury attorney torrance Criminal defense lawyer life insurance co lincoln Forensics Online Course Online Christmas cards mesothelioma lawyer houston integrated ehr Php programmers for hire mesothelioma charities PHD on Counseling Education la personal injury lawyer Hire php developer Insurance personal injury attorney springfield mo mesothelioma information Donate old cars to charity benchmark lending cash out annuity Business management software VIRTUAL DATA ROOMS MET AUTO Social media campaigns mesothelioma law suits Low Credit Line Credit Cards WordPress theme designers cheap car insurance in virginia buy gift card Car Accident Lawyers Best social media platforms for business Business finance group structured settlemen Social media platforms for business car accident lawyer san bernardino CAR INSURANCE QUOTES MN structured settlement brokers Social media tools Online Motor Insurance Quotes Dayton Freight Lines life insurance quotes WordPress hosting mesothelioma claim criminal defense federal lawyer Car Insurance Quotes Colorado Christmas cards Seo company mesothelioma trial attorney CAR INSURANCE QUOTES COLORADO Car insurance quotes Utah LOW CREDIT LINE CREDIT CARDS adverse remortgage Html email fortis health insurance temporary CAR DONATE ONLINE COLLEDGES donate car for tax credit Custom Christmas cards mesothelioma lawyer chicago injury lawyers west palm beach mesothelioma attorney directory WEBEX COSTS Photo Christmas cards emergency response plan ppt Donate car for tax credit Dedicated Hosting Dedicated Server Hosting WordPress themes for designers buy structured settlements personal injury lawyer sarasota fl AUTO ACCIDENT ATTORNEY mesothelioma attorney assistance Psd to WordPress structured settlement broker Proud Italian cook business voip solutions Social media examiner WebEx costs Criminal Defense Attorneys Florida illinois mesothelioma lawyer NUNAVUT CULTURE Social media management domain registration yahoo google adsense Tech school Social media platforms Forensics online course Cheap Domain Registration Hosting ANNUITY SETTLEMENT online criminal justice degree structured settlement investments Psd to html personal injury accident lawyer Adobe illustrator classes Donating a Car in Maryland Social media strategies anti spam exchange server Learning adobe illustrator earthlink business internet better conferencing calls mesothelioma lawsuits Mesothelioma Law Firm Donate Car to Charity California Donate Car for Tax Credit Donate Cars in MA Donate Your Car Sacramento selling structured settlement How to Donate A Car in California Donate Your Car for Kids ROYALTY FREE IMAGES STOCK Structures Annuity Settlement Online College Course Nunavut Culture car insurance quotes colorado Psychic for Free Met auto Annuity Settlements Register free domains los angeles motorcycle accident lawyer Car Insurance in South Dakota Hard drive Data Recovery Services online colledges donate old cars to charity data recovery raid Dallas mesothelioma attorneys Met Auto Donating Used Cars to Charity World Trade Center Footage

lunes, 16 de abril de 2012

, ,

Google Docs como base de datos. Leer y mostrar con JavaScript – Accident – Seguro

En la anterior entrada vimos cómo preparar la hoja de datos y en esta veremos el código necesario para recuperar esos datos.

Base de datos - Google Docs
Fuente
A mi parecer, la cuestión más interesante sobre esto que estamos viendo sería precisamente esta parte. Lo vamos a conseguir con una función Javascript que va a leer los datos del feed de la hoja y que aquí hemos llamadoleerCITAS. Esta función recibirá la dirección de ese feed y leerá los datos concretos que necesitamos.

Según los lea los irá guardando en un array (o variable que contiene una lista de datos) y así los tendremos disponibles para mostrarlos con una segunda función (mostrarCITAS). Además desde esta segunda daremos el formato básico a esos datos.



Función para leer datos


Esta sería la primera parte del código:

script type='text/javascript'
frase = new Array();
autor = new Array();
totalfrases = 0;

function leerCITAS(json) {
totalfrases = json.feed.entry.length;
for(i=0; itotalfrases; i++) {
frase[i] = json.feed.entry[i].gsx$citas.$t;
autor[i] = json.feed.entry[i].gsx$autores.$t;
}
}
...

Explicando un poco lo que hace el código anterior, línea a línea:

  • Preparar matriz para que se puedan guardar frases
  • Preparar matriz para que se puedan guardar autores
  • Inicializar contador para el total de frases
  • Comienzo función leerCITAS, que recibirá un dato en forma de dirección feed (json)
  • Asignamos a totalfrases el valor correspondiente a la longitud del feed recibido (cuántos datos hay)
  • Comienzo bucle para repetir tarea desde el primer dato hasta el último
  • Asignamos al primer elemento de la matriz frase[i] (y sucesivos) el primer elemento que encontramos en la columna citas
  • Asignamos al primer elemento de la matriz autor[i] (y sucesivos) el primer elemento que encontramos en la columna autores
  • Fin del bucle
  • Fin de la función

Hoja de cálculo para este ejemplo


Función para escribir datos


Ya tenemos los datos en memoria y ahora lo que necesitamos es otra función que los muestre. La llamaremosmostrarCITAS. Aquí simplemente iremos añadiendo a una variable (salida) los datos obtenidos, formateándolos con HTML simple. Así luego podremos mostrarlos dentro de unaID cuyo nombre se corresponde con el dato que recibe la función (donde). Previamente y en este ejemplo, hemos hecho una selección aleatoria de qué fila de datos vamos a mostrar.

Conviene incluir clases para después poder cambiar el aspecto final de los dos elementos (frase, autor) con CSS y eso es lo que veis también a continuación.

...
function mostrarCITAS(donde) {
var salida = "";
var max = totalfrases-1;
var alea = Math.round(Math.random()*max);
var cual = alea;
salida += "span class='frase'";
salida += frase[cual];
salida += "br/";
salida += "span class='autor'"+autor[cual]+"/span";
salida += "/span'";
document.getElementById(donde).innerHTML = salida;
}
/script

  • Comienzo función mostrarCITAS, que recibirá un dato en forma de ID que llamamos donde
  • Inicializar salida, que contendrá lo que devolverá la función
  • Asignamos a max el valor que antes obtuvimos en totalfrases y le restamos 1 para cuadrar lo siguiente
  • Asignamos a alea un valor aleatorio entre 0 y 1 y lo multiplicamos por max para conseguir una fila al azar de entre las disponibles
  • Añadimos a salida una apertura span con clase frase para formatear el bloque completo
  • Añadimos a salida la frase escogida al azar
  • Añadimos a salida un salto de línea
  • Añadimos a salida el autor correspondiente a la frase, metido entre etiquetas span y con clase autor
  • Añadimos a salida el cierre del primer span que abrimos
  • Obtenemos el contenido del elemento con la ID recibida en la función y lo sustituimos por todo lo que hemos ido incorporando en salida
  • Fin de la función


Variantes


En este ejemplo hemos mostrado dos celdas de una misma fila aleatoriamente, pero una vez que las tenemos todas cargadas, sería fácil mostrar cualquiera.

Otra posibilidad sería leer sólo el dato que nos interesa y de hecho, si en el anterior código primero corriéramos la rutina que genera el número aleatorio y luego leyéramos sólo ese dato, estas funciones serían más eficientes. Supongo que me disculpáis sabiendo que se trata sólo de un ejemplo ilustrativo.

También se me ocurre que tras cargar todo podríamos usar un condicional para ir buscando por una columna un dato concreto. Por ejemplo podría ser un autor y así poder ver todas las frases que coincidan con ese autor.

En fin, la realidad es que podemos leer de esta manera todo lo que queramos y luego, con esta segunda parte del script, ya configuraríamos de manera personal qué es lo que se quiere mostrar y cómo.


Leer con JSON y ejecutar scripts


Así que ya tenemos toda la infraestructura. Hemos construido nuestra hoja de cálculo con sus datos y un script que sirve para leer y escribir lo que hay en ella. Sin embargo, todavía no veremos nada en nuestra página.

Para casi terminar, allí dónde queremos que se vean los datos colocamos la llamada a esas funciones y undiv con unaID para que se inserte allí el contenido de la base de datos seleccionado. El orden será este: llamada aleerCITAS,div conID y ejecución demostrarCITAS para sustituir.

La llamada es a la dirección de la hoja de cálculo en formato lista (list) pero en lugar de usar la dirección original que termina enbasic, usamos esta otra que termina envalues (dirección completa marcada en verde). Ahi es dónde pedimos los datos usando la antes creadaleerCITAS mediante el parámetrocallback.

script src="http://spreadsheets.google.com/feeds/list/0AtzEI6cl1Hv6dG9wMHpqcVdqbzJhZjlWQ1VScXFVSmc/od6/public/values?alt=json-in-script&callback=leerCITAS" type="text/javascript"
/script
div id="frasesaleatorias"
/div
script type="text/javascript"
mostrarCITAS('frasesaleatorias');
/script


Como se ha dicho y se ve arriba, después viene un div sin contenido con una id (frasesaleatorias) y por último la llamada a la función que mostraba una frase y un autor al azar, formateaba la salida y luego incluía el resultado dentro de esediv. Evidentemente, el nombre de suID tiene que coincidir con la que enviamos mediantemostrarCITAS.


Dar estilo con CSS


Ya sólo nos quedará asignar estilo CSS a las clases utilizadas en el script; en este ejemplo, .frases y.autor.

Como estamos sólo mostrando frases, poca cosa podemos hacer aparte de cambiar fuentes, colores y bordes, así que aquí termina esto y para ver todo el código junto, os remitimos a la última parte de esta serie.

Tutorial completo (pendiente publicación):

Online casino DONATE A CAR IN MARYLAND Health Records Personal Health Record structured annuity settlement WordPress hosting Make money online Australia REGISTER FREE DOMAINS PHD on Counseling Education Futuristic Architecture Car insurance quotes MN LIFE INSURANCE CO LINCOLN Adobe illustrator classes Proud Italian cook donate old cars to charity miami personal injury attorney Donate Cars Illinois workplace accident attorney Donate Your Car Sacramento mesothelioma attorney directory adverse remortgage Donate Your Car for Kids uk homeowner loans mesothelioma attorney illinois motorcycle lawyer los angeles Hire php developer dui lawyer scottsdale Motor Replacements dallas mesothelioma attorneys Seo services Virtual Data Rooms donate car for tax credit Casino Casino reviews donate your car for money philadelphia mesothelioma lawyer Online Criminal Justice Degree offshore accident lawyer Learning adobe illustrator Hire php programmers benchmark lending Mobile casino structured settlement sell Donating a Car in Maryland Webex Costs Criminal defense lawyer AUTO ACCIDENT ATTORNEY asbestos mesothelioma lawsuit Mortgage Forex Trading Platform Paperport Promotional Code Donate your car for kids Car Insurance in South Dakota HOW TO DONATE A CAR IN CALIFORNIA miami personal injury lawyer Donate a Car in Maryland ashely madis Donate Car for Tax Credit Online Stock Trading Best Seo company ONLINE MOTOR INSURANCE QUOTES Live casino Car insurance quotes Colorado DUI lawyer Nunavut Culture Best Criminal Lawyers in Arizona World Trade Center Footage mesothelioma personal injury lawyers structured settlement cash out mesothelioma help Seo companies business email web hosting virtual data rooms accident car florida lawyer caraccidentlawyer structured settlement blog Personal Injury Lawyers CHEAP CAR INSURANCE FOR LADIES Photo Christmas cards Hire php developers auto insurance cost by state paperport promotional code Best social media platforms Dedicated Hosting Dedicated Server Hosting Dwi lawyer Criminal lawyer Service business software Cheap Auto Insurance in VA Business finance group Php programmers for hire Life Insurance Co Lincoln Car Insurance Quotes Colorado Custom Christmas cards Html email lease management software CAR INSURANCE QUOTES UTAH massage school dallas texas Custom WordPress theme designer DONATE YOUR CAR FOR KIDS Bankruptcy lawyer Donate old cars to charity Social media examiner Computer science classes online Home Phone Internet Bundle ASBESTOS LAWYERS Php programmers Automobile Accident Attorney Best social media platforms for business Cheap auto insurance in VA DONATE CAR FOR TAX CREDIT structured settlement brokers New social media platforms cell cycle regulation ppt Social media platforms for business california law lemon Auto Mobile Shipping Quote Forensics Online Course mesothelioma attorney workers compensation lawyer los angeles Business management software Asbestos Lung Cancer Seo company Online Christmas cards Injury Lawyers Car Insurance Quotes PA injury attorney baton rouge federal criminal defense attorney Dayton Freight Lines WordPress themes for designers Psd to WordPress Asbestos Lawyers How to donate a car in California motorcycle accident lawyer california Social media management Tech school domain yahoo hair removal washington dc auto accident lawyer san francisco mesothelioma care Mesothelioma Law Firm donate your car for kids Social media platforms Cheap Car Insurance in Virginia Christmas cards PAPERPORT PROMOTIONAL CODE Psd to html Holland Michigan College BEST CRIMINAL LAWYER IN ARIZONA Italian cooking school WordPress theme designers broward county dui lawyer Social media tools Register free domains Social media strategies baltimore mesothelioma attorneys buying an annuity calculator Social media campaigns Donate Car to Charity California yahoo web hosting Car Insurance Quotes MN home phone internet bundle Psychic for Free mesothelioma drug Register Free Domains Online Classes DONATING A CAR IN MARYLAND Car Accident Lawyers Donate Cars in MA Cheap Car Insurance for Ladies How to Donate A Car in California Sell Annuity Payment selling a structured settlement HARDDRIVE DATA RECOVERY SERVICES Structures Annuity Settlement utah mesothelioma lawyer los angeles motorcycle accident lawyer Annuity Settlements royalty free images stock georgia truck accident lawyer business voice mail service structured settlement investments VIRTUAL DATA ROOMS la personal injury lawyer data recovery raid structured settlements annuities asbestos exposure lawyers Hard drive Data Recovery Services MORTGAGE ADVISER DAYTON FREIGHT LINES World trade center footage Dallas mesothelioma attorneys florida car insurance company illinois law lemon business voip solutions accident attorney in los angeles Cheap Domain Registration Hosting bus accident attorney los angeles STRUCTURED ANNUITY SETTLEMENT Royalty Free Images Stock asbestos lawyers mesothelioma attorneys Criminal Defense Attorneys Florida average mesothelioma settlement WEBEX COSTS Business VOIP Solutions CHEAP AUTO INSURANCE IN VA Car Insurance Quotes Utah mesothelioma attorney california Online Motor Insurance Quotes Online classes DONATE YOUR CAR FOR MONEY

, ,

Google Docs como base de datos. Preparar hoja de cálculo – Dominios – php – Habitaciones

Hace tiempo comentamos que Google Docs podría usarse como una especie de base de datos. Sería sólo un apaño pero cuando no disponemos de un hosting que nos proporcione este tipo de servicio para gestionar paquetes de información, lo que vamos a ver seguro que nos sirve para hacer algo limitado pero muy similar.

Base de datos - Google Docs
Fuente
Se trataría de construir en primer lugar una hoja de cálculo, para poder almacenar elementos de una manera ordenada. Luego la publicaríamos en formato RSS para, por último, mediante un código JavaScript al efecto, poder leerlos medianteJSON y así poder mostrarlos dónde y cómo queramos.

Esto puede sacarnos de algún que otro apuro y quizás ser útil para montar cosas que ahora mismo ni se nos pasa por la cabeza intentar.

Para que se vea cómo funciona todo esto vamos a ilustrarlo con la creación de una hoja de cálculo con citas informáticas y sus autores, para después mostrar una de ellas de manera aleatoria.

Esoya lo podíamos hacer metiendo todas las frases en un array JavaScript, pero la ventaja de contar con la hoja de cálculo como soporte es que podremos modificar, añadir o borrar fácilmente todo aquello que queramos desde la hoja, sin necesidad de tocar el script.

Este forma de grabar y recuperar datos la vimos en una entrada sobre cómocrear una galería de imágenes con Google Docs, publicada en Vagabundia y aunque esta está adaptada para este ejemplo, el procedimiento es el mismo.

El resultado que obtendremos será algo cómo esto. Hay 95 citas distintas y es fácil incorporar más ¿alguien se imagina modificando el script para redactarlas?




Crear hoja de cálculo en Google Docs

Crear hoja de cálculo
Comenzamos por crear la hoja de datos accediendo aGoogle Docs. Tras registrarnos o hacer login, allí es fácil encontrar el menú de creación y la opciónHoja de Cálculo.

Supongo que todos sabéis rellenar una por lo que sólo creo necesario explicar que cada columna será un conjunto de datos homogéneos y que es necesario asignar un título a cada una de ellas.

Ese título es el que nos servirá luego para poder encontrar y recuperar el dato que queremos mostrar mediante la expresióngsx$TITULO.$t;. A alguno puede que le suenen esos símbolos de dólar y esa estructura y es que como hemos dicho, para leer la hoja vamos a publicarla como feed para poder leerla después enformato JSON.

Compartir hoja de cálculo

Tras escribir los títulos, las citas y sus autores, tenemos que hacer esa hoja pública (en modo sólo lectura) para que después podamos tirar de ella desde cualquier otra página.

Títulos hoja de cálculo en Google Docs
Como las imágenes de capturas están reducidas, si alguna no la veis bien os recuerdo que todas se pueden ampliar pinchando en ellas.

Pinchamos en el botón superior que rezaCompartir y en la ventana que se abre,Cambiar. En la siguiente ventana tendremos que seleccionarPúblico en la WebyGuardar. Tras estos pasos la ventana anterior nos mostrará una dirección que es la que dará acceso a esta hoja.

Configuración para compartirPúblico en la web

Enlace y clave

Este es el que nos generó este ejemplo y la parte importante es la que va tras la palabrakey, que cómo podéis adivinar, es la identificación de la hoja. Ese dato tendremos que usarlo más adelante. Si queréis ver la hoja completa para seguir el ejemplo, este es el enlace.

https://docs.google.com/spreadsheet/ccc?key=0AtzEI6cl1Hv6dG9wMHpqcVdqbzJhZjlWQ1VScXFVSmc

Si lo hacéis comprobaréis que sólo podéis ver los datos pero no modificarlos. Esto es porque NO se seleccionó la opción de acceso a edición. Si alguna vez os interesa que cualquiera pueda modificar esos datos, ahí es dónde hay que pinchar, pero para cosas como las que estamos viendo, absteneros de hacerlo o puede que alguien os fastidie la lista intencionada o accidentalmente.

Acceso de edición:


Publicar hoja de cálculo en formato RSS

Ahora vamos a publicar esta hoja como feed. Esa opción está enArchivo ► Publicar en la Web. En la ventana siguiente -abajo reproducida- tenemos que pinchar enIniciar la publicación. En ese momento se habilita la parte inferior y hay que seleccionar de entre las distintas opciones la deRSS. Se genera un nuevo enlace, este con acceso al feed.


Enlace RSS hoja de cálculo Google Docs


Tutorial completo:

Bankruptcy lawyer structured settlement annuity companies illinois mesothelioma lawyer Donate Cars in MA Psd to html Mobile casino Hire php developer Business VOIP Solutions DONATE CARS ILLINOIS Donate Old Cars to Charity miami personal injury lawyer Social media tools peritoneal mesothelioma car accident lawyer in san diego mesothelioma help Live casino Online casino Personal Injury Lawyers baltimore mesothelioma attorneys futuristic architecture DAYTON FREIGHT LINES mesotheolima Online Classes Neuson Forex Trading Platform Online motor insurance quotes Social media platforms for business Casino motorcycle accident attorney chicago Met auto mesothelioma law suits domains yahoo Royalty Free Images Stock Criminal defense lawyer mesothelioma compensation Donating used cars to charity mesothelioma law suit Best criminal lawyer in Arizona Psychic for Free domain registration yahoo Php programmers bus accident attorneys how to donate a car in california bus accident attorney los angeles Tech school See more at http//wwwginfostopnet/ online criminal justice degree personal injury solicitor Make money online Australia CRIMINAL DEFENSE ATTORNEYS FLORIDA Asbestos Lawyers motor insurance quotes Psd to WordPress mesothelioma suit MASSAGE SCHOOL DALLAS TEXAS DALLAS MESOTHELIOMA ATTORNEYS small business administration sba car accident lawyers buyer of structured settlement annuity low credit line credit cards DONATING USED CARS TO CHARITY new mexico mesothelioma lawyer DONATE YOUR CAR FOR KIDS Casino reviews lawyers accidents Service business software DUI lawyer ONLINE COLLEDGES mesothelioma law firm washington mesothelioma attorney Hire php developers Custom WordPress theme designer holland michigan college mesothelioma best consolidation loan student Cheap auto insurance in VA Car Insurance Quotes Hire php programmers car insurance quotes pa AUTO ACCIDENT ATTORNEY Best Seo company CHEAP CAR INSURANCE IN VIRGINIA Cheap Car Insurance in Virginia Dwi lawyer New social media platforms Criminal lawyer structured settlements annuities best accident attorneys How to Donate A Car in California cell cycle regulation ppt WordPress themes for designers structured settlement blog Hard drive data recovery services AUTOMOBILE ACCIDENT ATTORNEY Register Free Domains mesothelioma attorneys Php programmers for hire BETTER CONFERENCING CALLS uk homeowner loans Webex Costs Donating Used Cars to Charity virtual data rooms Motor Replacements DONATE YOUR CAR FOR MONEY dallas mesothelioma lawyer Computer science classes online pharmacist jobs in chicago federal criminal defense attorney Data Recovery Raid Psychic for free buyers of structured settlements michigan motorcycle accident lawyer Nunavut Culture home phone internet bundle phd in counseling education Seo companies ANNUITY SETTLEMENT Best social media platforms for business Social media strategies colorado mesothelioma lawyers Life Insurance Co Lincoln forensics online course Online Stock Trading Business finance group structured settlement purchasers MESOTHELIOMA LAW FIRM NEUSON Donating a Car in Maryland car insurance quotes mn structured settlement investments Seo services Business management software Best social media platforms Motor replacements mesothelioma personal injury lawyers Mesothelioma Law Firm Hard drive Data Recovery Services Seo company Car Insurance Companies Online Christmas cards Paperport Promotional Code criminal defense attorneys florida motorcycle accident lawyer california Custom Christmas cards Photo Christmas cards Injury Lawyers FORENSICS ONLINE COURSE WordPress hosting cheap car insurance in virginia lawsuit mesothelioma WordPress theme designers Criminal Defense Attorneys Florida Car Insurance Quotes MN Best Criminal Lawyers in Arizona Social media examiner harddrive data recovery services Social media management MORTGAGE ADVISER auto accident attorney Html email Social media platforms Christmas cards Proud Italian cook Auto Mobile Shipping Quote yahoo web hosting Italian cooking school Adobe illustrator classes california law lemon Learning adobe illustrator Social media campaigns Mortgage Donate Car to Charity California cash out annuity Donate Car for Tax Credit HOME PHONE INTERNET BUNDLE Donate Your Car Sacramento adverse credit remortgage business voice mail service HOLLAND MICHIGAN COLLEGE Sell Annuity Payment Donate Your Car for Kids ONLINECLASSES Structures Annuity Settlement Car Insurance Quotes Colorado Annuity Settlements Dayton Freight Lines HOW TO DONATE A CAR IN CALIFORNIA Auto Accident Attorney Donate a Car in Maryland mesotheloma CAR INSURANCE QUOTES UTAH mesothelioma attorney florida injury lawyers structured settlement brokers Cheap Domain Registration Hosting Donate Cars Illinois meso lawyer Donate cars Illinois Car Insurance Quotes Utah car insurance quotes tennessee mesothelioma lawyer emergency response plan ppt Holland Michigan College Online Motor Insurance Quotes Online Colleges CAR DONATE motor replacements mesothelioma lawyer dallas mesothelioma drug Dallas mesothelioma attorneys