Actualizar wordpress sin ftp

Por defecto las actualizaciones de wordpress desde el escritorio se realizan por FTP, pero podemos configurarlo para que estás actualizaciones se realicen directamente desde el escritorio sin tener que meter continuamente los datos de conexión FTP.

Para ello debemos añadir al final de archivo wp-config.php la siguiente línea:


/*para actualizar wordpress sin ftp*/
define('FS_METHOD','direct');

Una vez subamos el archivo wp-config.php modificado podremos actualizar cualquier componente de wordpress (Themes, plugins, etc..) así como realizar nuevas instalaciones directamente desde el escritorio sin que pida los datos de conexión FTP.

Es importante comprobar que tenemos permisos de escritura en el directorio /wp-content/ y sus subdirectorios para que funcione correctamente

Comprobar si un valor existe en un array (PHP)

Si tenemos un array y queremos saber si hay un valor determinado dentro de él sin tener que recorrerlo en PHP existe la función in_array, que busca dentro del array y devuelve un TRUE o FALSE.

in_array(VALOR_A_BUSCAR, $NOMBRE_DEL_ARRAY)

Ejemplo:


//Creamos el array colores
$colores = array("rojo", "azul", "verde", "amarillo");
if (in_array("verde", $colores)) {
echo "El color verde está en el array";
}else{
echo "Lo siento, el color verde NO está en el array";
}

Conectar a una base de datos MySQL con PHP

Una de las cosas más interesantes para nuestras páginas PHP es comunicarlas con una base de datos, aumentando muchísimo las posibilidades de creación de nuevas funcionalidades en nuestros sitios web.

La base de datos más extendida para el uso junto a PHP es MySQL. Para comunicar la base de datos bastan las líneas siguientes:


//Definimos las variables
$host="localhost";
$user="nombre_usuario";
$pass="contraseña";
$dbname="nombre_base_datos";

//Abrimos la conexión
$conexion=mysqli_connect($host,$user,$pass);
//Seleccionamos la base de datos con la que trabajar
mysqli_select_db($dbname,$conexion);

 

Básicamente son 4 parámetros los que necesitamos definir:

$host es la localización de MySQL, si está en el mismo servidor que Apache basta con poner “localhost”, que indica que se encuentra en la misma máquina. Si está en otro servidor deberemos poner la IP en la que se encuentra. (Por ejemplo: 192.168.0.22)

$user, en esta variable definimos el usuario con permisos para iniciar sesión en la base de datos.

$pass, al igual que $user, aquí definimos la contraseña de acceso.

Y por último, ya que podemos tener varias bases de datos dentro del mismo MySQL, en $dbname definimos el nombre de la base de datos con la que vamos a trabajar en esta conexión.

 

Convertir una dirección IP a formato numérico decimal con Php

Para poder trabajar de una manera más sencilla con rangos de IPs (por ejemplo para la geolocalización de una IP) es necesario convertir la dirección IP en número decimal:

IP                            Decimal
209.85.195.104 -> 3512058728

Podéis acceder a un conversor de IP a decimal aquí

Si queréis hacer dicha conversión en PHP basta con utilizar la siguiente función:


<?php

function IPaDecimal($ip){
$ipArr = explode('.',$ip);
$ipdec = $ipArr[0] * 0x1000000
+ $ipArr[1] * 0x10000
+ $ipArr[2] * 0x100
+ $ipArr[3]
;
return $ipdec;
}

?>

Y llamar a la función pasándole la IP a convertir:


<?php

$ipDecimal = IPaDecimal("209.85.195.104");

echo($ipDecimal);

?>

El resultado de sacar por pantalla la variable $ipDecimal será 3512058728.

Métodos para redireccionar una página web (html, asp, javascript y php)

Para redireccionar automáticamente un página web podemos hacerlo de distintas formas según nos venga mejor:

HTML

Para que al cargar una página redirija automáticamente a otra, debemos insertar la siguiente línea de código HTML en cualquier parte entre las etiquetas <head></head> (la cabecera del documento HTML):

<META HTTP-EQUIV="Refresh" CONTENT="0; URL=index.asp">

ASP

Si necesitas que al cargar una página asp redireccione a otra basta con utilizar Response.redirect en la primera línea del documento (o dónde quieras que realice la redirección). Es aconsejable añadir un response.end para evitar que continue con la carga de la página que redirecciona.

<%
Response.Redirect("pagina-a-la-que-redirecciona.html")
Response.End
%>

Javascript

Con javascript utilizaremos location.href de la siguiente manera:

location.href = "pagina-a-la-que-redirecciona.html";

PHP

Para PHP el metodo a utilizar es header, que añadirá nuevos parámetros a la cabecera de página y entre ellos el que nos interesa para este caso es location:

<?php
header("Location:pagina-a-la-que-redirecciona.html");
?>

En todos los casos se pueden utilizar tanto direcciones relativas:

  • index.html
  • /default.asp
  • ../../pagina.php

como direcciones absolutas:

  • http://www.google.com
  • http://blog.vermiip.es/2007/11/04/ver-mi-ip-privada/

 

PHPlist: Como quitar el pie del mail: “POWERED BY PHPLIST WWW.PHPLIST.COM”

Para quitar el pie que aparece en los mails enviados mediante PHPlist (“POWERED BY PHPLIST WWW.PHPLIST.COM”) hay que editar el archivo sendemaillib.php que está en la ruta phplist/admin/


Busca y cambia la siguiente línea de código:


$text["signature"] = "\n\n--\npowered by phpList, www.phplist.com --\n\n";

Por esta otra (simplemente igualamos a “” )


$text["signature"] = "";

Hazlo mismo con las siguientes líneas:


if (!EMAILTEXTCREDITS) {
$html["signature"] = $PoweredByImage;#'<div align="center" id="signature"><a href="http://www.phplist.com"><img src="powerphplist.png" width=88 height=31 title="Powered by PHPlist" alt="Powered by PHPlist" border="0"></a></div>';
# oops, accidentally became spyware, never intended that, so take it out again :-) 
$html["signature"] = preg_replace('/src=".*power-phplist.png"/','src="powerphplist.png"',$html["signature"]);
} else {
$html["signature"] = $PoweredByText;
}

Y déjalo así:


if (!EMAILTEXTCREDITS) {
$html["signature"] = "";
# oops, accidentally became spyware, never intended that, so take it out again :-) 
$html["signature"] = "";
} else {
$html["signature"] = "";
}

De esta manera no aparecerá el footer en los correos que envíes

Botón Javascript para imprimir una página web

Para poder imprimir una página desde un botón o enlace tenemos la función de Javascript print(). Con ella podemos realizar un enlace o botón que tendrá el mismo efecto que la opción “imprimir” del navegador.

Ejemplo: Enlace que permite imprimir una página:

<a href="#" onclick="window.print();return false;">Imprimir</a>

Se trata de un enlace vacío (href=”#”) en el que definimos que en el evento “onclick” (al pinchar con el ratón) imprima la página mediante la instrucción window.print().

Ver el valor de un “Radio Button” en un formulario html en javascript

Para conocer el valor de un radio button por javascript debemos utilizar document.NOMBRE_FORMULARIO.NOMBRE_CAMPO[posición].value

Veamos un ejemplo para aclarar un poco como funciona. Dentro de una página html tenemos un formulario con varios radio buttons para valorar la calidad de un página:

<form name="formu">
<input type="radio" name="valora" value="mala" />Mala<br />
<input type="radio" name="valora" value="regular" />Regular<br />
<input type="radio" name="valora" value="buena" />Buena <br />
<input type="radio" name="valora" value="muy buena" />Muy buena
</form>

Para saber si uno de los elementos que conforman el grupo de radio buttons de nombre “valora” está selecionado utilizaríamos:

if(document.formu.valora[0].checked){
alert("El primer valor está seleccionado"); //en nuestro caso "Mala"
}

Como habréis visto, el primer elemento es 0 y no 1. Ahora lo que podemos hacer es recorrernos todas las opciones hasta dar con la que esté marcada de esta manera:

for(i=0;i<document.formu.valora.length;i++){
if(document.formu.valora[i].checked) {
marcado=i;
}
}
alert("El valor seleccionado es: "+document.formu.valora[marcado].value);

Poner dos códigos de seguimiento de Google Analytics en una página

Google Analytics permite hacer seguimiento de las estadísticas de una página desde dos cuentas a la vez. Esto puede ser interesante cuando el cliente tiene su propia cuenta ya creaa o para agencias de medios que quieran insertar la suya sin que tengamos que dejar de utilizar la nuestra.

Para ello NO hay que insertar 2 veces el código estándar que nos da Google, si no modificarlo incluyendo el segundo código UA. Este código es único e identifica que cuenta recogerá los datos. Si vemos el javascript es código UA se define en estas dos lineas:

_gaq.push(['_setAccount', 'UA-1111111-1']);
_gaq.push(['_trackPageview']);

Para añadir un segundo seguimiento basta con repetir esas dos líneas cambiando el código UA:

_gaq.push(['_setAccount', 'UA-1111111-1']);
_gaq.push(['_trackPageview']);

_gaq.push(['UA2._setAccount', 'UA-2222222-1']);
_gaq.push(['UA2._trackPageview']);

Importante: para que funcione correctamente hay que poner tambien “loquequieras.” delante de “_setAccount” y “_trackPageview”.

Os dejo los ejemplos del codigo estándar con 1 y 2 codigos UA.

Código estándar:

<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-1111111-1']);
_gaq.push(['_trackPageview']);

(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>

Código con 2 cuentas de seguimiento:

<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-1111111-1']);
_gaq.push(['_trackPageview']);

_gaq.push(['UA2._setAccount', 'UA-2222222-1']);
_gaq.push(['UA2._trackPageview']);

(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>

Saber el ID de una inserción con PHP y MySQL

Cuando realizamos un insert en MySQL muchas veces necesitamos conocer el ID autonúmerico que nos ha asignado la base de datos para incluirla en otras consultas asociadas. Para ello, MySQL cuenta con la función mysql_insert_id(NOMBRE_CONEXION_BD) que devuelve el ID del último insert realizado por la conexión que hemos abierto a la base de datos.

Veamos un ejemplo:

$query = "INSERT INTO tabla(campo1, campo2) VALUES ('valor1','valor2');";
mysql_query($query,$conexion);
$id_query = mysql_insert_id($conexion);

echo($id_query);
//$id_query contiene el ID del último INSERT
//realizado durante la conexión a la base de datos.