I would like to share a bbcode that I use in my sites and helps me to create direct (full url) links to a file in my site, and avoid relative links not working in my local wamp because I use different "XOOPS_URL" values for hosted site and local test site
Value for hosted site:
le="color: #000000"><?php define('XOOPS_URL', 'http://www.mysite.com' );
Value for local wamp site:
le="color: #000000"><?php define('XOOPS_URL', 'http://mypc/mytestsite1' );
In local wamp server realtive urls pointed to
http://mypc so links or even images didn't worked because they should point to
http://mypc/mytestsite1I liked {X_SITEURL} that could only be used in blocks so I created a new bbcode that worked the same way with textsanitizer:
in /class/textsanitizer folder added a new folder "xu", and inside it the code in this file xu.php
<?php /** * TextSanitizer extension * * You may not change or alter any portion of this comment or credits * of supporting developers from this source code or any supporting source code * which is considered copyrighted (c) material of the original comment or credit authors. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ * @license GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) * @package class * @subpackage textsanitizer * @since 2.3.0 * @author mondarse <mondarse@gmail.com> * @version $Id: xu.php 3575 2011-09-05 11:35:11Z mondarse $ * @deprecated */ defined('XOOPS_ROOT_PATH') or die('Restricted access'); class MytsXu extends MyTextSanitizerExtension { function load(&$ts) { $ts->patterns[] = "/[xu]/sU"; $ts->replacements[] = XOOPS_URL; return true; } } ?>
and also added a new value in the extension array in /class/textsanitizer/config.php
<?php /** * TextSanitizer extension * * You may not change or alter any portion of this comment or credits * of supporting developers from this source code or any supporting source code * which is considered copyrighted (c) material of the original comment or credit authors. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ * @license GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) * @package class * @subpackage textsanitizer * @since 2.3.0 * @author Taiwen Jiang <phppp@users.sourceforge.net> * @version $Id: config.php 8066 2011-11-06 05:09:33Z beckmi $ */ defined('XOOPS_ROOT_PATH') or die('Restricted access'); return $config = array( "extensions" => array( "iframe" => 0, "image" => 1, "flash" => 1, "youtube" => 1, "mp3" => 0, "wmp" => 0, // If other module is used, please modify the following detection and 'link' in /wiki/config.php "wiki" => is_dir(XOOPS_ROOT_PATH . '/modules/mediawiki/'), "mms" => 0, "rtsp" => 0, "ul" => 1, "li" => 1, "xu" => 1), "truncate_length" => 60, // Filters XSS scripts on display of text // There is considerable trade-off between security and performance "filterxss_on_display" => false); ?>
Hope this hack would be useful.
MonDarSE