Archivo de la etiqueta: wordpress

Blogs y sitios web de alto rendimiento

¿Tienes un sitio web o un blog y sentir que se está empantanado con el tráfico pesado? Ante todo, felicitaciones - que es uno de esos problemas que los webmasters y bloggers les encantaría tener. Pero ¿cómo resolverlo? Lo primero que debe hacer es habilitar la aceleración de PHP, si su sitio / blog está basado en PHP. A pesar de que debe ser sencillo (en teoría), puede ser que tome un tiempo para hacer las cosas bien. Ya sabes lo que dicen - En teoría, la teoría y la práctica son los mismos. En la práctica, que no son. Aceleración, sin embargo, es una fruta madura, y va a recorrer un largo camino en la solución de sus problemas.

Una vez que se ha extraído todo el provecho de la solución del acelerador, es el momento de incorporar una Content Delivery Network o CDN. Qué CDN hace es servir a todos sus archivos estáticos (imágenes, hojas de estilo, archivos javascript, e incluso en caché las páginas del blog) a partir de una red de servidores que no sean de su propia. Estos servidores están ubicados estratégicamente en todo el continente (y en todo el mundo) para que sus lectores reciban el contenido de una ubicación geográficamente cerca de él. Además de reducir la latencia debido a la distancia, CDN también le ayuda a reducir la carga en el servidor.

Seguir leyendo

Cómo guardar una cadena a un archivo local en PHP?

Este post es el segundo en mi serie friki.

Durante la programación de mi Tema Tweaker, Me encontré con este problema. Tenía una cadena en mi servidor en mi programa php (la hoja de estilo ajustado, De hecho), y yo quería darle la opción de guardar en un archivo de su computadora del usuario. Yo he pensado que esto era un problema común, y todos los problemas comunes pueden resolverse buscando en Google. Pero, Pero hete aquí, Yo no podía encontrar una solución satisfactoria. Encontré mi propia, y pensé en compartirlo aquí, para el beneficio de todos los futuros empleados de Google todavía de ir y venir.

Antes de entrar en la solución, vamos a entender cuál es el problema. El problema está en la división del trabajo entre dos ordenadores — uno es el servidor, donde tu WordPress y PHP se están ejecutando; el otro es el ordenador del cliente, donde la visión se está produciendo. La cadena que estamos hablando es en el servidor. Queremos guardarlo en un archivo en la computadora del cliente. La única manera de hacerlo es sirviendo a la cadena como una respuesta HTML.

A primera vista, esto no se ve como un problema importante. Después de todo, servidores envían regularmente cadenas y datos a clientes — así es como vemos nada en el navegador, incluyendo lo que está leyendo. Si fuera sólo un programa PHP que quiere salvar a la cadena, no sería un problema. Se podía volcar la cadena en un archivo en el servidor y servir el archivo.

Pero ¿qué hacer si usted no desea dar a todo el mundo una forma de dumping cuerdas a los archivos en el servidor? Bueno, usted podría hacer algo como esto:

<?php
header('Content-Disposition: attachment; filename="style.css"');
header("Content-Transfer-Encoding: ascii");
header('Expires: 0');
header('Pragma: no-cache');
print $stylestr ;
?>

Así, sólo hay que poner este código en tu foo.php que calcula la cadena $ stylestr y ya está. Pero nuestro problema es que estamos trabajando en el marco de plugin de WordPress, y no puede utilizar la cabecera() llamadas. Cuando usted trata de hacer que, obtendrá el mensaje de error diciendo que la cabecera ya se ha hecho amigo. Para este problema, He encontrado la solución ingeniosa en uno de los plugins que utilizo. ¿Ha olvidado cuál, pero supongo que es una técnica común. La solución es definir un iFrame vacío y establecer su origen a lo que la función de PHP escribiría. Desde iFrame espera una fuente HTML completa, se le permite (De hecho, obligados) para dar el encabezado() directivas. El fragmento de código se parece a:

<iframe id="saveCSS" src="about:blank" style="visibility:hidden;border:none;height:1em;width:1px;"></iframe>
<script type="text/javascript">
var fram = document.getElementById("saveCSS");
<?php echo 'fram.src = "' . $styleurl .'"' ;
?>

Ahora la pregunta es, lo que debería ser la fuente? En otras palabras, lo que es de $ styleUrl? Claramente, no va a ser un archivo estático en el servidor. Y el propósito de este post es para demostrar que no tiene que ser un archivo en el servidor en absoluto. Es una respuesta de dos partes. Hay que recordar que se está trabajando en el marco de WordPress, y usted no puede hacer que los archivos php independientes. La única cosa que puedes hacer es añadir argumentos a los archivos php existentes, o los plugins que se han creado. Así que primero hacer un botón de envío de la siguiente manera:

<form method="post" action="<?php echo $_SERVER["REQUEST_URI"]?>">
<div class="submit">
<input type="submit" name="saveCSS" title="Download the tweaked stylesheet to your computer" value="Download Stylesheet" />
</div>

Tenga en cuenta que el atributo de nombre del botón es “saveCSS.” Ahora, en la parte del código que controla somete, haces algo como:

<?php
if (isset($_POST['saveCSS']))
$styleurl = get_option('siteurl') . '/' . "/wp-admin/themes.php?page=theme-tweaker.php&save" ;

?>

Este es el $ styleUrl que darías como la fuente de su iFrame, adelante. Tenga en cuenta que es el mismo que su página pluging URL, excepto que se las arregló para agregar “?guardar” al final de ella. El siguiente truco es capturar ese argumento y manejarlo. Por esa, utiliza la función API de WordPress, add_action como:

<?php
if (isset($_GET['save'] ))
add_action('init', array(&$thmTwk, 'saveCSS'));
else
remove_action('init', array(&$thmTwk, 'saveCSS'));
?>

Esto añade una saveCSS función a la parte de inicio de su plugin. Ahora usted tiene que definir esta función:

<?php
function saveCSS() {
header('Content-Disposition: attachment; filename="style.css"');
header("Content-Transfer-Encoding: ascii");
header('Expires: 0');
header('Pragma: no-cache');
$stylestr = "Whatever string you want to save";
ob_start() ;
print $stylestr ;
ob_end_flush() ;
die() ;
}
?>

Ahora estamos casi en casa gratis. La única cosa a entender es que usted hacer necesitará la matriz(). Si su función no muere, se vomitaré el resto de las cosas generada WordPress en su archivo de salvar, añadiendo a su cadena $ stylestr.

Puede parecer complicado. Bueno, Supongo que es un poco complicado, pero una vez que implementarlo y ponerlo en marcha, usted puede (y hacer) olvidarse de él. Al menos, Hago. Es por eso que he publicado aquí, para que la próxima vez que tenga que hacerlo, Puedo mirar hacia arriba.

Geeks

He estado haciendo un poco de cosas geek últimamente — escritura Plugins de WordPress. Bueno, es porque estoy sufriendo de un terrible bloqueo del escritor.

Lo ves, Se supone que debo estar trabajando en mi próximo libro. Me tontos prometí un par de capítulos de Los principios del desarrollo cuantitativo a mi editor de la puesta en John Wiley & Hijos dentro de un mes; ahora me encuentro escribiendo todo lo que no sea esos capítulos zurcidos! La inclusión de plugins. Venir a pensar en ello, escribiendo esos capítulos no sería menos geek, ¿verdad?

Eso hizo que me preguntara… Todos nos pusimos en camino como geeks, no lo hicimos nosotros? Sin negarlo. Recuerde cómo nuestros profesores nos encantó, y las porristas sexy, bien, no lo hizo? Más tarde en la vida, debido a exigencias de circunstancias, podemos haber intentado perder nuestra aureola aficionado a la tecnología y simular una postura gerencial. Pero, en nuestros momentos de pánico, volvemos a nuestras raíces friki. Al menos, Hago.

¿Crees que no lo hace? Bueno, echa un vistazo a estas bromas del friki. Si usted los encuentra divertido, es probable que sus raíces no son demasiado diferentes de los míos.

Heisenberg estaba conduciendo por la carretera cuando fue detenido por exceso de velocidad. El oficial dice, “¿Usted sabe lo rápido que ibas?” Heisenberg dice, “No, pero sí sé donde estoy!”

Dos átomos de hidrógeno entrar en un bar. Se dice, “He perdido mi electrones!” El otro dice, “Estás seguro?” Las primeras respuestas, “Sí, Soy positivo…”

Líneas de la recogida del friki:

  • Dime de esta cosa que los humanos llaman [pausa dramática] amar.
  • Si me baje ahora, Voy a ser más borracho de lo que puedas imaginar.
  • Ellos no me llaman huesos porque soy un médico.
  • Su nombre es Leslie? ¡Mire, Puedo deletrear su nombre en mi calculadora!
  • ¿Qué es un buena chica como tú en un hervidero condenados de escoria y villanía como este?
  • Usted debe ser Windows 95 porque me tienes tan inestable.
  • Mi 'up-time’ es mejor que BSD.
  • Puedo decir por tus emoticonos que usted está buscando un poco de compañía.
  • ¿Es que un iPod mini en el bolsillo o es usted apenas feliz de verme.
  • ¿Quieres ver mi Red Hat?
  • Si no me dejas que te invite a una copa, al menos déjame arreglar su computadora portátil.
  • Usted me tenía en “Hello World.”
  • ¿Te importa si me quedo un sniffer para ver si sus puertos están abiertos?
  • Haces que me dan ganas de actualizar mi Tivo.
  • Al observar que te puedo decir que eres 36-25-36, que por cierto son todos cuadrados perfectos.
  • Truco de la mente Jedi: “Este es el friki que estás buscando.” [Olas mano]
  • Usted puede poner un troyano en mi disco duro en cualquier momento.
  • Alguna vez te has buscado en Google?
  • ¿Qué tal si hacemos un poco de saliva intercambio peer-to-peer?
  • Con mi coeficiente intelectual y su cuerpo podríamos empezar una carrera de superchildren genéticos para conquistar la tierra.
  • ¿Qué hace una chica como tú en un sitio como éste cuando hay un Farscape maratón en este momento en el canal Sci Fi.
  • Me atraen a usted tan fuertemente, los científicos tendrán que desarrollar una quinta fuerza fundamental.

¿Qué hace 100%?

¿Qué significa dar más de 100%? Alguna vez se preguntó acerca de esas personas que dicen que están dando más de 100%? Todos hemos estado en esas reuniones en las que alguien quiere que le des más 100%. ¿Qué tal el logro 103%? Lo que hace que hasta 100% en la vida? He aquí una pequeña fórmula matemática que podría ayudar a responder estas preguntas:

Si:

ABCDEFGHIJKLMNOPQRSTU VWXYZ están representados como:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

a continuación, H-A-R-D-W-O-R-K = 8+1+18+4+23+15+18+11 = 98%

y K-N-O-W-L-E-G-D-E = 11+14+15+23+12+5+4+7+5 = 96%

Un bolsillo-T-T-I-T-U-D-E = 1+20+20+9+20+21+4+5 = 100%

y B-U-L-L-S-H-I-T = 2+21+12+12+19+8+9+20 = 103%

pero mira lo lejos culo besos le llevará.

A-S-S-K-I-S-S-Me-N-G = 1+19+19+11+9+19+19+9+14+7 = 118%

Así, se puede concluir con certeza matemática que, si bien el trabajo duro y el Conocimiento conseguirán cerrar, Actitud y le llevarán hasta allí, que es la mierda y culo besos que le pondrá sobre la parte superior.