Recent Topics

[Plug-in] "Search Cloud" by AstonishMe!

Started by on May 03, 2007 – Contents updated: May 03, 2007

May 03, 2007 20:51    

What it does: Displays the most popular search engine terms used to find your blog, in a tag-cloud-like list.

For b2evo Versions: v1.8.x & 1.9.x

Synopsis: Add a cloud-like display of the most popular search terms that visitors have used, via search engines, to find your blog. The plugin tallies the search terms from the hitlog file (last 30 days) and grabs the most popular, which are sorted by search term. Parameters and settings provide ample means by which you can customize this list and display it on your blog. Adds an interesting feature to your blog and provides some insight about your audience.

Links: . . . [[url=http://b2evo.astonishme.co.uk/index.php/2007/05/03/search_cloud]Plug-in Home Page[/url]] . . . [[url=http://sourceforge.net/project/showfiles.php?group_id=160495&package_id=230160]SourceForge Download[/url]]

Brought to you by [url=http://astonishme.co.uk]AstonishMe![/url] team.

May 10, 2007 17:13

Here's a question that might also be a suggestion for improvement, depending on the answer: how do I tell this plugin to redo itself? In other words update it's table with fresh info?

I found the most interesting thing happened last night: someone hit me with almost 400 hits that for some reason pretended to be search engine hits to a very long string of text that simply doesn't exist in my blog. Or my vocabulary for that matter. So I deleted them all and banned the IP that did it (sillyspammer makes things easy eh?), but now my poor search cloud is dominated by this one term as if it's the absolute king of searchery. Via google, but that doesn't show in the search cloud of course.

Oh wait maybe I'll just change the time to one minute then wait two minutes and change it back to sixty. That'll work I think.

May 10, 2007 17:51

since yabba got the idea from me **cough**.. I'll pipe in and say,

thats the glory of spoofing referers.

I'll make one small reccomendation, something that ive implemented in my own:
http://www.village-idiot.org/zeitgeist

-- limiting the size of the text thats displayed within the cloud.

I got hit with from a rather large search engine query that caused some substantial 'break out' from my div.

After that, I decided it was necessary to limit the text that was displayed.

Code

$text = $result->keywords;
$numwords = 5;
preg_match("/([\S]+\s*){0,$numwords}/", $text, $regs);
$text = trim($regs[0])  ;

Im sure yabba can translate that little addition over to his version for anyone interested.

May 10, 2007 18:22

yeah that's already in there, but I didn't use it because I put the cloud under the post on a single post page. If the cloud is in the sidebar, or if the main content area is kinda thin, then you really gotta limit the length. Either way though the weird "I'm gonna spam you like I'm google sending you traffic to a word that doesn't exist" would trash the relative sizing of search terms.

May 11, 2007 00:19

Hi stk

Thanks for this. I installed it with all the defaults in my side bar. Then I took it out again. :-) Not your fault, it is just a bit horrifying that most search terms end up at nothing related to them. I am hoping that the changes that I have made to have search engines only go to my stable fixed URLs will solve this and then I might look at putting it back.

Just one note: I put it in the side bar and it did a big indent which meant that it largely disappeared out the right side of the side bar. Presumably I could prevent this by changing the type of list??

Oct 04, 2007 05:54

Is there any way to block specific search strings/results from being listed in this search cloud? I've got various posts on my blog that contain, among them, the terms "project" "playlist" and "skin". For some reason, in the last few days, my site has been getting bombarded with searches for "project playlist skins"...

(projectplaylist is a music site that allows you to build a custom playlist of music and display it in a music player that you drop into your page.)

My blog contains absolutely no skins for that software/service, but that search term, and variations of it, have taken over my search cloud... The funny thing is that when I do a google search for that term, the blog posts that show up in the results are obviously not to projectplaylist skins. I guess people don't bother reading the blurbs they get in search results... they just blindly click on the links... but that's neither here nor there...

So, is there a way to block specific strings from appearing in the cloud list, or should I not even bother and just welcome the extra traffic it drives to my site even though the content isn't actually on my site...?

jj.

Oct 04, 2007 10:25

I know exactly what you mean, I keep getting hit by myspac (sic) users that think they own a school :|

Every now and then I go in and block their hits so my cloud becomes far more entertaining, but it's a manual thing and I should really make it a setting ;)

If you can wait a tad I'll have a play at making it a 2.0 widget and I'll throw in an extra setting for ignoring terms

¥

Oct 05, 2007 16:07

Will your changes run on 1.10.2?

jj.

Oct 05, 2007 17:22

It should run in all 1.8.x, 1.9.x, 1.10.x, 2.0.x blogs ;)

¥

Nov 08, 2007 21:42

I posted over on innervisions before I remembered this thread... I was wondering if there's a way to make this cloud display results per-blog, so that if a reader is viewing Blog2, the cloud would only display search terms that point to posts in Blog2, etc etc... And for cross-posted posts, it would only display the search term within the blog containing the category which was assigned as 'Main' for that particular post...

I realize that's probably a non-standard way of displaying tag clouds, but it would go a long way to preventing dilution caused by having irrelevant links displaying on each blog... for example, currently a single b2evo system might have separate blogs on, say, "food" and "computers"... having food-related links showing up on a computer blog dilutes the topic of that blog, and vice versa...

EDIT: I realize this could be done by creating separate copies of the plugin and loading them via a "php if blog == 2" sort of thing, but in the interest of keeping _main.php as small as possible, I was wondering if there's some way of controlling this more simply...

jj.


Form is loading...

powered by b2evolution – This forum is powered by b2evolution CMS, a complete engine for your website.