LinuxParty

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado
 

Lo prometido es deuda, cuando dije que iba a explicar como se realizó la migración de LinuxParty de PHP-Nuke a Joomla, ahora procederé a explicarlo. Estos fueron los principales pasos que yo di para todos aquellos que quieran seguirlos. La principal razón de esta migración es que las antiguas web no van a funcionar con PHP 5.5 (y superiores) y PHP-Nuke funcionaba mediantamente bien hasta la versión 5.2.

En mi caso hice lo siguiente, migré primero de PHP-Nuke a Joomla 1.5 -tal vez puedas saltarte este paso, pero el script de migración ya está hecho- (porque encontré por ahí un artículo en Hebreo que explicaba el proceso) y después de traducirlo, migré a Joomla 1.5, y de ésta versión a Joomla 2.5.X con otro script que escribí yo, que funcionar, funciona, ya que hay por ahí un plugin que dice que migra (entre versiones, de PHP-Nuke a Joomla, WordPress y de 1.5 a 2.5, pero descártelo, ya que dicho script no le va a realizar dicha tarea, vamos que no funciona)

El proceso para la  migración, posiblemente funcione con todas las versiones de PHPNuke, pero yo lo he probado con éxito en una versión 7.X, tal vez también funcione con versiones anteriores y posteriores, por intentarlo no va a perder nada, si no funciona, no se preocupe, por que no modifica la versión de la BBDD de PHP-Nuke.

No haga el proceso de migración en un servidor en explotación, debes crear un entorno de pruebas para realizar el proceso.

Si quieres que el autor te haga la migración, solicita presupuesto e información en www.extrehost.com

Vamos a migrar la Base de Datos "oldbbddphpnuke" que usa tu aplicación Php-nuke a la base de datos "bbddjoomla15" que utilizaría tu Joomla 1.5

Entramos en (por ejemplo) en phpMyAdmin, accedemos a la BBDD bbddjoomla15 y hacemos correr este script primeramente:

 

--  --  --  --
-- Creado por Javier Orovengua, bajo licencia GPL
-- oldbbddphpnuke is the OLD SOURCE PHP-NUKE Data Base -- bbddjoomla15 is the NEW OLD JOOMLA DATABASE 1.5.X -- The future NEW JOOMLA DATABASE is named bbddjomla25 -- This migration: bbddjoomla15 to newajucacom is other script -- -- -- --
-- El prefijo predeterminado de la bd en joomla, se lo hemos dejado como jos_
-- El prefijo predeterminado para PHP-Nuke se lo hemos dejado php nuke_

-- Delete any existing data.
DELETE FROM `bbddjoomla15`.`jos_content_frontpage`;
DELETE FROM `bbddjoomla15`.`jos_content`;
DELETE FROM `bbddjoomla15`.`jos_categories`;
DELETE FROM `bbddjoomla15`.`jos_sections`;
DELETE FROM `bbddjoomla15`.`jos_poll_data`;
DELETE FROM `bbddjoomla15`.`jos_polls`;

-- Insert a new section for news. INSERT INTO `bbddjoomla15`.`jos_sections` (
`title`,
`alias`,
`scope`,
`image_position`,
`description`,
`published`,
`params`)
VALUES (
'Archive',
'news',
'content',
'right',
'Old site archive',
1,
'');

-- Select the newly inserted section. SET @nSID := LAST_INSERT_ID();

-- Insert the categories. INSERT INTO `bbddjoomla15`.`jos_categories` (
`parent_id`,
`title`,
`alias`,
`image`,
`section`,
`image_position`,
`description`,
`published`,
`access`,
`count`,
`params`)
SELECT 0, -- parent_id t.`topicname`, -- title REPLACE(LOWER(t.`topicname`), ' ', '-'), -- alias t.`topicimage`, -- image @nSID, -- section 'left', -- image_position t.`topictext`, -- description 1, -- published 0, -- access t.`counter`, -- count '' -- params FROM `oldbbddphpnuke`.`nuke_topics` t; -- Insert the content INSERT INTO `bbddjoomla15`.`jos_content` (
`id`,
`title`,
`alias`,
`introtext`,
`fulltext`,
`state`,
`sectionid`,
`mask`,
`catid`,
`created`,
`created_by`,
`created_by_alias`,
`publish_up`,
`images`,
`urls`,
`hits`,
`attribs`,
`metakey`,
`metadesc`)
SELECT `sid`, s.`title`, REPLACE(LOWER(s.`title`), ' ', '-'),
s.`hometext`,
s.`bodytext`,
1,
@nSID,
0,
(SELECT c.`id` FROM `bbddjoomla15`.`jos_categories` c WHERE c.`title` = (SELECT t.`topicname` FROM `oldbbddphpnuke`.`nuke_topics` t WHERE t.`topicid` = s.`topic` LIMIT 1) AND c.`description` = (SELECT t.`topictext` FROM `oldbbddphpnuke`.`nuke_topics` t WHERE t.`topicid` = s.`topic` LIMIT 1)
LIMIT 1),
s.`time`,
IF(@nAID:=(SELECT u.`id` FROM `bbddjoomla15`.`jos_users` u WHERE u.`username` = s.`informant` LIMIT 1), @nAID, @nSuperID),
s.`informant`,
s.`time`,
'',
'',
s.`counter`,
'',
'',
'' FROM `oldbbddphpnuke`.`nuke_stories` s; -- Publish the stories. SET @nOrder:=0;


INSERT INTO `bbddjoomla15`.`jos_content_frontpage` (
`content_id`,
`ordering`)
SELECT c.`id`, @nOrder:=@nOrder+1 FROM `bbddjoomla15`.`jos_content` c WHERE c.`sectionid` = @nSID ORDER BY c.`publish_up` DESC;

--
-- Importamos los usuarios.
--

INSERT INTO `bbddjoomla15`.`jos_users` (
`name`, -- name
`username`, -- username
`email`, -- user_email
`password`, -- user_password
`sendEmail`, -- "1"
`usertype`, -- "Registered"
`registerDate`, -- user_regdate
`block` )
SELECT
d.`username`, -- name
d.`username`, -- username
d.`user_email`, -- email
d.`user_password`, -- password
1, -- sendEmail
'Registered', -- usertype
d.`user_regdate`, -- user_regdate
d.`ublockon` -- block
FROM
`oldbbddphpnuke`.`nuke_users` d;


-- Insert the polls. INSERT INTO `bbddjoomla15`.`jos_polls` (
`title`,
`alias`,
`voters`,
`published`,
`access`,
`lag`)
SELECT p.`pollTitle`, REPLACE(LOWER(p.`pollTitle`), ' ', '-'),
p.`voters`,
1,
0,
31536000 FROM `oldbbddphpnuke`.`nuke_poll_desc` p; -- Insert the polls votes. INSERT INTO `bbddjoomla15`.`jos_poll_data` (
`pollid`,
`text`,
`hits`)
SELECT p.`id`, d.`optionText`, d.`optionCount` FROM `oldbbddphpnuke`.`nuke_poll_data` d, `oldbbddphpnuke`.`nuke_poll_desc` pd, `bbddjoomla15`.`jos_polls` p WHERE d.`pollID` = pd.`pollID` AND pd.`pollTitle` = p.`title` AND NOT d.`optionText` = '';

-- En bbddjoomla15, BBDD de Joomla 1.5.x -- Actualizar los alias, para quitarle caracteres raros y -- sobrantes, como las comas, puntos, dos puntos, ñ, etc... UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, 'á', 'a');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, 'é', 'e');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, 'í', 'i');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, 'ó', 'o');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, 'ú', 'u');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, 'Á', 'a');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, 'É', 'e');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, 'Í', 'i');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, 'Ó', 'o');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, 'Ú', 'u');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, 'ñ', 'n');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, 'Ñ', 'n');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, '¿', '');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, '¡', '');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, ';', '');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, ':', '');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, ',', '');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, '.', '');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, '"', '');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, '(', '');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, ')', '');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, '[', '');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, ']', '');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, '&', 'y');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, ' ', '-');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, '%', 'porciento');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, '$', 'dolars');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, '€', 'euros');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, '\\', '');
UPDATE `bbddjoomla15`.`jos_content` SET `alias`=replace(`alias`, '/', '');

-- PREVIAMENTE INSTALA EL COMPONENTE JCOMMENTS -- Insert the comments. INSERT INTO `bbddjoomla15`.`jos_jcomments` (
`parent`,
`object_id`,
`object_group`,
`object_params`,
`lang`,
`userid`,
`name`,
`username`,
`email`,
`homepage`,
`title`,
`comment`,
`ip`,
`date`,
`isgood`,
`ispoor`,
`published`,
`subscribe`,
`source`,
`editor`)
SELECT 0,
j.`id`,
"com_content",
'',
'*',
IF(u.`id` IS NULL, 0, u.`id`),
IF(u.`username` IS NULL, c.`name`, u.`username`),
IF(u.`name` IS NULL, c.`name`, u.`name`),
IF(u.`email` IS NULL, '', u.`email`),
'',
c.`subject`,
c.`comment`,
c.`host_name`,
c.`date`,
0,
0,
1,
0,
'',
'' FROM `oldbbddphpnuke`.`nuke_comments` c LEFT JOIN `bbddjoomla15`.`jos_users` u ON c.`name` = u.`username` INNER JOIN `oldbbddphpnuke`.`nuke_stories` s ON s.`sid` = c.`sid` LEFT JOIN `bbddjoomla15`.`jos_content` j ON j.`created` = s.`time` AND j.`title` = s.`title` WHERE NOT c.`comment` = '';

Bien ya tenemos migrado PHP-Nuke a Joomla 1.5, ahora vamos a correr este siguiente script para migrar de Joomla 1.5 a Joomla 2.5.

Debemos copiar o renombrar bbddjoomla15 a oldbbddjoomla15, después crear una BBDD que se llamará "newbbddjomla25" y 

y con ella activa ejecutaremos el script SQL de abajo.

--  --  --  --
-- Creado por Javier Orovengua, bajo licencia GPL -- oldbbddjoomla15 is the OLD SOURCE JOOMLA 1.5 Data Base -- newbbddjoomla25 is the NEW OLD JOOMLA DATABASE 2.5.X -- -- --
-- El prefijo predeterminado de la BD de Joomla 1.5 será JOS_
-- El prefijo predeterminado de la BD de JOOMLA 2.5.X será myprfx33_


-- Delete any existing data. DELETE FROM `newbbddjoomla25`.`myprfx33_content_frontpage`;
DELETE FROM `newbbddjoomla25`.`myprfx33_content`;
DELETE FROM `newbbddjoomla25`.`myprfx33_categories`;
DELETE FROM `newbbddjoomla25`.`myprfx33_jcomments`;

-- Gestion de Inserción de Categorías. -- Gestion de Inserción de Categorías. UPDATE `newbbddjoomla25`.`myprfx33_assets` SET `level`='2',
`name`='com_content.category.2',
`title`='Artículos',
`rules`='{"core.create":[],"core.delete":[],"core.edit":[],"core.edit.state":[],"core.edit.own":[]}' WHERE `name`='com_content.category.2';

-- -- -- -- SET @nSID := LAST_INSERT_ID();

-- Insert the categories. INSERT INTO `newbbddjoomla25`.`myprfx33_categories` (
`id`,
`parent_id`,
`asset_id`,
`lft`,
`rgt`,
`level`,
`path`,
`extension`,
`title`,
`alias`,
`published`,
`access`,
`params`,
`metadata`,
`created_user_id`,
`created_time`,
`modified_user_id`,
`modified_time`,
`hits`,
`language`
)
SELECT `id`, -- id `parent_id`, -- parent_id @nSID, -- asset_id '1', -- lft '2', -- rgt '1', -- level `alias`, -- insertar path en newajuca 'com_content', -- extension `title`, `alias`, '1', -- published '1', -- access '{"category_layout":"","image":""}', -- params '{"author":"","robots":""}',-- metadata '42', -- created_user_id '2010-06-28 13:26:37', -- created_time '393', -- modified_user_id '2012-07-12 17:04:35', -- modified_time '0', -- hits counts en oldajuca '*' -- language FROM `oldbbddjoomla15`.`jos_categories`; -- Fin.. Gestion de Inserción de Categorías. -- Fin.. Gestion de Inserción de Categorías. -- Insert the content INSERT INTO `newbbddjoomla25`.`myprfx33_content` (
`id`,
`title`,
`alias`,
`introtext`,
`fulltext`,
`state`,
`sectionid`,
`catid`,
`created`,
`created_by`,
`publish_up`,
`images`,
`version`,
`access`,
`hits`,
`featured`,
`language`)
SELECT `id`, -- id `title`, -- title `alias`, -- alias `introtext`, -- introtext `fulltext`, -- fulltext `state`, -- state `sectionid`, -- sectionid `catid`, -- catid `created`, -- created `created_by`, -- created_by `publish_up`, -- publish_up `images`, -- images `version`, -- version 1, -- access `hits`, -- hits 1, -- featured '*' -- language FROM `oldbbddjoomla15`.`jos_content`; -- Publish the stories. SET @nOrder:=0;


INSERT INTO `newbbddjoomla25`.`myprfx33_content_frontpage` (
`content_id`,
`ordering`)
SELECT c.`id`, @nOrder:=@nOrder+1 FROM `newbbddjoomla25`.`myprfx33_content` c ORDER BY c.`publish_up` DESC;




--
-- Importar Usuarios
--

INSERT INTO `newbbddjoomla25`.`myprfx33_users` (
`name`, -- name
`username`, -- username
`email`, -- user_email
`password`, -- user_password
`sendEmail`, -- "1"
`registerDate`, -- user_regdate
`block` )
SELECT
olddb.`name`, -- name
olddb.`username`, -- username
olddb.`email`, -- user_email
olddb.`password`, -- user_password
olddb.`sendEmail`, -- "1"
olddb.`registerDate`, -- user_regdate
olddb.`block`
FROM
`bbddjoomla15`.`jos_users` olddb;

-- Insert the comments. -- Insert the comments. INSERT INTO `newbbddjoomla25`.`myprfx33_jcomments` (
`parent`,
`object_id`,
`object_group`,
`object_params`,
`lang`,
`userid`,
`name`,
`username`,
`email`,
`homepage`,
`title`,
`comment`,
`ip`,
`date`,
`isgood`,
`ispoor`,
`published`,
`subscribe`,
`source`,
`editor`)
SELECT `parent`, `object_id`, `object_group`, `object_params`, `lang`, `userid`, `name`, `username`, `email`, `homepage`, `title`, `comment`, `ip`, `date`, `isgood`, `ispoor`, `published`, `subscribe`, `source`, `editor` FROM `oldbbddjoomla15`.`jos_jcomments`;

Hay otro proceso por si quisiéramos importar los usuarios de PHP-Nuke a Joomla 1.5 (que yo no he probado) deberíamos correr el siguiente script

SELECT
    TRIM(u.`name`),
    u.`username`,
    u.`user_email`,
    u.`user_password`,
    STR_TO_DATE(u.`user_regdate`, "%M %d, %Y"),
    FROM_UNIXTIME(u.`user_lastvisit`),
    '',
    ''
FROM
    `PHPNuke_Source`.`nuke_users` u
WHERE last_ip <>'0';


SELECT * FROM tbl_regals_obtinguts, tbl_cataleg_regals
WHERE tbl_regals_obtinguts.int_fk_id_tbl_cataleg_regals=tbl_cataleg_regals.int_fk_id_tbl_cataleg_regals
AND tbl_cataleg_regals.int_fk_id_tbl_families="+familia+";";

o

SELECT * FROM tbl_regals_obtinguts
INNER JOIN tbl_cataleg_regals USING int_fk_id_tbl_cataleg_regals
WHERE tbl_cataleg_regals.int_fk_id_tbl_families="+familia+";";


SELECT
    `name`,
    `username`,
    `user_email`,
    `user_password`,
    STR_TO_DATE(`user_regdate`, "%M %d, %Y"),
    FROM_UNIXTIME`user_lastvisit`),
FROM
    `nuke_users`, `nuke_banned_ip`
WHERE `nuke_users`.`last_ip` <> '0'
AND `nuke_banned_ip`.`ip_address` <> `nuke_users`.`last_ip`;

Con el objetivo de redirigir las antiguas URLs del tipo "modules.php?name=News&file=article&sid=8116", a las nuevas de Joomla, podrías editar tu fichero .htaccess y poner un montón de reglas, yo lo que hice fue crear un fichero "modules.php" que haría eso, para cuando vengan de otras webs que ya te enlazaron o de algún buscador.

Este sería el fichero "modules.php"

ATENCIÓN, SI VAS A UTILIZAR UNA VERSIÓN DE PHP 5.3 O SUPERIOR DEBERÍAS UTILIZAR ESTE OTRO SCRIPT QUE HEMOS ACTUALIZADO.

Fichero modules.php modificado para PHP 5.3 y superior

<?php

// PARA VERSIONES ANTERIORES O IGUAL A PHP 5.2 // Creado por Javier Orovengua bajo licencia GPL
//modules.php?name=News&file=print&sid=6590
// /modules.php?name=Search&query=espartaco // /modules.php?name=News&file=friend&op=FriendSend&sid=6590/abrir-puertos-via-telnet:-nat-add-virtualserver $tiponame=$_GET["name"]; // $tiponame=trim(htmlspecialchars($_GET["name"]))."<br>"; $tipofile=$_GET["file"]; $ticodigo=$_GET["sid"]; $tiquery =$_GET["query"]; if ($tipofile == "friend") { $tipofile = "article"; }; if (($tiponame == "Search") && ($tiquery <> "")) { header("Location: index.php/component/search/?searchword=$tiquery"); }; if ($tipofile == "print") { $tipofile = "article"; }; if ($tiponame == "print") { $tiponame = "News"; }; if ($tiponame == "News") { } else { echo ' <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-gb" lang="en-gb" dir="ltr"> <head> <title>404 - Error: 404</title> <link rel="stylesheet" href="/templates/system/css/error.css" type="text/css" /> <meta http-equiv="REFRESH" content="4;url=http://www.linux-party.com"> </head> <body> <div class="error"> <div id="outline"> <div id="errorboxoutline"> <div id="errorboxheader">404 - Art&iacute;culo no encontrado</div> <div id="errorboxbody"> <p><strong>Es posible que no pueda visitar esta p&aacute;gina por:</strong></p> <ol> <li>un marcador/favorito <strong>fuera de fecha</strong></li> <li>un motor de b&uacute;squeda que tiene una lista <strong>fuera de fecha para este sitio</strong></li> <li>una <strong>direcci&oacute;n mal escrita</strong></li> <li>usted <strong>no tiene acceso</strong> a esta p&aacute;gina</li> <li>El recurso solicitado no fue encontrado.</li> <li>Se produjo un error al procesar su solicitud.</li> </ol> <p><strong>Por favor, intente una de las p&aacute;ginas siguientes:</strong></p> <ul> <li><a href="/index.php" title="Ir a la p&aacute;gina de Inicio">P&aacute;gina de inicio</a></li> <li><a href="/index.php?option=com_search" title="Buscador del sitio">Buscador del sitio</a></li> </ul> <p>Si las dificultades persisten, p&oacute;ngase en contacto con el administrador de este sitio..</p> <div id="techinfo"> <p>Art&iacute;culo no encontrado</p> <p> </p> </div> </div> </div> </div> </div> </body> </html> '; } if ($tipofile == "article") { } else { echo ' <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-gb" lang="en-gb" dir="ltr"> <head> <title>404 - Error: 404</title> <link rel="stylesheet" href="/templates/system/css/error.css" type="text/css" /> <meta http-equiv="REFRESH" content="4;url=http://www.linux-party.com"> </head> <body> <div class="error"> <div id="outline"> <div id="errorboxoutline"> <div id="errorboxheader">404 - Art&iacute;culo no encontrado</div> <div id="errorboxbody"> <p><strong>Es posible que no pueda visitar esta p&aacute;gina por:</strong></p> <ol> <li>un marcador/favorito <strong>fuera de fecha</strong></li> <li>un motor de b&uacute;squeda que tiene una lista <strong>fuera de fecha para este sitio</strong></li> <li>una <strong>direcci&oacute;n mal escrita</strong></li> <li>usted <strong>no tiene acceso</strong> a esta p&aacute;gina</li> <li>El recurso solicitado no fue encontrado.</li> <li>Se produjo un error al procesar su solicitud.</li> </ol> <p><strong>Por favor, intente una de las p&aacute;ginas siguientes:</strong></p> <ul> <li><a href="/index.php" title="Ir a la p&aacute;gina de Inicio">P&aacute;gina de inicio</a></li> <li><a href="/index.php?option=com_search" title="Buscador del sitio">Buscador del sitio</a></li> </ul> <p>Si las dificultades persisten, p&oacute;ngase en contacto con el administrador de este sitio..</p> <div id="techinfo"> <p>Art&iacute;culo no encontrado</p> <p> </p> </div> </div> </div> </div> </div> </body> </html> '; } // echo "$tiponame -> $tipofile -> $ticodigo"; if ($tiponame == "News") { if ($tipofile == "article") { $string = $ticodigo; $pattern = '/(\d+)\/(\w+)/i'; $replacement = '${1}-$2'; $ticodigo=preg_replace($pattern, $replacement, $string); $ticodigo = str_replace(":","-",$ticodigo); $title = strtolower ($ticodigo); $titulo = str_replace(" ","-",htmlspecialchars($title)); $titulo = str_replace("(","",$titulo); $titulo = str_replace("'","",$titulo); $titulo = str_replace('"',"",$titulo); $titulo = str_replace(".","-",$titulo); $titulo = str_replace(",","",$titulo); $titulo = str_replace("%","porciento",$titulo); $titulo = str_replace(")","",$titulo); $titulo = str_replace("?","",$titulo); $titulo = str_replace("¿","",$titulo); $titulo = str_replace("/","-",$titulo); $titulo = str_replace("¡","",$titulo); $titulo = str_replace(chr(161),"",$titulo); // caracter ¡ $titulo = str_replace(chr(171),"",$titulo); // caracter « $titulo = str_replace(chr(187),"",$titulo); // caracter » $titulo = str_replace(chr(225),"a",$titulo); // caracter á $titulo = str_replace(chr(233),"e",$titulo); // caracter é $titulo = str_replace(chr(237),"i",$titulo); // caracter í $titulo = str_replace(chr(241),"n",$titulo); // caracter ñ $titulo = str_replace(chr(243),"o",$titulo); // caracter ó $titulo = str_replace(chr(250),"u",$titulo); // caracter ú $titulo = str_replace(chr(191),"",$titulo); // caracter ¿ $titulo = str_replace(chr(193),"a",$titulo); // caracter Á $titulo = str_replace(chr(201),"e",$titulo); // caracter É $titulo = str_replace(chr(205),"i",$titulo); // caracter Í $titulo = str_replace(chr(209),"n",$titulo); // caracter Ñ $titulo = str_replace(chr(211),"o",$titulo); // caracter Ó $titulo = str_replace(chr(218),"u",$titulo); // caracter Ú $ticodigo=$titulo; header("Location: index.php/$ticodigo"); } // endif if ($tipofile == "article") } // endif if ($tiponame == "News") ?>


La última parte del script se debe a que yo hice modificaciones en los ficheros "modules/News/article.php" y "mainfile.php" de mi viejo PHP-Nuke, para que los artículos aparecieran con el mismo nombre del título en las URLs amigables, serían por ejemplo del estilo..."http://www.linux-party.com/modules.php?name=News&file=article&sid=812/-que-significa-e-mc-2", de todas formas, funcionará si no modificó nada, (es decir, si no le pone  /-que-significa-e-mc-2)" lo que tratará de hacer la última parte es hacer las URLs amigables también para Joomla.

Y eso es todo.

La configuración de tu nuevo Joomla, se escapa de este artículo, pero si tienes algunas recomendaciones por su puesto, la puedes dejarlos en los comentarios.

Pin It

Comentarios   

Gracias
+2 # Gracias 10-02-2013 10:11
Gracias chicos, esto es todo lo que necesitaba para migrar de PHPNuke a Joomla, además con el modulo "modules.php", para que las antiguas URL sigan funcionando en el nuevo joomla.

Un lujazo!
Responder | Responder con una citación | Citar
Coronel
+1 # Coronel 20-04-2013 09:07
Gracias, :lol: Estp es realmente lo que quería, después de mucho luchar, por fin he conseguido con éxito la migración.
Responder | Responder con una citación | Citar

Escribir un comentario


Código de seguridad
Refescar



Redes:



 

Suscribete / Newsletter

Suscribete a nuestras Newsletter y periódicamente recibirás un resumen de las noticias publicadas.

Donar a LinuxParty

Probablemente te niegues, pero.. ¿Podrías ayudarnos con una donación?


Tutorial de Linux

Nos obligan a moslestarte con la obviedad de que este sitio utiliza Cookies. Ver política