3.000€ por pensar con la cabeza

Alzado concede 3.000 euros para la mejor idea para un proyecto web. Por segundo año convocan a cualquier persona a enviar su idea para un proyecto web. El plazo estará abierto todo el mes de Noviembre. Darán la beca el 15 de diciembre.

Más información

Advertisements

Leave a comment

Filed under General

Manuales y guías de referencia

Aunque llevo 4 años resistiéndome como gato panza arriba, parece que al final no voy a tener más remedio que ponerme manos a la obra y tocar código. Lo primero que hecho es abrir el foro de privado de tomatoma para que todo el mundo tenga acceso a los manuales. Debido a alguna actualización mi código casero para extraer los contenidos del foro dejó de funcionar y no tengo tiempo ahora de andar re-aprendiendo phpBB y menos con un salto de 5 o 6 versiones sin haber mirado un archivo en 4 años.

Así que me voy a importar aquí el manual de html y el de php que necesito un repaso. Sí están algo obsoletos pero para aprender y volver a entender de qué me están hablando supongo que me valdrá.

Así que de aquí a nada veréis aparecer por aquí los artículos como churros. Además así aparto la cabeza un rato de los roles de wordpress que me voy a volver loca.

Leave a comment

Filed under Aviso a navegantes

Problemas de los roles al compartir usuarios

Bien ahora que ya hemos conseguido compartir los usuarios entre 2 blogs, nos encontramos con un problema en los roles. Para verificarlo hemos creado 4 usuarios:

El Blog A da nivel de suscriptor a todo nuevo usuario

El Blog B da nivel de autor a todo nuevo usuario

  • admin tiene el mismo estatus en ambos blogs, es el ‘heredado’
  • El usuario Alfa se ha registrado en el Blog A
  • El usuario Beta se ha registrado en el Blog B

Usuarios registrados en el Blog A intentan loguearse en el blog B

El Usuario Alfa se ha registrado, logueado y cambiado su contraseña en el blog A sin problemas.

El Usuario Alfa   no puede loguearse en el blog B. Resultado: Página en blanco con el siguiente mensaje de error: “No tienes autorización para acceder a esta página”

Problema: El Usuario Alfa no tiene asignado ningún rol en el Blog B y por lo tanto no puede “ver” el back-end de wp.

Usuarios registrados en el Blog B intentan loguearse en el blog A

El Usuario Beta  se ha registrado, logueado y cambiado su contraseña en el blog B  sin problemas.

El Usuario Beta  no puede loguearse en el blog A. Resultado: Página en blanco con el siguiente mensaje de error: “No tienes autorización para acceder a esta página”

Problema: El Usuario Beta no tiene asignado ningún rol en el Blog A y por lo tanto no puede “ver” el back-end de wp.

Cambiando el rol por defecto de ambos blogs para que sea el mismo en ambos, el resultado es el mismo. El usuario, aunque consta como usuario en el blog en el que no se registró, no tiene asignado ningún rol y por tanto no puede acceder al panel de control.

mmm no sé por qué me da que esto va a pasar por modificar el registro.  Y luego queda el tema de mantener las sesiones entre uno y otro, lo que parece que tampoco está muy claro.

¿Por qué me meteré yo en estos líos?

Muy bien, en wordpress support he visto que que que hacer un cambio en wp_includes/wp-capabilities.php

Aunque tiene dos problemas:

  • Mucho me temo que con esto los usuarios de los distintos blogs tendrán todos el mismo rol, que no es lo que queremos.
  • Supone tocar el código fuente de wordpress, lo que luego nos puede dar por saco con los plugins especialmente con los de roles que vamos a necesitar.

Hecho el cambio en el blog B ha pasado he registrado al Usuario Omega a través del Blog B

Lo que ha ocurrido es que el el usuario Omega tiene categoría de Autor en el Blog B pero no tiene ningún rol asignado en el blog A: es decir estamos exactamente igual que antes. Seguiremos investigando

Leave a comment

Filed under Jugando con wordpress

Compartiendo usuarios en wordpress

Cómo ya dije, mi objetivo era compartir usuarios entre dos blogs. Desde la versión 1.5 parece que esto se ha facilitado bastante.

Según Ayuda WordPress, está chupado. Los pasos 1 y 2 ya están hechos: tengo dos wordpress 2.6.3 reciénd instalados instalados en el mismo servidor y compartiendo la misma base de datos.

El paso que me falla es el tercero: añadir al wp-config.php las dos líneas que personalizan las tablas de usuarios y de metadatos de los usuarios:

define(‘CUSTOM_USER_TABLE’, ‘wp_users’);
define(‘CUSTOM_USER_META_TABLE’, ‘wp_usermeta’);

¿Cual es el problema? Que en ninguna de mis pruebas he añadido la segunda línea:

define(‘CUSTOM_USER_META_TABLE’, ‘wp_usermeta’)

Así que voy a hacer otra prueba:

Para empezar he cambiado las contraseñas para que me sea más fácil loguearme y desloguearme, ya las volveré a cambiar después. Los admins de ambos blogs por tanto comparten el nombre de usuarios ‘admin’ pero tienen cada uno su contraseña.

Las tablas del primer blog tienen el sufijo wp_ y las del segundo CL_

Añadidas las dos líneas en cuestión. En el blog principal no tengo problemas, en el dependiente si utilizo la contraseña del blog A me dice que no tengo autorización para acceder a esta páginas. Me temo que me toca preguntar.

Solucionado. El problema era que no basta con modificar wp-config.php sobre un blog B ya instalado. Sino que es necesario hacer una nueva instalación del blog B con las líneas de las tablas personalizadas ya modificadas. Así que si quieres Unir dos blogs ya funcionando, habría que instalar un nuevo blog, importar las entradas, comentarios y enlaces del que quieres unir. Y lo que no sé es si luego vas y cambias de carpeta el  Blog B la cosa seguirá funcionado, es posible que se vaya todo al carajo 😉 pero no pienso probarlo.

1 Comment

Filed under General

Versiones de wordpress

En esto momento estoy actualizando a wordpress 2.6.3, no tenía la menor intención de andar actualizando cada 5 minutos para hacer probatinas pero no he tenido más remedio. El plugin shared users no me funcionó pero curiosamente cambio las tablas de wp y una vez desactivado siguieron funcionando ambos blogs independientemente cada uno con sus contraseñas… no entiendo nada.

No sé si todo este estudio me va a servir de algo porque la versión 2.7 está al caer y cambian bastantes cosas.

Supongo que si ocurre lo peor (lo que hayamos aprendido ya no funciona) pues habrá que ponerse a estudiar otra vez!

Leave a comment

Filed under Actualizaciones

Capabilities – Las ‘capacidades’ de los usuarios en wordpress

Las ‘capacidades’ permiten acceder a las difrentes opciones del panel Administración:

switch_themes

  • Diseño
  • Diseño> Temas
  • Diseño> Widgets

edit_themes

  • Diseño> Editor de temas
  • Diseño> Opciones del tema en uso

activate_plugins

edit_plugins

edit_users

edit_files

manage_options

  • Opciones> General
  • Opciones> Escritura
  • Opciones> Lectura
  • Opciones> Discusión
  • Opciones> Permealinks
  • Opciones> Miscelaneas

moderate_comments

Parece que en este punto no están las cosas claras, aunque la nota que hay en el artículo es del 2006. Es un punto importante:

Question: This is blank. I guess the User can accept and deny (= delete) a comment in moderation. Can he also delete other comments? Tordans 17:56, 8 Apr 2006 (GMT)

manage_categories

  • Gestionar > Categorías

manage_links

  • Enlaces
  • Enlaces> Gestionar Links
  • Enlaces> Añadir enlace
  • Enlaces> Categorías de enlaces
  • Enlaces> importar enlaces

upload_files

  • Subir archivos

import

  • Importar

unfiltered_html

Permite al usuario utilizar HTML e incluso javascript en las entradas, las páginas y en los comentarios.

Nota: Habilitar esta opción puede dar lugar a que te introduzcan código dañino en el blog.

edit_posts

  • Escribir
  • Escribir> Escribir entrada
  • Gestionar
  • Gestionar> Entradas
  • Gestionar> Comantarios– Los enlaces para “mostrar entradas”, “editar entradas”, “editar comentarios”, y “borrar comentarios”  sólo están disponibles para las propias entradas ya que are  edit-comment.php busca “current_user_can(‘edit_post’, $comment->comment_post_ID)”‘
  • Gestionar> Esperando moderación– Creo que el rol de colaborador sólo puede ver el item ya que es necesaria la capacidad  “moderate_comments” para ver la lista de comentarios (ver moderate.php). Así que no puedes ver ni tus propios comentarios?

edit_others_posts

  • Gestionar> Comentarios– Permite al usuario borrar y editar cualquier comentario (ver el punto anterior : edit_posts )
  • El usuario puede editar las entradas de otros usuarios a través de la función get_others_drafts()
  • Los usuarios pueden ver las imágenes de otros usuarios. no? ver inline-uploading.php]

edit_published_posts

El usuario puede editar sus propias entradas ya publicadas. Esta capacidad está desactivada por defecto.  El nucleo comprueba la capacidad edit_posts, pero se puede forzar esta comprobación a  edit_published_posts.

Si no quieres que un usuario pueda editar sus entradas ya publicadas, elimina esta capacidad (ver también  este comentario en la página del  Role Manager Plugin).

publish_posts

El usuario puede

  • ver y utilizar la opción  “publicar” al escribir la entrada.
  • ver y utilizar la opción  “publicar” que hay debajo de la entrada (en caso contrario sólo pueden guardar borradores)
  • Pueden usar xmlrpc para publicar (en caso contrario recibes un mensaje de “Lo siento, pero no puedes publicar en este blog o en esta categoría”)

edit_pages

  • Escribir > Escribir página — da acceso a “page-new.php”
  • Gestionar > Páginas– Todos los usuarios pueden ver  “/wp-admin/edit-pages.php”  pero sólo los que tienen esta capacidad pueden ver los enlaces de ‘editar’ y borrar’ en la lista.

Todos los editores pueden editar las páginas de los demás .

read

  • Tablero
  • Tu perfil

Sólo se usa en el archivo  menu.php

edit_others_pages

Desde la 2.1

edit_published_pages

Desde la 2.1

edit_published_pages

Desde la 2.1

delete_pages

Desde la 2.1

delete_others_pages

Desde la 2.1

delete_published_pages

Desde la 2.1

delete_posts

Desde la 2.1

delete_others_posts

Desde la 2.1

delete_published_posts

Desde la 2.1

delete_private_posts

Desde la 2.1

edit_private_posts

Desde la 2.1

read_private_posts

Desde la 2.1

delete_private_pages

Desde la 2.1

edit_private_pages

Desde la 2.1

read_private_pages

Desde la 2.1

delete_users

Desde la 2.1

create_users

Desde la 2.1

unfiltered_upload

Desde la 2.3

edit_dashboard

Desde la 2.5

update_plugins

Desde la 2.6

delete_plugins

Desde la 2.6

=================

Bueno, esto es todo lo que dice el manual sobre roles y capacidades, no sé si me ha aclarado muchos conceptos o más bien me ha abierto más dudas.  Habrá que seguir estudiando.

Leave a comment

Filed under Cómo funciona wordpress

Los roles en wordpress

Objetivo: instalar 2 wordpress en un mismo servidor, el primero en el root y el segundo en un subdirectorio, usando ambos la misma base de datos (con diferente ‘prefijo’) pero compartiendo la misma tabla de usuarios. También es necesario que los roles y capacidades de los usuarios sean distintas en cada uno de los blogs.  A ver qué conseguimos. Cómo tarea previa, hay que entender bien cómo funcionan roles, capacidades y las tablas de usuarios relacionadas con ellas.

Así que toca estudiar antes de ponerse a tocar nada y cómo leerse estas cosas es un rollo patatero y una que es vaga tiende a saltarse párrafos enteros, una forma de asegurarse la lectura profunda es traducir los artículos y hacer resúmenes de la información relevante.

Roles & Capabilities (Roles y Capacidades)

Los Roles de wordpress están diseñados para que el propietario de blog pueda controlar lo que los usuarios pueden hacer o no en la página. Asignado roles a los usuarios, el propietario puede gestionar y permitir el acceso a funciones cómo escribir y moderar entradas, crear páginas, definir enlaces, crear categorías, moderar comentarios, manejar plugins, manejar temas y manejar usuarios.

WordPress Version 2.0 introduce el concepto de los Roles. WordPress viene con 5 roles  ‘standard’ pre-definidos: Administrador, Editor, Autor, Colaborador, and Subscriptor. A cada Rol se le permite llevar a cabo una serie de tareas que conocemos como  Capabilities (capacidades). Hay 30 Capacidades, entre las que se incluyen: publish_posts, moderate_comments, y edit_users. Las Capacidades están preasignadas a cada rol.

El Rol de administrator tiene todas las capacidades. Cada uno de los otros roles tiene un número decreciente de capacidades. Por ejemplo, el   Rol de Subscribtor sólo tiene read y level_0. Un rol en particular no es superior a otro, simplemente definen diferentes responsabilidades de los diferentes usuarios.

Los desarrolladores de plugins, probablemente  revisarán los Roles y las capacidades standard, porque WordPress dejó abierta la posibilidad de poder asignar roles o capacidades directamente a un usuario. Ya que los plugins pueden alterar los roles y las capacidades, aquí sólo vamos a hablar de los roles estandard.

El propietario del blog

El propietario del blog es la persona con  el rol más importante. Normalemente, el propietario es el responsable de hacer las copias de seguridad de los archivos, la base de datos así cómo de gestionar los archivos de wordpress (programas, scripts, plugins, temas, imágenes, uploads) El correcto funcionamiento de un blog depende de que el propietario lleve a cabo estas tareas. Nota: El propietario suele actuar también como administrador, aunque puede escoger otros usuarios para el rol de administrador.

Resumen de los roles

(Dejo los nombres en inglés porque luego para consultar la documentación es mejor saber cómo se llaman las cosas)

  • Administrator – Tiene acceso a todas las tareas de administración
  • Editor – Puede publicar artículos, gestionarlos así como gestionar los artículos de otros usuarios.
  • Author – Puede publicar y gestionar sus propias entradas.
  • Contributor – Puede escribir y gestionar sus propias entradas pero no publicarlas.
  • Subscriber – Puede leer y comentar.

Los Roles

La ‘identidad’ que un usuario concreto asume dentro de un blog se llama ‘Rol’. Un Rol básicamente describe el conjunto de tareas, llamabas, called Capabilities, que una persona puede llevar a cabo. Por ejemplo, el rol de un Administrator incluye cualquier posible tarea que se puede realizar en un blog hecho con wordpress. En cambio el  Rol de Author Role sólo puede ejecutar un pequeño subconjunto de tareas.

WordPress 2.0 simplica el enfoque a través de  Niveles de usuario que utilizaba WordPress 1.5 empaquetando niveles con permisos más o menos similares en 5 roles standard. Por ejemplo los subscriptores tienen el Nivel de Usuario 0, mientras que los niveles 5 y 6 conforman ahora, juntos, el rol de editor.

Capacidades de los distintos Roles con sus niveles de usuario (obsoletos estos)

Capacidades y roles en wordpress

Capacidades y roles en wordpress

Si alguien se lo quiere descargar en PDF está disponible aquí: Capacidades y roles en wordpress (PDF – 35KB)

Bueno, no sé si esto le servirá a alguien de algo, pero al menos a mí me ha servido para aclarar las ideas un poco. Próximo capítulo: cómo funciona eso de las capacidades (capabilities) en wordpress.

7 Comments

Filed under Cómo funciona wordpress