Saltar al contenido

Foto

Php Nuke [SegundaParte-Modo Avanzado]


  • Este tema est cerrado Este tema esta cerrado
No hay respuestas a este tema

#1
AnTaReS

AnTaReS

    Entrenador Pokemon Inicial

  • Member
  • 40 Mensajes
  • Location:[CDS Caballeros de solamnia TOP 915]San Martin, Devil Square, Argentina
Manual de Php – Nuke
(de www.cpu-inside.com)
Menú Principal
Dudas Generales
Muchos se preguntan como editar el menu principal que lleva PHP-Nuke. En este manual explicaremos como personalizar nuestro menú de una forma muy facil. Primeramente quiero decir que el menu principal que lleva php-nuke se basa en el bloque block-Modules.php que tenemos en /blocks. Y puede resultar complicado editarlo para cambiar nuestro menú. De echo sólo esta pensado para capturar los módulos que tenemos activos y enlazarlos.
Muchas veces nos queda corto y nos tocará hacer uno nuevo de tal forma que podamos añadir todos los enlaces que queramos.

La cuestión es senzilla. Vamos a crear un bloque principal personalizado al cual podemos añadir imagenes, colores, y todos los enlaces que queramos.

Creando el Bloque:
1.- Nos vamos al Menú Administración, Bloques. ( admin.php > Bloques. )
2.- Fijemonos después de la tabla de bloques. Pone Añadir Bloque.
3.- En el los campos pondremos de Titulo. Menú Principal por ejemplo.
4.- Seguidamente en Contenido añadiremos el contenido que queramos que tenga el bloque en codigo HTML. ( Ver más abajo sobre estos contenidos.)
5.- Todo lo demás lo dejaremos como este.
6.- Pulsaremos en el boton Crear Bloque
7.- Colocaremos el bloque donde queramos usando las flechas.

Contenido de Ejemplo para un Bloque:
Como hemos dicho más arriba el Contenido debe ir n HTML. Aquí os explicamos los códigos que podeis necesitar y un ejemplo para que veais como puede quedar.
Imagenes en HTML:
<img src="enlaceimagen.gif">
Donde imagen.gif sera el enlaze completo hasta la imagen que queremos.
Por ejemplo: <img src="images/blocks/email-y.gif">

Insertar Enlaces:
<a href="enlaceala.web">
Donde enlaceala.web sera el enlace completo hasta la url de destino.
Por ejemplo: <a href="modules.php?name=Downloads">
(*) En este caso el enlaze iria al módulo Descargas de PHP-Nuke.

Colores:
Podemos poner los textos con colores y enlaces con colores.
• Ej de Texto en Color: <font color=#CC0000>Mi texto</font>
En este caso aparecería Mi texto en rojo en el bloque.
El #CC0000 es el color. Podeis conseguir este color con cualquier editor de paginas web.

• Ej de Enlace con Color: <a href="enlaceala.web"><font color=#CC0000>Enlace 1</font></a>
En este caso tendriamos un enlace a enlaceala.web con el texto Enlace1 de color rojo.

Otros Códigos
Negrita: <b> Texto</b>.
Saltos de Linia: <br>
Punto y a parte: <br><br>
Ejemplo de Contenido de un Bloque:
<a href="index.php"> Principal</a><br>
<a href="modules.php?name=Downloads">Descargas</a><br>
<a href="modules.php?name=Your_Account&op=new_user"><font color="#CC0000"><b>Registrate</font></b></a><br>
<a href="modules.php?name=Your_Account">Tu Cuenta</a><br>
<a href="modules.php?name=Web_Links">Enlaces</a><br>

Podriamos insertar imagenes delante o detrás, enlaces a otras secciones que tuvieramos... en fin eso ya a gusto de cada uno
Añadir Contenidos
Creando Paginas dentro de PHP-Nuke.

Me he dispuesto a crear este mini manual porque he visto que mucha gente desconoce la existencia de algunos módulo de PHP-Nuke. De tal forma que van buscando aplicaciones de integración del estilo htmltonuke. Yo siempre he creido que es lo peor que se puede hacer. Por los bugs que se pueden generar. Para ello vamos a explicar como poner contenidos, paginas de información dentro de nuestro PHP-Nuke.
Primeramente presentar 2 módulo que PHP-Nuke incorpora de serie. El Sections y el Content. ( Secciones y Contenido ).
Con estos 2 módulos podemos generar todo tipo de paginas sin necesidad de pasar codigos a PHP ni nada. Directamente copiar en HTML o sin formato.

Los dos módulos se gestionan desde la misma web. Es decir no hara falta tocar el FTP para nada. Para gestionar las páginas nos iremos a nuestro menu de administración y seguidamente a Contenido o Secciones ( admin.php > Contenido o admin.php > Secciones ). Desde alli podreis añadir categorias, subcategorias y paginas con información.

No es nada complicado. Almenos hasta aqui todo el mundo tendría que poder hacerlo sin ningun problema. ( Asin lo he ido viendo este tiempo ). El mayor problema que se puede presentar es como vincular esa información. Es decir, una vez tenemos la pagina creada como la podemos ver.

Para el caso de usar el módulo Contenido:
Una vez añadida una pagina, podremos comprobar que aparecer en ( admin.php > Contenido ). Aparecen una serie de enlaces y demas. Si pulsamos sobre alguno vereis que carga la web resultante.
Si nos fijamos en la barra del navegador podemos observar que la direccion toma la forma:
http://www.tusitio.c...showpage&pid=XX .
Bien pues este es el enlace que necesitaremos para vincular desde los bloques por ejemplo.
Podemos observar que las urls generadas solo varian en una cosa.
modules.php?name=Content&pa=showpage&pid=1
modules.php?name=Content&pa=showpage&pid=2
...

Para el caso de usar el módulo Secciones.
El procedimiento es igual.

Por ultimo decir que esta información no se guarda en ficheros. ( No busqueis por el FTP donde estan esas paginas porque no estan ).
Toda la información se guarda en la Base de Datos.
Instalar o Agregar un Bloque Nuevo
Para Principiantes

Suponemos que tenemos a mano un bloque para PHP-Nuke. Explicaremos donde debemos subirlo y como agregarlo a nuestro portal.
Debemos tener delante un fichero del estilo block-nombre.php . Bien este fichero lo debemos subir por FTP a la carpeta /blocks de nuestro PHP-nuke. Asin que abrimos el cliente FTP, connectamos al servidor y lo subimso.

Seguidamente nos iremos a nuestra web, nos vamos al menú administración y seguidamente a Bloques. ( admin.php > Bloques ). Se cargará la web para gestionar los Bloques. Debemos fijarnos un poquito abajo de esta web, después de la lista de bloques agregados a la web.
Aparece un texto que dice Agregar Bloque. Bien esta es la parte para agreagar nuevos bloques.

Pondremos un Titulo para el Bloque y de Fichero seleccionaremos el Nombre que tenia el Bloque. Todo lo demas lo dejamos tal y como esta. Para terminar le damos al boton Crear Bloque. Si todo ha ido bien el bloque aparecerá en nuestra web.
Instalar un Módulo
Para Principiantes

Suponemos que tenemos un módulo ya sea descargado de la web o de cualquier sitio. En este manual os explicaremos donde situar los fichero y como activarlo.
Antes de subir nada al FTP debemos fijarnos en una cositas. Del fichero que hayamos descargado puede que venga documentación. Sería interesante echarle una ojeada para ver las notas del autor.


Proceso de Instalación

Bien podemos decir que un módulo es una carpeta. Por lo tanto si del fichero que nos hemos descargado solo viene una carpeta con el nombre del módulo deberemos subir esta al FTP.

También puede ser que tengamos una carpeta modules y dentro otra carpeta. Deberemos subir sólo la carpeta que hay dentro de la carpeta modules.

Por otro lado también puede darse el caso que tengamos más carpetas por ejemplo ( /admin /images /modules) . Estas son las carpetas que ya tiene PHP-Nuke. Subiremos todo de tal forma que el contenido de la carpeta admin vaya a la carpeta admin que ya tenemos subida. También la carpeta images de tal forma que vaya a la carpeta images que ya tenemos. Igualmente con la carpeta modulos. De esta forma conseguiremos que los ficheros vayan a sus respectivos directorios.

Proceso de Activación

Bien una vez todo subido quedará activalo y configurarlo si hace falta. Nos iremos al menú administración y seguidamente a Módulos ( admin.php > Modulos ). Buscamos el nombre del módulo que hemos subido. Seguramente el módulo estará Inactivo. Lo activaremos pulsando el enlace Activar que tiene al final de la fila.

Para finalizar podemos comprobar que el enlace al módulo ha aparecido en el menú principal. O también podemos ir directamente al módulo dirigiendonos a la url del tipo http://TUURL.COM/mod...ARPETADELMODULO.
Podría ser que también tubiera sistema de administración integrada. Si fuese asin nos aparecería el enlace o imagen en el Menú Administración.
Optimizar PHP-Nuke
Limpieza de PHP-Nuke.

En este manual explicaremos como optimizar el tamaño de php-nuke. Es decir, le quiteremos todo aquello que no vayamos a usar con la finalidad de reducir considerablemente el tamaño.

Un ejemplo significativo es el que hicimos con el paquete de nuke6.0. Reduciendo las casi 4Mb que ocupa originalmente a 1Mb de resultado.


Al reducir el tanto el tamaño, evidentemente tardará mucho menos en subir, tendremos más espacio en el server, ....
Lo que haremos será quitarle idiomas, imagenes, bloques, modulos y themes.

Sobre los Idiomas:
Bien yo creo que muchos de nosotros no utilizamos para nada ciertos idiomas que incluyen en PHP-Nuke. Por lo tanto podeis quitar todos esos idiomas que no vayais a utilizar. Yo recomendaria dejar el ingles siempre.
Para ello nos vamos a la carpeta /language dentro estan todos los idiomas. Yo dejaría lo siguiente.
.htaccess
index.html
lang-spanish.php
lang-english.php

Podemos dejar más idiomas que vayamos a requerir.

Sobre Menú Administración:
También deberiais saber que el menú de administración también puede tener varios idiomas. Estos se encuentran en /admin/language/
Podemos dejar los mismos que en /language.

Sobre Módulos
Primeramente podriamos quitar directamente aquellos módulos que seguro no vayamos a utilizar. ( Si no sabemos que son mejor dejarlos ).
Por otra parte si nos fijamos dentro de algunos módulos tambien tienen una carpeta modules/unmodulo/language. Aquí podremos quitar los idiomas que no tampoco vayamos a utilizar.

Sobre Bloques
Los bloques no tienen mucho que quitar ( /blocks ) pero podemos quitar todos aquellos bloques que seguro no vayamos a utilizar. ( Si no se saben que son no los toqueis ).

Sobre Imagenes
Aquí si que podremos hacer limpieza. Todas aquellas imagenes que no estamos acostumbrados a ver se podran quitar.
Podemos quitar de /images/language todos aquellas banderas de idiomas que no tenemos.
También por ejemplo si no usamos el bloque amazon podremos quitar toda la carpeta de /images/amazon.
.....

Depende de lo que utilizemos en nuestro PHP-Nuke.

Sobre Themes
Otra manera de quitar peso al php-nuke será quitandole themes. Seguramente solo vayamos a usar un unico theme, por lo cual todos los otros themes podran ser eliminados.
Es bastante rollo realizar este proceso pero merece la pena.

Espero que con esto optimizeis vuestro PHP-Nuke. Comprobareis que el tamaño final es mucho inferior al original.
Actualizar Versión
Actualizaciones Criticas

Decir que antes de realizar ningun tipo de actualización debemos sobretodo hacer un respaldo de la Base de Datos. ( admin.php > Respaldo ). El fichero .sql generado contiene toda la información sobre la web actual. Podeis ver también como hacer una copia de seguridad completa en los manuales que tenemos más abajo.

Una vez realizada la copia de seguridad procedamos a la actualización.
Este manual nos sirve para pasar de cualquier versión a otra versión superior a la que teníamos. ( Ej: De PHP-Nuke5.6 a PHP-Nuke6.0 )

El procedimiento en todo caso se dividirá en tres partes:
a) Actualizar la Base de Datos
B) Subir los ficheros.
c) Reconfigurar el config.php

Actualizando la Base de Datos
Para actualizar la base de datos necesitaremos el fichero upgrade-v1-v2.php ( donde v1 es la version inicial y v2 la version final a la que actualizamos ). Este fichero viene incluido en el paquete de PHP-Nuke. Esta dentro de la carpeta upgrades.

Generalmente:
Este fichero lo subiremos a la raiz de la carpeta PHP-Nuke. Y lo ejecutaremos desde la web. http://tuurl.com/upgrade-v1v2.php . SI todo ha ido bien saldra un mensaje de Successfulll Updated .. o cosas por el estilo SIN NINGUN ERROR. Si salieran errores seguramente no se haya actualizado la Base de Datos.

Para Versiones más antiguas:
El proceso será editar el fichero upgrade con los datos iguales a los que tenemos en el config.php. Seguidamente subir el fichero por FTP y ejecutarlo desde el navegador.

Subida de Ficheros
Una vez tengamos la Base de Datos actualizada tocará subir todos los ficheros incluidos en la carpeta html y reemplazar por los viejos.

Reconfigurar el config.php
Para terminar no debemos olvidar volver a editar el nuevo config.php con los datos que el servidor nos proporcionó.
Copias de Seguridad
Dudas Generales

En este manual explicaremos como salvar todos los cambios que hayamos realizado en nuestra web. De tal forma que si por algun motivo el servidor dejara de funcionar o sucediera cualquier tipo de problema podamos reestablecer la web en poco tiempo.
Que necesitamos?
Bien pocas cosas.
1.- Una web PHP-Nuke.
2.- Un cliente FTP.
3.- Un navegador.

Haciendo la copia de seguridad
Los pasos que vamos a realizar se resumen en dos.
1.- Copia de Seguridad de ficheros.
2.- Copia de Seguridad de la Base de Datos.

1.- Lo que haremos sera guardar en nuestra maquina todos los archivos que tenemos en el FTP del servidor. Conectaremos al FTP del servidor donde tenemos la web y lo bajaremos todo a nuestro PC. La finalidad es tener todos los ficheros del servidor en nuestro PC. El proceso puede ser lento. Mientras esta bajando podemos seguir con el paso 2.

2.- Lo más importante de todo es guardar periodicamente la información de la Base de Datos Recordar que en la BD se guarda todas las informaciones de nuestra web. ( Preferencias, Usuarios Registrados, Descargas, Links, Noticias, ... ).
Para ello nos diriguiremos al Menú de Administración > Respaldo ( admin.php > Respaldo ). Al hacer un click en Respaldo se nos abrirá una ventana de decarga para guardar un archivo a nuestro disco duro. Le poneis un nombre al fichero ( Ej: copiaseguridad.sql ) con terminación .sql.
Este fichero .sql sera donde estaran guardadas todas las informaciones de nuestra web. ( Nuestro nuevo nuke.sql )

Con esto ya tendremos todos los ficheros y la información que contiene la base de datos en nuestro PC. Es decir que tenemos una copia de seguridad de nuestro sitio.

Nota: Los ficheros no se modifican. Con bajarlos una vez ya habrá suficiente. A menos que subamos nuevos modulos, bloques, de los cuales también necesitaremos sus ficheros para la copia de seguridad. La cuestión es ir haciendo Respaldos de la Base de Datos para tener copias de seguridad con la información de la Base de Datos actualizada.

Si por algun motivo el servidor nos fallará podemos subir los ficheros y el fichero .sql a otro servidor. De esta forma no perderemos la información que ya teniamos, consiguiendo tener la web identica con la misma información ( noticias, usuarios, descargas, ...) en otro servidor.
De Local a Servidor
Dudas Comunes

Muchos de nosotros desarollamos la web en Local para posteriormente subirla a un servidor. En este manual explicaremos como realizar esta operacion con exito.
Supongamos que ya tenemos una web PHP-Nuke echa en nuestra màquina y queremos subirla manteniendo todo tal y como lo tenemos en el PC. Para ello realizaremos los siguientes pasos.

Pasos a Seguir:
1.- Subimos los ficheros: Con nuestro cliente FTP vamos a subir todos los ficheros que forman el PHP-nuke ( carpetas como admin,modules,blocks,... y todos los ficheros que vienen ). Subiremos todos los ficheros manteniendo las carpetas. Mientras se van subiendo realizaremos los pasos 2 i 3.

2.- Generamos nuestro nuevo nuke.sql: Nos vamos al navegador y visitamos http://localhost ( o la web donde tenemos el php-nuke funcionando). Seguidamente nos dirigimos al Menú Administración y pulsaremos en Respaldo ( admin.php > Respaldo. ) Esa acción nos descargará un fichero y lo llamaremos nuke.sql. ( Ocupa siempre más de 60KB )
Recordar: En este fichero nuke.sql se guarda todas las modificaciones que tengamos en nuestra web. ( Noticias, Usuarios, Preferencias, Configuraciones, ... )

3.- Cargamos el nuke.sql: Seguidamente iremos al administrador de Bases de Datos del servidor al que vamos a subir la web ( phpmyAdmin, php4u, ... ). Alli deberemos cargar el nuke.sql.
Por lo general:
1.- Click al enlace SQL
2.- Pulsamos en el boton Examinar
3.- Seleccionamos el fichero nuke.sql que generamos
4.- Le damos al boton Siga y esperamos que genere todas las tablas.

Cuando todos los ficheros esten subidos ( el tiempo que tarde depende de la velocidad de transferencia ) y el nuke.sql lo tengamos cargado en la Base de Datos del servidor sólo nos faltara este último paso.

4.- Editando el config.php: Este fichero lo tenemos en la raiz de php-nuke. Para que funcione la web es vital tener este fichero bien editado. Abriremos el fichero config.php con cualquier editor que tengamos. Y vamos a editar segun los datos proporcionados por nuestro servidor.
Las lineas a editar son sólo las siguientes:
$dbname="";
$dbuname="":
$dbpass="";
Guardamos los cambios y lo resubimos por FTP. Sobreescibimos el config.php que ya estava subido.

5.- Comprobamos el resultado: Vamos a visitar nuestra web de servidor y miramos que todo funciona correctamente. Si algo fallara revisad los pasos que hemos realizado. ( Sobretodo la configuracion del config.php y comprobad que hay tablas creadas en el administrador de Bases de Datos ).

Con esto pasaremos nuestra web Local a un servidor y manteniendo la web idéntica a como la teniamos.
Cambio de Servidor
Preguntas Frecuentes

Explicaremos como cambiar la web de servidor. Si por algun motivo nuestro servidor esta fallando mas de la cuenta y nos hemos cansado ya de él podemos probar de cambiar la web a otro servidor.
1.- Traspasamos los ficheros:
Opcion 1:
Si nuestro cliente FTP soporta conexiones pasivamos y multiples conexiones a diferentes FTP conectaremos al FTP donde tenemos la web actual y también al nuevo servidor. Movemos los ficheros de un FTP al otro.
El proceso puede que sea más rápido de lo normal.

Opcion2:
Si de lo contrario nuestro cliente sólo permite una conexión. Deberemos conectar al servidor de nuestra web actual y descargar todos los ficheros a nuestro PC. Una vez haya terminado subiremos todos los ficheros descargados al nuevo servidor.

2.- Generamos el nuevo SQL:
Nos vamos a visitar nuestra web actual y nos dirigimos al Menú Administración > Respaldo ( admin.php > Respaldo ). Eso nos pedirá la descarga de un fichero. Guardamos ese fichero en nuestra maquina como nuke.sql.

3.- Cargamos el nuevo SQL:
Vamos al gestor de Bases de Datos del nuevo servidor y procedemos a cargar el fichero nuke.sql que nos generó el antiguo servidor. Una vez cargado comprobamos que se generaron las tablas satisfactoriamente.

4.- Modificamos el config.php:
Ahora nos tocará editar el config.php para que funcione con el nuevo servidor. Recordar que el config.php debe estar bien editado para que la web funcione y que además las configuraciones son especificas para cada servidor. Recordar también que solo debemos editar las 3 lineas de $dbname, $dbuname y $dbhost por lo general.
Realizamos los cambios, guardamos y resubimos al nuevo servidor.

5.- Comprobamos que funciona:
Por último nos vamos a nuestra nueva web y comprobamos que la web sigue teniendo la misma forma, configuraciones, noticias, usuarios registrados, ....
Permisos y CHMOD
Permisos en sistemas Unix/Linux

Bien la explicación que daremos aquí nos es ni mucho menos una explicación detallada de que són los permisos de una máquina. No vamos a explicar en detalle que són, simplemente nos centramos a los problemas que pueden salir a los usuarios de PHP-Nuke.
Los permisos son caracteristicos de maquinas funcionando con Unix/Linux. Estos permisos determinan los niveles o privilegios delante un fichero o carpeta.
Los permisos que se pueden dar son de Lectura, Escritura o Ejecución y se orgranizan segun el Propietario, el Grupo y Publico.
Los permisos siempre son 3 numeros. Ej: 666 o 777. Bien cada numero es para cada grupo y el numero ( 6 o 7 ) se saca de la codificacion en binario de lectura/escritura/ejecucion.

Bien centremonos a problemas con PHP-Nuke.
Si vemos que nos salta errores del tipo Permission Denied, o Verify Permissions for... o cosas por el estilo sabremos que el problema esta en los Permisos que tiene el fichero que esta ejecutando.

También puede darse el caso que no guarde los cambios. Seguramente también sera porque no tiene los permisos correctos.

También es típico que en listas de las cuales se hacen lecturas de directorios, algunos ficheros no aparezcan. Bien también es probable que sea cosa de permisos.

Como dar permisos?
Pues es senzillo. Normalmente se haría por telnet a la maquina pero para temas de hosting se podrá hacer con el mismo cliente FTP. El tema es averiguar donde tiene la opción el cliente FTP para cambiar los permisos ( también llamados Atributos ).
Una vez encontreis la opcion solo quedará dar los permisos.

Por último decir que los maximos permisos que podeis assignar es 777 que sería lectura, escritura y ejecución para todo el mundo.
Modificar Meta-Tags
Cosas Interesantes

Los Meta-tags es aquella parte de nuestra web que sirve para que los buscadores nos encuentren. Definiendo correctamente unos parametros conseguiremos que nuestra web augmente de posición en los buscadores más importantes.
Por el simple echo de tener unos buenos META-TAGS conseguiremos mayor rendimiento y accesibilidad en la red.
Como conseguir unos buenos META-TAGS?
En muchas webs podemos encontrar servicios de generación de Meta-Tags. Probad de escribir generar meta tags en un buscador como www.google.com y vereis como os salen muchos resultados.

* También recordaros que en descargas de esta web hay un módulo que podeis incluir en vuestras web para dar el servicio de Generación de Meta-Tags
Como editar los META-TAGS en PHP-Nuke?
Bien la cuestión es muy senzilla. El fichero en el que insertaremos nuestros meta tags es el meta.php que tenemos dentro de la carpeta includes. ( includes/meta.php ).
Lo que haremos será abrir este fichero con un editor y añadiremos nuestros META-Tags.

* Vigilar si estais escribiendo dentro de un código PHP ( ) porque delante de cada " debereis poner una .
Ejemplo de META-TAGS:

<?php
/************************************************************************/
/* PHP-NUKE: Web Portal System */
/* =========================== */
/* */
/* Copyright © 2002 by Francisco Burzi */
/* http://phpnuke.org */
/* */
/* This program is free software. You can redistribute it and/or modify */
/* it under the terms of the GNU General Public License as published by */
/* the Free Software Foundation; either version 2 of the License. */
/************************************************************************/
if (eregi("meta.php",$PHP_SELF)) {
Header("Location: ../index.php");
die();
}
##################################################
# Include for Meta Tags generation #
##################################################
echo "<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset="._CHARSET."">n";
echo "<META HTTP-EQUIV="EXPIRES" CONTENT="0">n";
echo "<META NAME="RESOURCE-TYPE" CONTENT="DOCUMENT">n";
echo "<META NAME="DISTRIBUTION" CONTENT="GLOBAL">n";
echo "<META NAME="AUTHOR" CONTENT="$sitename">n";
echo "<META NAME="COPYRIGHT" CONTENT="Copyright © 2002 by $sitename">n";
echo "<META NAME="KEYWORDS" CONTENT="News, news, New, new, Technology, technology, Headlines, headlines, Nuke, nuke, PHP-Nuke, phpnuke, php-nuke, Geek, geek, Geeks, geeks, Hacker, hacker, Hackers, hackers, Linux, linux, Windows, windows, Software, software, Download, download, Downloads, downloads, Free, FREE, free, Community, community, MP3, mp3, Forum, forum, Forums, forums, Bulletin, bulletin, Board, board, Boards, boards, PHP, php, Survey, survey, Kernel, kernel, Comment, comment, Comments, comments, Portal, portal, ODP, odp, Open, open, Open Source, OpenSource, Opensource, opensource, open source, Free Software, FreeSoftware, Freesoftware, free software, GNU, gnu, GPL, gpl, License, license, Unix, UNIX, *nix, unix, MySQL, mysql, SQL, sql, Database, DataBase, Blogs, blogs, Blog, blog, database, Mandrake, mandrake, Red Hat, RedHat, red hat, Slackware, slackware, SUSE, SuSE, suse, Debian, debian, Gnome, GNOME, gnome, Kde, KDE, kde, Enlightenment, enlightenment, Intercative, interactive, Programming, programming, Extreme, extreme, Game, game, Games, games, Web Site, web site, Weblog, WebLog, weblog, Guru, GURU, guru">n";
echo "<META NAME="DESCRIPTION" CONTENT="$slogan">n";
echo "<META NAME="ROBOTS" CONTENT="INDEX, FOLLOW">n";
echo "<META NAME="REVISIT-AFTER" CONTENT="1 DAYS">n";
echo "<META NAME="RATING" CONTENT="GENERAL">n";
###############################################
# DO NOT REMOVE THE FOLLOWING COPYRIGHT LINE! #
# YOU'RE NOT ALLOWED TO REMOVE NOR EDIT THIS. #
###############################################
echo "<META NAME="GENERATOR" CONTENT="PHP-Nuke $Version_Num - Copyright 2002 by http://phpnuke.org">n";
?>
Podeis añadir vuestros parametros de META-TAGS en cada variable para mejorarlos.
Icono Favoritos Favicon.ico
Dudas Generales

El Favicon es una imagen, en un formato propio de Microsoft similar al mapa de bits, de tamaño 16x16 píxels que permite la personalización con el logotipo de la barra de la URL así como de los bookmarks, iconos de los enlaces directos, etc...
Favicon es una abreviatura de "Favourites Icon". En realidad es una buena idea que tu URL destaque entre las decenas que aparecen en la lista de favoritos de los internautas. El problema es que sólo lo soportan los usuarios de Internet Explorer 5 y superior.
Como personalizar el favicon.ico ?
Bien. Vamos a buscar un software para generar iconos. Recordad de tamaño 16x16. Hay herramientas on-line como http://www.favicon.com, o podeis probar de buscar un soft de edición en http://www.softonic.com.

Una vez diseñado el logo vamos a ponerlo para que se pueda usar con nuestra web PHP-Nuke.

Favicon.ico en PHP-Nuke?
1.- Vamos a subir nuestro favicon.ico al servidor mediante nuestro cliente FTP. Colocaremos el favicon.ico en la raiz de nuestro PHP-Nuke.
2.- Vamos a editar el fichero meta.php que tenemos en la carpeta includes ( includes/meta.php)
3.- Abriremos el meta.php con un editor y añadiremos la siguiente linea.

Veamos como queda:


4.- Guardamos el meta.php y lo subimos al servidor.

Para comprobar que funciona podeis intentar de añadir la web a favoritos. Ctrl+D.
Cambiar Theme
Problemas Típicos

Como cambiar un theme?
La forma general para cambiar un theme es la siguiente:
1.- Diriguirse al Panel de Administración ( admin.php ).
2.- Seleccionar del menú, Preferencias.
3.- Fijarse donde pone Tema del Sitio y seleccionar el theme deseado.
Como cambiar un theme sin acceso desde la web con PHP-Nuke5.5 o 5.6 ?
Si por algun motivo el theme al cual haveis cambiado no funciona o da errores podeis hacer los siguiente.
1.- Si no habeis tocado nada más después de aplicar el theme:
1.1.- Podeis volver atrás desde el boton del navegador y cambiar el theme por otro.

2.- En otro caso si ya no hay manera de volver atrás haremos lo siguiente:
2.1.- Editaremos el fichero config.php que viene en la raiz del PHP-Nuke.
2.2.- Lo abrimos con cualquier editor que tengamos a mano.
2.3.- Buscamos la linea que pone $Default_Theme="";
2.4.- Cambiamos el valor de esa variable por un theme que tengamos en themes/ y que funcione.
Como cambiar un theme sin acceso desde la web con PHP-Nuke6.0 ?
Para cambiar un theme sin acceso desde la misma web tendremos que cambiar un campo de la Base de Datos

Solucion 1:
Pasos a seguir:
1.- Nos vamos a la administración de nuestra Base de Datos ( Dónde cargamos el nuke.sql )
2.- Nos vamos al apartado de SQL. Arriba del boton de Examinar hay un campo para introducir codigo o comandos SQL.
3.- Alli escribimos esto: UPDATE nuke_config set Default_Theme='untheme';

Donde pone untheme pondremos un theme que sepamos que funcione.
Ej1: UPDATE nuke_config set Default_Theme='DeepBlue';
Ej2: UPDATE nuke_config set Default_Theme='NukeNews';

* La solución consiste en cambiar el valor de la tabla nuke_config

Solucion 2:
Pasos a seguir:
1.- Nos vamos a /themes .
2.-. Copiamos el contenido de un theme que sapamos que funcione.
3.- Pegamos el contenido de ese theme en el theme que esta puesto en la web.

* La solución consiste en mantener el theme pero con el codigo fuente de otro..

Solucion 3:
Pasos a seguir:
1.- Nos vamos a la administración de nuestra Base de Datos ( Dónde cargamos el nuke.sql )
2.- De todas las tablas que nos aparecen seleccionamos la tabla nuke_config.
3.- Se abrira dicha tabla que muestra la información de sus campos.
4.- Nos fijaremos arriba de esa información que hay un enlace Examinar y pulsamos sobre él.
5.- Seguidamente aparecerá ( si estamos en la web correcta ) una sola fila que guarda toda nuestra información de Preferencias.
6.- Delante de esta fila hay 2 enlaces Editar y Borrar. Pulsaremos en Editar
7.- Tendremos delante ahora la información para poder cambiarla.
8.- Del campo Default_Theme que tenemos vamos a cambiar su valor por un theme que tengamos y sepamos que funciona.

* La solcuión consiste en cambiar el valor de la base de datos.
Creación Bloques PHP-Nuke
Desarrollo PHP-Nuke

Para ver como funciona un bloque abriremos un bloque de ejemplo que PHP-Nuke lleva de série. Es el llamado block-Sample_Block.php que tenemos en la carpeta blocks. Este fichero es muy senzillo de entender y nos ayudará a crear nuestro primer bloque. Podemos abrirlo con el Bloc de Notas, Dreamweaver o cualquier editor que tengamos a mano. Una vez abierto veremos el código que ponemos a continuación.
<?php
/************************************************************************/
/* PHP-NUKE: Web Portal System */
/* =========================== */
/* */
/* Copyright © 2002 by Francisco Burzi */
/* http://phpnuke.org */
/* */
/* This program is free software. You can redistribute it and/or modify */
/* it under the terms of the GNU General Public License as published by */
/* the Free Software Foundation; either version 2 of the License. */
/************************************************************************/
if (eregi("block-Sample_Block.php",$PHP_SELF)) {
Header("Location: index.php");
die();
}
$content = "Here goes the content you want in your new block";
?>
Analizemos la estructura:
1.- Inicio de código PHP
<?php
2.- Comentarios y Copyright de PHP-Nuke
/************************************************************************/
/* PHP-NUKE: Web Portal System */
/* =========================== */
/* */
/* Copyright © 2002 by Francisco Burzi */
/* http://phpnuke.org */
/* */
/* This program is free software. You can redistribute it and/or modify */
/* it under the terms of the GNU General Public License as published by */
/* the Free Software Foundation; either version 2 of the License. */
/************************************************************************/
3.- Códigos de seguridad para el bloque
if (eregi("block-Sample_Block.php",$PHP_SELF)) {
Header("Location: index.php");
die();
}
4.- Variable de Salida
$content = "Here goes the content you want in your new block";

5.- Cierre del código PHP
?>
Edición de un Bloque
1.- El primer paso es guardar el fichero que estamos viendo block-Sample_Block.php con otro nombre por ejemplo block-Pruebas.php
2.- De los códigos de seguridad modificaremos block-Sample_Block.php por el nombre que le hayamos dado. En nuestro caso block-Pruebas.php
3.- Antes de la varibale de salida ( $content ) añadiremos todo aquello que queramos procesar pero no mostrar por pantalla. Códigos Javascript, PHP o de cualquier otro lenguaje. ( Ver el ejemplo que viene a continuación )
4.- Todo aquello que queramos que se muestre en el contenido del bloque debe estar dentro de la variable $content . Todo lo que no este incluido en esta variable será procesado pero no mostrado..
5.- Guardar y Agregar el Bloque desde admin.php > Bloques.
Ejemplo Práctico
1.- Guardar el bloque block-Sample_Block.php que tenemos en blocks con otro nombre. Le llamaremos block-Pruebas.php
2.- Modificamos de la linea if (eregi("block-Sample_Block.php",$PHP_SELF)) { por if (eregi("block-Pruebas.php",$PHP_SELF)) {
3.- Vamos a añadir un código PHP que nos diga la IP del usuario $ip = getenv("REMOTE_ADDR");
4.- Ahora añadiremos lo que queremos que nos muestre por pantalla. Para ello dejaremos la variable $content de la siguiente forma
$content = "Su IP es $ip";
5.- Guardamos el bloque.
6.- Agregamos el Bloque desde admin.php > Bloques
Aquí teneis toda la información que podeis necessitar sobre como crear un bloque. Ahora será cuestión de imaginación y de usar herramientas o funciones que tengamos a mano. Recordar que os podeis basar en el block-Sample_Block.php



Creación de Módulos PHP-Nuke
Desarrollo PHP-Nuke

En está sección os comentaré un poco los siguientes puntos:

1.- Como funciona un Módulo

2.- Analizamos el Módulo Addon_Sample

3.- Creamos un Módulo

3.1.- Modificación de Funciones

3.2.- Completamos nuestras Funciones.

4.- Ultimos Consejos
1.- Como Funciona un Módulo
PHP-Nuke hace una lectura de las carpetas que tenemos en la carpeta modules, e interpreta que cada carpeta es un módulo. De la lectura realizada verifica y actualiza la información de nuestra base de datos. Esta información es la que determina si un módulo esta activo, para quien es visible, ....
Toda la información que tenemos actualizada desde admin.php > Módulos.
2.- Analizamos el Módulo Addon_Sample
Para entender como funciona un módulo vamos a basar la explicación en el módulo Addon_Sample que PHP-Nuke trae. Este addon o módulo de ejemplo no es muy complejo pero algunos conocimientos de programación ( C, C++, Java, ... ) pueden ser claves para entender que se esta haciendo.
Analizaremos el código fuente del index.php del módulo para ello lo abriremos con cualquier editor que tengamos a mano. Veamos que nos muestra.
Inicio PHP
<?php
Seguridad del Módulo
if (!eregi("modules.php", $PHP_SELF)) {
die ("You can't access this file directly...");
}
Variable que contiene el nombre de la carpeta del módulo
$module_name = basename(dirname(__FILE__));
$index = 1;
Función UNO del Módulo
function one() {
global $module_name;
include("header.php");
OpenTable();
echo "Addon Sample File (index.php) function "one"<br><br>";
echo "<ul>";
echo "<li><a href="modules.php?name=$module_name&amp;file=index">Go to index.php</a>";
echo "</ul>";
CloseTable();
include("footer.php");
}
Función DOS del Módulo
function two() {
global $module_name;
include("header.php");
OpenTable();
echo "Addon Sample File (index.php) function "two"";
echo "<ul>";
echo "<li><a href="modules.php?name=$module_name&amp;file=index">Go to index.php</a>";
echo "</ul>";
CloseTable();
include("footer.php");
}
Función AddonSample del Módulo
function AddonSample() {
global $module_name;
include("header.php");
OpenTable();
echo "Addon Sample File (index.php)<br><br>";
echo "<ul>";
echo "<li><a href="modules.php?name=$module_name&amp;file=index&amp;func=one">Function One</a>";
echo "<li><a href="modules.php?name=$module_name&amp;file=index&amp;func=two">Function Two</a>";
echo "<li><a href="modules.php?name=$module_name&amp;file=f2">Call to file f2.php</a>";
echo "</ul>";
echo "You can now use Administration interface to activate or deactivate any module. As an Admin you can always "
."access to your Inactive modules for testing purpouses.";
CloseTable();
include("footer.php");
}
Función switch del Módulo: Esta función es la que determina que función se debe ir ejecutando.
switch($func) {
Bloque1: Como podemos ver a diferencia de los siguiente bloques este va marcado como default. Este parametro solo puede ser definido para una sola función. Esta función es la que ejecutara por defecto al ir a modules.php?name=modulo
default:
AddonSample();
break;
Bloque2: Este bloque va marcado como caso "uno". O sea cuando llamemos a la función one nos ejecutará la función que tengamos puesta. En este caso la función one();.
case "one":
one();
break;
Bloque3: Este bloque va marcado como caso "dos" O sea cuando llamemos a la función two.
case "two":
two();
break;
}
?>
3.- Creamos un Módulo
Crearemos un módulo llamado Prueba con 3 funciones.
Una funcion Prueba() que será nuestra función por defecto. La que se mostrará al ir a modules.php?name=Prueba.
Otra función llamada Formulario() de la que haremos un formulario para pasar información a otra función.
Y por último una función Mostrar() en la que recibiremos la información de la función Formulario() y la mostraremos por pantalla.

1.- Lo primero que haremos es hacer una copia de la carpeta Addon_Sample que tenemos en la carpeta modules.
2.- Renombramos la carpeta Copia Addon_Sample por Prueba
3.- Hasta aquí PHP-Nuke ya nos detecta un módulo Prueba. Podeis comprobarlo desde admin.php > Módulos
4.- Ahora abriremos el index.php que tenemos en el módulo Prueba con Bloc de Notas, Dreamweaver o cualquier editor que tengamos a mano.

* El fichero f2.php lo podeis borrar no lo usaremos en esta explicación

3.1.- Modificación de Funciones
1.- La function AddonSample() la modificaremos a Prueba()
2.- La function one() la modificaremos a Formulario()
3.- La function two() la modificaremos por Mostrar()
Ejemplo de como quedaría el index.php modificado. Señalo con negrita lo que hemos modificado.

<?php
if (!eregi("modules.php", $PHP_SELF)) {
die ("You can't access this file directly...");
}
$module_name = basename(dirname(__FILE__));
$index = 1;
function Formulario() {
global $module_name;
include("header.php");
OpenTable();

CloseTable();
include("footer.php");
}
function Mostrar() {
global $module_name;
include("header.php");
OpenTable();

CloseTable();
include("footer.php");
}

function Prueba() {
global $module_name;
include("header.php");
OpenTable();

CloseTable();
include("footer.php");
}
switch($func) {
default:
Prueba();
break;

case "formulario":
Formulario();
break;
case "mostrar":
Mostrar();
break;
}
?>
Creación de Módulos PHP-Nuke
Desarrollo PHP-Nuke

3.2.- Completamos nuestras Funciones
Ahora vamos a completar nuestras funciones del siguiente modo.
1.- En la función Prueba() que tenemos puesta por defecto le vamos a poner un enlace a la función Formulario(). También un Enlace al fichero
* Aprenderemos la función echo de PHP. A enlazar a una función de un Módulo. Y enlazar a un fichero del Módulo diferente de index.php que puede tener sus propias funciones.

2.- En la función Formulario() vamos a crear un mini Formulario con 2 campos Nombre y Apellidos y pasaremos la información que nos introduzca el usuario a la funcion Mostrar()
* Veremos como va un formulario para un Módulo y como se pasa la información de un lado a otro.

3.- En la función Mostrar() vamos a visualizar por pantalla los datos que nos hayan introducido. Además añadiremos un enlace que sea Volver atrás y otro enlace volver a la página principal del módulo.
* Completaremos la información anteriormente dada.

Quedaría de la siguiente forma. Señalo con negrita lo que hemos modificado.
<?php
if (!eregi("modules.php", $PHP_SELF)) {
die ("You can't access this file directly...");
}
$module_name = basename(dirname(__FILE__));
$index = 1;
function Formulario() {
global $module_name;
include("header.php");
OpenTable();
echo "<center><b>Página del Formulario</b></center><br><br>";
echo "<form name="formulario" method="post" action="modules.php?name=$module_name&amp;file=index&amp;func=mostrar">
Nombre <input type="text" name="fnombre"><br>
Apellido <input type="text" name="fapellido"> <br>
<input type="submit" name="Submit" value="Enviar">
</form>";
CloseTable();
include("footer.php");
}
function Mostrar($fnombre, $fapellido) {
global $module_name;
include("header.php");
OpenTable();
echo "<center><b>Página para Mostrar los Datos Introducidos </b></center><br><br>";
echo "<b>Nombre y Apellido introducido: $fnombre , $fapellido .</b><br><br>";
echo "<a href="java script:history.back()">Atrás</a><br> ";
echo "<a href="modules.php?name=$module_name">Ir a la página principal del módulo</a>";
CloseTable();
include("footer.php");
}

function Prueba() {
global $module_name;
include("header.php");
OpenTable();
echo "<center><b>Página Principal del Módulo Prueba</b></center><br><br><a href="modules.php?name=$module_name&amp;file=index&amp;func=formulario">Ir al Formulario</a><br><br>";
echo "<center><a href="modules.php?name=$module_name&amp;file=copyright">Ver Copyright</a></center>";
CloseTable();
include("footer.php");
}
switch($func) {
default:
Prueba();
break;

case "formulario":
Formulario();
break;
case "mostrar":
Mostrar($fnombre,$fapellido);
break;
}
?>
4.- Ultimos Consejos
Este es un ejemplo muy senzillo sólo usando el idex.php con 3 funciones. Como podeis ver el código ya se hace un poco largo por eso es recomendable no tener muchas funciones en un mismo fichero. Cread ficheros anexos para secciones especificas. Es la manera de no perderse.

Vigilad con las comillas que en PHP siempre van "

Espero que os sirva para crear vuestros módulos
Saludos [nyc]
Ejemplo de Módulo I
1r Ejemplo de Módulo

Vamos a desarrollar un módulo muy simple que muestra la información que deseemos.
Para ello haremos lo siguiente:
1.- Crearemos una carpeta dentro de modules. Por ejemplo modulo1
2- Abriremos el bloc de notas o cualquier editor e insertaremos el codigo fuente que tenemos a continuación.
2- Guardaremos este fichero como index.php dentro de la carpeta modulo1 que habiamos creado.

Codigo Fuente del index.php
<?php
if (!eregi("modules.php", $PHP_SELF)) {
die ("You can't access this file directly...");
}
$module_name = basename(dirname(__FILE__));
$index = 1
global $module_name;
include("header.php");
OpenTable();

// Vamos a ver donde añadir el codigo que mostrara en la web.
// Siempre en código PHP. Recordar que para pasar un codigo HTML a PHP cambiamos las " por " .
// Veamos unos ejemplos.
// Ej1: echo "<center>Esto es el contenido de la página</center>";
// Ej2: echo "<center><font color="red">Esto es el contenido de la página</font></center>";
// Bien visto esto ponemos dentro de las comillas del echo el codigo que queramos que salga por pantalla.

echo "" ;

CloseTable();
include("footer.php");
?>
Este módulo es lo más senzillo que se puede hacer. Espero que sirva.
Ejemplo de Módulo II
2o Ejemplo de Módulo

En este manual explicaremos como hacer un modulo con funciones y con enlaces para ir poniendo diferentes paginas de información en el mismo módulo. Veremos también que segun una funcion switch determinamos que funcion ( o sea pagina de informacion ) vamos cargando.

Para ello podemos fijarnos en el siguiente codigo que explica que es cada cosa. Lo podeis copiar y pegar para probar el resultado del modulo.

<?php
// Seguridad de los módulos
if (!eregi("modules.php", $PHP_SELF)) {
die ("You can't access this file directly...");
}
$module_name = basename(dirname(__FILE__)); // Capturamos el nombre del módulo
$index = 1;
function Principal() {
global $module_name; // Esta variable determina el nombre de la carpeta del módulo
include("header.php"); // Incluimos la cabezera de la pagina
OpenTable(); // Abrimos la tabla para insertar información
// Titulo de la Pagina
echo "<center>Ejemplo de Módulo usando funciones para separa información o contenidos.</center><br><br>";
// Enlaze para ejecutar la función uno del modulo
echo "<a href="modules.php?name=$module_name&func=uno">Enlace a la función uno.</a><br>";
// Enlaze para ejecutar la función dos del modulo
echo "<a href="modules.php?name=$module_name&func=dos">Enlace a la función dos.</a><br>";
CloseTable(); // Cerramos la tabla del contenido
include("footer.php"); // Incluimos el pie de pagina
}
function uno() {
global $module_name;
include("header.php");
OpenTable();
echo "Ahora estamos en la función uno.";
echo "<a href="modules.php?name=$module_name">Volver a la pagina principal</a>";
CloseTable();
include("footer.php");
}
function dos() {
global $module_name;
include("header.php");
OpenTable();
echo "Ahora estamos en la función dos.";
CloseTable();
include("footer.php");
}
// Este switch determina segun el valor que tiene la variable func que función debe ejecutar
switch($func) {
// La función default es la función por defecto que cargara al dirigirse al módulo
default:
Principal();
break;
// Para el caso que la variable func tenga como valor uno ejecutara la función uno() que tenemos en el codigo
case "uno":
uno();
break;
// Para el caso que la variable func tenga como valor dos ejecutara la funcion dos() que tenemos en el codigo
case "dos":
dos();
break;
}
?>


Visto lo visto podeis comprobar que no es muy complicado hacer un modulo con diferentes paginas de información. Podeis añadir tantas funciones como querais. Sobretodo no os dejeis de poner el codigo necesario dentro del switch.
Ejemplo de Módulo III
3r. Ejemplo de Módulo.

Para este ejemplo de módulo vamos a desarrollar un modulo con 2 funciones. En una pondremos un formulario con 2 campos, seguidamente enviaremos la informacion a otra funcion para tratarla como queramos. También se explican algunas funciones que podemos usar para terminar de personalizar el módulo.
<?php
if (!eregi("modules.php", $PHP_SELF)) {
die ("You can't access this file directly...");
}
$module_name = basename(dirname(__FILE__));
$index = 1;
$pagetitle = "- Módulo de Ejemplo"; // Esta variable añade lo que queramos al titulo de la pagina.
// En esta funcion vamos a tener 2 OpenTable - CloseTable para conseguir un efecto de tablas.
// En el primer OpenTable - CloseTable pondremos el logo y titulo de la pagina.y en el segundo el formulario
function Formulario() {
global $module_name;
include("header.php");
// En este primer OpenTable CloseTable pondremos el titulo del módulo. Podemos insertar imagenes
// o lo que queramos. ( Ejemplo de imagen <img src="modules/$module_name/logo.gif">
OpenTable();
echo "<center>Ejemplo de Módulos III. Formularios y Envio de Información.</center>";
CloseTable();
// En este segundo OpenTable CloseTable vamos a poner el formulario
// Fijemonos sobretodo en action="" del formulario que es donde se envia la información
// También fijemonos en los inputs. El name marca el nombre de variable que se crea
OpenTable();
echo " <form name="formulario" method="post" action="modules.php?name=$module_name&func=enviar">
Nombre: <input type="text" name="nombre">
Apellido: <input type="text" name="apellido1">
<input type="submit" name="Submit" value="Enviar">
</form> ";
CloseTable();
// También podriamos haver dejado el action en action="modules.php?name=$module_name"
// y haver puesto una variable oculta de name="func" y value="enviar"
// de la forma <input type="hidden" name="func" value="enviar">
// Podeis usar cualquiera de las 2 maneraas. Todas son validas.
include("footer.php");
}
// En esta información capturaremos las variables con sus valores que provienen del formulario.
// Fijaos que en dentro de Enviar() van las variables y que también las hemos puesto en el switch de más abajo.
function Enviar($nombre, $apellido1) {
global $module_name;
include("header.php");
OpenTable();
// Mostramos por pantalla el valor que tienen esas variables
echo "Nombre: $nombre Apellido: $apellido1";
CloseTable();
include("footer.php");
}
switch($func) {
default:
Formulario();

case "enviar":
Enviar($nombre, $apellido1);
break;
}
?>
Ejemplo de Módulo V
5 Ejemplo: La culminación.

Este es el ultimo ejemplo de módulo. Explicaremos algunas cosas que se le pueden añadir a un módulo para terminar de culminar nuestras creaciones.

• El copyight
• Función Multilenguaje
Sobre el Copyright
Podemos añadir una ficha de copyright al módulo. Podeis ver en cualquiera de mis creaciones que al final del contenido de la página aprecer un enlace de la forma NombreModulo © que vincula a otra página ( pop-up) que muestra la información de copyright del módulo.

Para ello:
1.- Haremos una copia del copyright.php de otro módulo. ( Ej: Content )
2.- Copiamos el copyright.php dentro de nuestro módulo
3.- Editamos el fichero copyright con un editor y cambiamos los siguiente campos.

$author_name = "Francisco Burzi"; < Nuestro nombre
$author_email = ""; < Nuestro email
$author_homepage = "http://phpnuke.org"; < Nuestro sitio web
$license = "GNU/GPL"; < Licencia del Módulo
$download_location = "http://phpnuke.org/modules.php?name=Downloads"; < Enlace para bajarlo.
$module_version = "1.0"; < Versión del Módulo
$module_description = "Module... "; < La descripción del modulo.

4-. Guardamos los cambios.
5.- Nada más. PHP-Nuke se encarga automaticamente del resto.

Sobre las opciones Multilenguaje de los módulos
Podemos tener un módulo que funcione con diferentes idiomas ( ingles, español , ... )

Para poder realizar estos módulos realizaremos lo siguiente:

Lo que haremos sera cambiar todos los textos del módulo por "._TITULO."o "._SALUDA."de tal forma que no tengamos texto sino un conjunto de "variables" que cojeran su valor segun el idioma que este usando el sitio.
Seguidamente añadiremos una carpeta llamada language dentro de la carpeta de nuestro módulo.
Por ultimo vamos a crear los ficheros por ejemplo lang-spanish.php, lang-english.php , ... uno para cada idioma.

Los ficheros deben tener la siguiente forma.

<?
define("_PREVIOUS","Página Anterior");
define("_PREVIOUS","Página Anterior");
?>
Lo que haremos sera definir todas las variables que usemos por ejemplo:
<?
define("_TITULO","Módulo de Prueba");
define("_SALUDA","Bienvenido al ejemplo de módulos numero 5 de nyc.sytes.net");
...
?>

Guardaremos y crearemos todas las traducciones que queramos podamos hacer. De esta forma segun el idioma que use el visitante aplicara las traducciones españolas, inglesas, ....


Creación Themes PHP-Nuke
Desarrollo PHP-Nuke

Antes de empezar

Bien antes de empezar decir que sin conocimientos minimos de
HTML es mejor no seguir leyendo. Los conocimientos PHP necessarios no son muy
complicados y se pueden aprender rapidamente ( se daran más adelante ).
Classificación de Themes
Dicho lo dicho vamos ahora a classificar un poco los themes PHP-Nuke. En este manual vamos a diferenciar los themes en 2 classes.
1.- Los themes basados en el formato NukeNews
2.- Los themes generales en PHP.

Porque esta classificación?
Pues bien los themes en formato NukeNews van separados parte por parte con ficheros especificos para cada zona. Los themes generales son aquellos que solamente llevan un theme.php con alguna carpeta de images y styles.
Partes de un Theme
Theme General PHP-Nuke
Estos themes tienen toda la información, funciones php, y diseño incluido dentro del theme.php. Tendremos que editar este fichero para ir modificando y obtener el resultado deseado. Para ello lo abriremos con un editor de código como Bloc de Notas y modificaremos a nuestro gusto.

Theme en formato NukeNews
Por otra parte si abrimos la carpeta themes/NukeNews/ veremos los siguientes archivos:

1.- header.html ( Fichero que contiene el diseño de la cabezera )
2.- blocks.html ( Fichero que contiene el diseño de los bloques )
3.- footer.html ( Fichero que contiene el diseño del pie de pagina )
4.- left_center.html ( Fichero que contiene el formato de la parte central-izquierda)
5.- center_right.html ( Fichero que contiene el formato de la parte central-derecha )
6.- story_home.html ( Fichero que contiene el diseño de las noticias en la página principal )
7.- story_page.html ( Fichero que contiene el diseño de las noticias al darle a Leer más... )
8.- theme.php ( Fichero que contiene todas las funciones PHP usadas por el theme )
9.- tables.php ( Fichero que contiene el formato de las tablas generales de un PHP-Nuke )

Tendremos que ir editando fichero a fichero para ir modificando cada zona de nuestro theme PHP-Nuke.

Programas de Edición
Como opción general la solución es usar Bloc de Notas este nunca dará problemas.

Como editar themes generales PHP?
No hay más solución que editar el codigo PHP con Bloc de Notas o cualquier editor que tengamos a mano. En este caso no hay otra solución posible. El fichero theme.php contiene una série de funciones PHP que incluien funciones y diseño. ( Las funciones estan explicadas más adelante. )

Como editar themes del formato NukeNews?
Podemos editar cada parte del theme con el Bloc de Notas sin problemas. A diferencia de los themes generales ahora podremos editar cada parte de diseño del theme con un editor visual. Para todos aquellos que estamos acostumbrados a diseñar nuestras webs con editores visuales como por ejemplo Dreamweaver tendremos que tener en cuenta el siguiente punto.

• Si abrimos la parte de un theme en formato NukeNews con un editor visual como Macromedia Dreamweaver 4 lo más probable es que se estropee el theme.
La razón es que los editores visuales cierran las tablas automaticamente, añadiendo codigo fuente que nos hace que las tablas no funcionen correctamente o se modifiquen inadecuadamente. Al completar este código el resultado no es el deseado.
Y muchos se preguntaran.. y como lo hacemos pues? A pelo editando código fuente?
Pues bien la respuesta es NO. No necesariamente. Actualemente hay editores visuales que no cierran las tablas. De entre el que destacamos Macromedia Dreamweaver MX. ( hay más editores válidos ). Podremos por lo tanto usar estos editores que no modifican el código para modificar el diseño de nuestro theme.

El procedimiento sera ir modificando cada parte del theme a nuestro gusto.

Ejemplo de Creación de un Theme en formato NukeNews ( Para Principiantes )
Vamos ahora a crear nuestro propio theme paso a paso. Nos basaremos con el formato NukeNews de tal forma que podamos editar visualemente el diseño.

1.- Hacemos una copia del theme NukeNews incluido en themes/ y renombraremos la carpeta copia del NukeNews como ThemePrueba.
2.- Editaremos el código fuente de todos y cada uno de los ficheros Reemplazando NukeNews por ThemePrueba. El procedimiento es ir abriendo uno a uno cada fichero con el bloc de Notas o similares e ir reemplazando todo lo que diga NukeNews por ThemePrueba. Con la finalidad de corregir todos los enlaces.
3.- A continuación aplicaremos el Theme desde admin.php > Preferencias > Tema del Sitio.
4.- Ahora estaremos usando el ThemePrueba como diseño de la web y el diseño sera evidentemente igual que el NukeNews.
5.- Desde aqui empieza ya el trabajo, imaginación y diseño de cada uno.
6.- Para empezar a tocar el diseño empezaremos con algo senzillo como quitar, modificar o justicar alguna parte.
Por ejemplo: Abrimos el header.html con Dreamweaver MX o similares y cambiamos la posición de logo. A continuación guardamos y actualizamos (F5) el navegador donde estamos visualizando la web con el theme ThemePrueba. Este es la manera de ir modificando.

Si por alguno de los casos vemos que se ha estropeado el theme. Vamos a themes/NukeNews/ cojemos el fichero que nos hayamos cargado y lo reemplazamos en themes/ThemePrueba/ ( Recordad volver a modificar los enlaces reemplazando NukeNews por ThemePrueba. )
Funciones PHP que tenemos en el theme.php
Esta parte es general para todo los themes PHP-Nuke. Puede que algunas funciones no esten definidas o que haya más funciones, eso ya depende de cada theme.
Por lo general las funciones más importantes són:

function themeheader ( Función para diseño y codigos usados en la cabezera )
function FormatStory ( Función para diseño y codigos usados para el formato de las noticias )
function themefooter ( Función para diseño y codigos usados en el pie de pagina )
function themeindex ( Función para diseño y codigos usados para el formato de noticias de la pagina principal )
function themearticle ( Función para diseño y codigos usados en noticias )
function themesidebox ( Función para diseño y codigos de los bloques )
  • 0
Caballeros de solamnia|CDS TOP 915

Comentar Imagen

Comentar Imagen
Comentar Imagen




1 usuarios estn leyendo este tema

0 miembros, 1 invitados, 0 usuarios annimos

Centro Pokemon PokéExperto Portal de Anime y Manga de KAMIKAZE FANSUB! Juegos gratis