/* WP-Cache Config Sample File See wp-cache.php for author details. */ $wpsc_last_post_update = 1507500483; //Added by WP-Cache Manager $wp_cache_slash_check = 1; //Added by WP-Cache Manager if ( ! defined('WPCACHEHOME') ) define( 'WPCACHEHOME', WP_CONTENT_DIR . "/plugins/wp-super-cache/" ); //Added by WP-Cache Manager $cache_compression = 1; //Added by WP-Cache Manager $cache_enabled = true; //Added by WP-Cache Manager $super_cache_enabled = true; //Added by WP-Cache Manager $cache_max_time = 600; //Added by WP-Cache Manager //$use_flock = true; // Set it true or false if you know what to use $cache_path = WP_CONTENT_DIR . '/cache/'; $file_prefix = 'wp-cache-'; // We want to be able to identify each blog in a WordPress MU install $blogcacheid = ''; if( defined( 'VHOST' ) ) { $blogcacheid = 'blog'; // main blog if( constant( 'VHOST' ) == 'yes' ) { $blogcacheid = $_SERVER['HTTP_HOST']; } else { $request_uri = preg_replace('/[ <>\'\"\r\n\t\(\)]/', '', str_replace( '..', '', $_SERVER['REQUEST_URI'] ) ); if( strpos( $request_uri, '/', 1 ) ) { if( $base == '/' ) { $blogcacheid = substr( $request_uri, 1, strpos( $request_uri, '/', 1 ) - 1 ); } else { $blogcacheid = str_replace( $base, '', $request_uri ); $blogcacheid = substr( $blogcacheid, 0, strpos( $blogcacheid, '/', 1 ) ); } if ( '/' == substr($blogcacheid, -1)) $blogcacheid = substr($blogcacheid, 0, -1); } $blogcacheid = str_replace( '/', '', $blogcacheid ); } } // Array of files that have 'wp-' but should still be cached $cache_acceptable_files = array( 'wp-comments-popup.php', 'wp-links-opml.php', 'wp-locations.php' ); $cache_rejected_uri = array('wp-.*\\.php', 'index\\.php'); $cache_rejected_user_agent = array ( 0 => 'bot', 1 => 'ia_archive', 2 => 'slurp', 3 => 'crawl', 4 => 'spider', 5 => 'Yandex' ); $cache_rebuild_files = 1; //Added by WP-Cache Manager // Disable the file locking system. // If you are experiencing problems with clearing or creating cache files // uncommenting this may help. $wp_cache_shutdown_gc = 0; $wp_super_cache_late_init = 0; // uncomment the next line to enable advanced debugging features $wp_super_cache_advanced_debug = 0; $wp_super_cache_front_page_text = ''; $wp_super_cache_front_page_clear = 0; $wp_super_cache_front_page_check = 0; $wp_super_cache_front_page_notification = '0'; $wp_cache_object_cache = 0; //Added by WP-Cache Manager $wp_cache_anon_only = 0; $wp_supercache_cache_list = 0; //Added by WP-Cache Manager $wp_cache_debug_to_file = 0; $wp_super_cache_debug = 0; $wp_cache_debug_level = 5; $wp_cache_debug_ip = ''; $wp_cache_debug_log = ''; $wp_cache_debug_email = ''; $wp_cache_pages[ "search" ] = 0; $wp_cache_pages[ "feed" ] = 0; $wp_cache_pages[ "category" ] = 0; $wp_cache_pages[ "home" ] = 0; $wp_cache_pages[ "frontpage" ] = 0; $wp_cache_pages[ "tag" ] = 0; $wp_cache_pages[ "archives" ] = 0; $wp_cache_pages[ "pages" ] = 0; $wp_cache_pages[ "single" ] = 0; $wp_cache_hide_donation = 0; $wp_cache_not_logged_in = 0; //Added by WP-Cache Manager $wp_cache_clear_on_post_edit = 1; //Added by WP-Cache Manager $wp_cache_hello_world = 0; //Added by WP-Cache Manager $wp_cache_mobile_enabled = 0; //Added by WP-Cache Manager $wp_cache_cron_check = 1; //Added by WP-Cache Manager ?> /* WP-Cache Config Sample File See wp-cache.php for author details. */ $wpsc_last_post_update = 1507500483; //Added by WP-Cache Manager $wp_cache_slash_check = 1; //Added by WP-Cache Manager if ( ! defined('WPCACHEHOME') ) define( 'WPCACHEHOME', WP_CONTENT_DIR . "/plugins/wp-super-cache/" ); //Added by WP-Cache Manager $cache_compression = 1; //Added by WP-Cache Manager $cache_enabled = true; //Added by WP-Cache Manager $super_cache_enabled = true; //Added by WP-Cache Manager $cache_max_time = 600; //Added by WP-Cache Manager //$use_flock = true; // Set it true or false if you know what to use $cache_path = WP_CONTENT_DIR . '/cache/'; $file_prefix = 'wp-cache-'; // We want to be able to identify each blog in a WordPress MU install $blogcacheid = ''; if( defined( 'VHOST' ) ) { $blogcacheid = 'blog'; // main blog if( constant( 'VHOST' ) == 'yes' ) { $blogcacheid = $_SERVER['HTTP_HOST']; } else { $request_uri = preg_replace('/[ <>\'\"\r\n\t\(\)]/', '', str_replace( '..', '', $_SERVER['REQUEST_URI'] ) ); if( strpos( $request_uri, '/', 1 ) ) { if( $base == '/' ) { $blogcacheid = substr( $request_uri, 1, strpos( $request_uri, '/', 1 ) - 1 ); } else { $blogcacheid = str_replace( $base, '', $request_uri ); $blogcacheid = substr( $blogcacheid, 0, strpos( $blogcacheid, '/', 1 ) ); } if ( '/' == substr($blogcacheid, -1)) $blogcacheid = substr($blogcacheid, 0, -1); } $blogcacheid = str_replace( '/', '', $blogcacheid ); } } // Array of files that have 'wp-' but should still be cached $cache_acceptable_files = array( 'wp-comments-popup.php', 'wp-links-opml.php', 'wp-locations.php' ); $cache_rejected_uri = array('wp-.*\\.php', 'index\\.php'); $cache_rejected_user_agent = array ( 0 => 'bot', 1 => 'ia_archive', 2 => 'slurp', 3 => 'crawl', 4 => 'spider', 5 => 'Yandex' ); $cache_rebuild_files = 1; //Added by WP-Cache Manager // Disable the file locking system. // If you are experiencing problems with clearing or creating cache files // uncommenting this may help. $wp_cache_shutdown_gc = 0; $wp_super_cache_late_init = 0; // uncomment the next line to enable advanced debugging features $wp_super_cache_advanced_debug = 0; $wp_super_cache_front_page_text = ''; $wp_super_cache_front_page_clear = 0; $wp_super_cache_front_page_check = 0; $wp_super_cache_front_page_notification = '0'; $wp_cache_object_cache = 0; //Added by WP-Cache Manager $wp_cache_anon_only = 0; $wp_supercache_cache_list = 0; //Added by WP-Cache Manager $wp_cache_debug_to_file = 0; $wp_super_cache_debug = 0; $wp_cache_debug_level = 5; $wp_cache_debug_ip = ''; $wp_cache_debug_log = ''; $wp_cache_debug_email = ''; $wp_cache_pages[ "search" ] = 0; $wp_cache_pages[ "feed" ] = 0; $wp_cache_pages[ "category" ] = 0; $wp_cache_pages[ "home" ] = 0; $wp_cache_pages[ "frontpage" ] = 0; $wp_cache_pages[ "tag" ] = 0; $wp_cache_pages[ "archives" ] = 0; $wp_cache_pages[ "pages" ] = 0; $wp_cache_pages[ "single" ] = 0; $wp_cache_hide_donation = 0; $wp_cache_not_logged_in = 0; //Added by WP-Cache Manager $wp_cache_clear_on_post_edit = 1; //Added by WP-Cache Manager $wp_cache_hello_world = 0; //Added by WP-Cache Manager $wp_cache_mobile_enabled = 0; //Added by WP-Cache Manager $wp_cache_cron_check = 1; //Added by WP-Cache Manager ?> Joomulus 2.0 – More Simple Yet More Powerful | Joomla Bear Blog Joomulus 2.0 – More Simple Yet More Powerful – Joomla Bear Blog

Joomulus 2.0 – More Simple Yet More Powerful

After many many months and little time we’ve finally refined and simplified the Joomulus flash tag cloud. The latest version of wp cumulus for Joomla is available now.

I’d like to introduce Joomulus 2.0!

Now there are still improvements we are planning, but this version works on all joomla 1.5 variations, and from the testing we’ve done it works on all major browsers as well.

Thanks to all the users who contributed to Joomulus (Flom I know you did a lot of work). In this new version we’ve done away with a lot of the parameters from the earlier versions; No more tags generated from content for one.

The main reason for this was to stop a major bug with PHP expending bytes allocated, which would stop the whole page from loading and leaving the viewer with a lovely PHP error.

The second reason to remove them, and people may not be aware of this, is the search link that all of the generated tags were associated with. This not only brings up usability issues with the user clicking on a tag then being confronted with a list of all content search results with that tag word in it (which is quite annoying). But it also brings up 404 errors, if you’re a user of Google’s webmaster tools you’ll see a lot of unreachable urls along the lines of:

index.php?option=com_search&searchword=joomlabear&searchphrase=exact&ordering=newest

Lastly, you didn’t  have full control over what tags were generated.

These issues combined make for a fairly useless little tool. A: it’s not really usable B: it doesn’t help search engines but rather impairs them. So the tag generation from content has been all together removed (also known as automatic read out).

We’re left now with one option, the user defined tags. This requires a little more work to set up but allows full control over the tag, what it links to, and the size at which it should appear. And because the XML process is pretty much the same, but requires even MORE set up with ftp access, the parameter tag options was the way to  go.

So after creating an efficient, to-the -point module, scrapping unnecessary parameters, we still had the IE issue to go.

And if you weren’t aware of it the IE issue was fairly major. It was worse than the PHP memory issue, the viewer was confronted with a wicked error and the page just wouldn’t load? I had thought the error was some where in the previous 300 lines of code; After refining the module to just under 100 lines of code I was still stumped by the issue.

Going back to basics I went to SWFObject Google group, and the old SWFObject forums….. then the posts went by and I still couldn’t find the issue. My brother had told me about the defer=’defer’ attribute that is now apart of XHTML specifications. This hints to the browser that the javascript doesn’t create content therefore delaying the execution until after the page loads. So I tried it and a burst of excitement/satisfaction arose in me as the page started to load.

But then a new error occurred and the page went blank….. my heart sank, frustration swelled.

But still progress was made. Looking at the page source on IE6 a bazaar line of code was left <script id=__ie_ondomload defer=true src=://><\/script> was all that was in the page. Going back to Google and searching for “__ie_ondomload” brought up some pages I hadn’t viewed before, and sure enough others had experienced this problem.

This was a line of code inserted by SWFObject when detecting the browser and which method of embedding to use. It was a known issue for the developers and they’d recently updated this in SWFObject 2.2.

So I updated Joomulus from 2.1 to 2.2 and again the results were looking good, until crash, burn, IE6 fell on another one of it’s 1001 hurdles, what a surprise.

I was starting to doubt the effectiveness of this method of embedding .swf’s. But everything I’ve read would suggest otherwise, Google is behind it and Adobe. So why me? Why was this such and issue and where was the fix? Was I really that noobish that I couldn’t get the most recommended method of embedding swf’s to work?

So I started from scratch again with a basic HTML page and any old swf file, it worked fine, not an error in/on site. I’d read a few forum posts of people having issues with IE errors, when the problem had been using an absolute path to the .js file. I’d been using the full URL the entire time though, in the basic HTML page and in the Joomla module?

The answer lies in the XHTML compliant <base> tag which Joomla uses. I found when adding a <base> to my basic HTML page errors were flying again in IE6. After reading forum posts on the topic I had a fleeting thought that people would just have to hack into Joomla and remove the base tag…. buts this is not only unintelligent, unpractical, it’s right pain in the arse.

The base tag uses a compliant method of closing which is called a self closing tag <base href=”http://joomlabear.com/” />. The self closing part is the final forward slash the comes before the closing of the opening tag. A better example is a hr <hr /> or a br <br />, if these were normal HTML tags they would look like <hr></hr> or <br></br>. It’s this self closing nature that IE can’t seem to interpret. Not only can it not interpret it but it crashes totally when used with SWFObject.

So after hours of frustration and cursing Mircosoft IE, the solution for all browsers is in IE ‘if statements’ that I’ll have you know were developed to allow alternative solutions for IE known issues. They actually developed IE with the ability to pick on specific HTML comments, that’s saying something. Here it is the solution for Joomulus or any swf being embedded with SWFObject on a page using a <base> tag

<!–[if IE]></base><![endif]–>

Thats it, IE is now satisfied with a old school traditional closing tag element.

Strange how something that simple can cause huge aggravation. And here we have Joomulus 2.0.

I hope anyone out there experiencing similar issues might benefit from this.

21 Comments

 Add your comment
  1. Don’t get me wrong, I hate IE. But this wasn’t IE. This is a very common misunderstanding when people think they are using XHTML because they have an XHTML doctype specified and writing code that is XHTML compliant without realizing that Joomla is sending the page with a content type of HTML. Not just IE is trying to solve the ‘tag soup’ error of the self-closing tag syntax that is allowed in XHTML but must have different syntax in HTML.

    After a lot of reading, I found one article that explains this controversy well and seems to be the most accurate I have found.
    http://www.webdevout.net/articles/beware-of-xhtml

    Plus this January 2009 W3C Guideline
    http://www.w3.org/TR/xhtml-media-types/#compatGuidelines

    So, while our best practices goal is to write well formed XHTML, our errors can be found by changing the DOCTYPE to HTML 4.01 Strict and running the page through a validator. Though the W3C validator will do the much of the same, I prefer
    http://www.webdevout.net/test?html4-good-practice
    It will point out these issues that browsers are having when our XHTML code is served as HTML and each tries to solve the error in a different way … clearly most are better at it than IE.

    • I’ll let my brother Bambi respond as he has been developing Joomulus – just wanted to tip my hat at you and thank you for the insight.

  2. Congratulation to the new release of Joomulus 2.0
    Unfortunately i couldn’t test it yet, because i have no active Joomla site. But I really appreciate the removing of some tertiary / less needed features like the tag generation from content or the search link.

    But as far I can see you also removed the XML import, did you? Of course the XML import works similar to the user defined tags, but if you want to get “dynamic” access to the cloud tags, it is much easier to edit the XML-file than the Joomulus preferences.
    For small or even large tag changes, it is much faster to edit the XML-file than edit the tags in the Advanced Parameters. (you first have to access the joomla admin area, switch to the modules, select Joomulus,…) As you can see…. I’m PRO XML-import 😉

    Whatever…. I think many people will be greatful for the fixed IE bugs. (btw: switch now to FIREFOX —> http://www.mozilla.com)

    Thank you!

    Flom

    • Flom thanks for dropping by – I’m Big Bear and it is my brother (aka Bambi on Joomlabear) who has been developing Joomulus, he will be offline for 12 hours or more so I thought I’d just say hi.

      I understand you have had quite a bit of input in getting Joomulus to where it is now, Thank you! It’s much appreciated by all.

      From the discussions we’ve had here in the office about Joomulus the goal was to go back to simple and make sure it worked – then add the good stuff in as we move forward. I’m sure Bambi will see your point of view on XML import 😉

      Cheers

  3. Yeah, that sounds like a good solution for me 🙂 I totally agree with that.

    I was a lot of fun working on Joomulus, unfortunately I still don’t have the time that I need to keep working on Joomulus or make some constructive suggestions :-/

    But we keep in touch… 😉

    Flom

  4. Good to hear you solved this IE6 problem. Thanks for trying and trying until it was fixed!!
    I’m not in the position right now to test the new version, but will do in a few weeks.
    Am sad to read that the XML file is not used any more. I hope you will reconsider this option again, because it makes it very easy for me to change things around in my site.

    Great work!
    Patrick

  5. First impressions – it’s doing well.

    I have a longer term suggestion that I think builds on Flom81’s ideas.

    Back to simple is good. An easily edited source file is good.

    I also think there is value in the older code that could be repurposed. To me, it would be great to keep the tag generation code (Zaragoza derivative) as a means to scan the site and take a first cut at accumulating keywords with an indication of density for setting font size, but that the code be set to run on demand in the backend and the output be to the XML file that serves as an intermediary repository of tag data. Through the backend, a regeneration of the file can be triggered manually by an admin after significant site content changes have been made as a fresh starting point indicating keyword density, but then the output xml file can be hand edited to add/remove/promote/demote keywords produced by that starting scan of content and/or tags.
    As an alternative, if the XML file containing the tags is missing (or temporarily renamed), then the counting process is triggered automagically and the old and new files can be hand compared and merged. On change of the XML, it can be reimported into the database overwriting the Advanced preference fields if having the data in the database is a better way to maintain front end performance.

    Just some ideas to kick around.
    Thanks again Bambi for the great work. Between the improved SEO from internal linking and the cool UI, this is a great addition to the Joomlaverse.
    Duke

  6. Thank you very much for your work. I used Joomulus for a while but I had to disable it as it generated tags, did not want to display and I did not know here to find XML file. I will try it again and see what results I will have. I loved its eye-candy look and it was hard to switch it off ;-).

  7. Hi Joomlabears,

    @first: thanks for this module, I’m using it in wp and I like the design very much.

    But: in my joomla-page the new joomla-2.0-module produces non valid urls by stripping the ‘amp;’ from eg. ‘index.php?ordering=&searchphrase=all&searchword=marketing’ when saving the module. So I get ~180 errors and warnings by the W3C validator.

    Please help, how could this be solved? It’s an up-to-date Joomla 1.5.11, also shSEF404 component in use. Thanks a lot for your time and effort.

    • Hiya,
      Cheers for the nice feedback.
      Re: the URL issues – We’ll look into this but in the meantime could you not just use the sh404SEF URL’s? They will not have any strange characters.
      I assume you are using the 2.0 Joomulus with manual URL input?
      Cheers

  8. Hallo, thanks for the quick response 😉
    Yes, I use 2.0 and I like that it’s handcrafted urls; but the &ampersands appear in core-urls, they’re not produced by sef404 component (excluded in sh404-config cause of conflicts). sef-urls look like component/backslashes/tab/whatever…

    I thought it is a result of your script, somewhere there you strip ’em off. Unfortunately I’m not developed enough to find out where and how.

    Thanks for taking care

  9. i have followed joomulus from the start, i witness the naming of the module ;p

    but i got some problems with joomulus 2, it just wont save any changes, i would try to change the height and width and click save but it brings me to the joomla control panel without saving anything

  10. Sorry to hear Joomulus is not working for you?
    I have to ask is it the most recent release? And if so would you be able to send through the zip you downloaded? It sounds like an error in the xml or something if it’s not saving correctly. In my testing I haven’t experienced that issue 🙁

    send it though to alexis@
    or info@
    at this domain joomlabear.com

  11. I’m glad you were able to get it up a running; I’ve had my share of project issues as well. Sometimes they just shelved.

    Plus it’s simply the best most unique tagging idea I’ve ever had the pleasure to crash my site with. If my visitors complain, I will still have a deep sense of satisfaction knowing how sexy my site is.:)

    I just downloaded Joomulus 2 today, thanks for this.
    Kane

  12. Hi there – i absolutely love the module – been trying most of the afternoon to work out how exactly I tag articles tho? We have a beauty salon website…and I’d like to take certain treatments (articles) as anti-ageing, sun-damaged skin etc etc. What is the preferred method for creating the tags? I just can’t work it out. I did try a suggestion I found on the forum, where you create a search effectively, but then wasn’t sure on how to remove all the search parameters that get spewed out with it, as would just like it to look like a list of treatments that match that category? I’m not sure if I’ve properly explained it, but please, if you could offer a few words of wisdom that’d be really really appreciated! I also looked into creating the tags with JTAG, and then trying to populate joomulus from that, but I didn’t really know what I was doing. HELP! Please! huge respect to joomlabear 😉

    • Hi Oliver – the current version of Joomulus doesn’t actually support tags in the way you describe – the initial version did but we moved to a manual method where you just add the tag and link into the module parameters. The reason for this was because Joomla has no standardised method for tagging content like WordPress does. There are a number of tag components we could work with but at this stage we would prefer to wait until Joomla releases native content tagging.

      Have a look in the parameters inside the module admin – this should get you started.

      And thx for your kind words.

  13. Joomulus is one of the best modules I´ve ever ever seen; easy and powerful. Beautiful and up to date. But since there is an security problem published you do not see it any more … so why don´t you fix that bug and why don´t you write abou it?

  14. Greetings, I’m new and wondering, it is possible to add images thumbs to content cloud to make thumb cloud? Would be cool gallery gadget 😀

  15. Joomulus is one of the best tag clud module I have ever seen. But i want the tag rotation automatically like when we mouse over the tags.

    Is that possible to do like that. Please help to fix this.

  16. Hi,

    I tried the Joomulus v. 2.0 but I had to disinstall it because it didn’t work on my site.
    Your previous version 1.0.6 works, but only in automatic redout (AR), so my tags are not very rational… At the moment I’m using the old version, but I’m planning to change the tag cloud module… 🙁

    May I find a workaround to use the version 2.0 properly?

    My theme is from http://www.icetheme.com and its name is “spotlight”.

  17. Hello,

    very cool looking tag cloud, congrats.
    I miss the possibility to choose either to open urls in the same or new window for each tag seperatly. Or is there a way?

Leave a Comment

Your email address will not be published.