googleSearch (CSE) component
Written by kksou   
Tuesday, 06 January 2009

This is the good old googleSearch component with one key difference: it uses Google's new Custom Search Engine (CSE) at the backend.

Very Important

Please make sure you have set up a Custom Search Engine in your Google's account before you can use this component. Once you have created a Custom Search Engine, Google will assign a unique CSE ID to that engine. You need to enter the CSE ID into the config page to start using this component.


Latest Version

v1.6 (for Joomla 1.6), v1.7 (for Joomla 1.7), v2.5 (for Joomla 2.5)
Released March 15, 2012

Native version of the googleSearch (CSE) component for Joomla 1.6, 1.7 and 2.5!

What's exciting about Google's new Custom Search Engine (CSE)

There are many exciting new features in Google's new Custom Search Engine (CSE). Here are just some of them:

  • Search multiple sites. If you have set up three different sites, say site1.com, site2.com, and site3.com, the CSE now allows you search only within these three sites.
  • Refinements: Refinements are labels that you apply to websites. They appear as a list of links above search results, offering users a way to narrow their search. When a user clicks a refinement label, the sites that you have labeled are given priority in the results. In addition to labeling sites, you can also specify additional words that are added to users' queries when they click a label, providing even more targeted results.
  • You can see a live demo of refinements on this site. Enter a keyword, say "menu" in the search box at the top-left navigation area. Did you see the 8 refinement labels there: "PHP-GTK2", "Joomla", "PHP-GTK2 sample codes", "Joomla forum articles", etc. Try clicking on any of these refinement labels. It's pretty cool!

There are many other exciting and advanced features in Google's new Custom Search Engine.

You can see the complete official Google document here: http://www.google.com/coop/docs/cse/

Differences between googleSearch (CSE) and googleSearch components

  • googleSearch component: uses the traditional Google Search API.
  • For this component, you can just install and use right away. You do not even need a Google Adsense ID.

  • googleSearch (CSE) component: uses Google's new Custom Search Engine (CSE).
  • For this component, you'll have to first set up a Custom Search Engine in your Google's account. Once you have created a Custom Search Engine, Google will assign a unique CSE ID to that engine. You need to enter the CSE ID into the config page to start using this component.

Add more power with googleSearch (CSE) module

You might also want to complement this component with the googleSearch (CSE) module: googleSearch (CSE) module

The module allows you to add an additional Google search box as a module. This means that you can place the search form in any module position you like. When the user clicks the search button, the search result will be displayed in your Joomla main body by the googleSearch component.

Demo

The search on this site is using the googleSearch (CSE) component/module. You can test it in the first module on the left menu.

How to install

Set up is as easy as 1-2-3:

  1. Install the component
  2. Enter your Custom Search Engine's unique identifier (cx) - Where to find this?
  3. Enter your desired width of the search result

That's all you need to get started! You'll now have Google Search right inside your Joomla page!

Tutorial

There is a very detailed tutorial on how to setup the googleSearch (CSE) component here: How to Create a Google Custom Search Engine in a Joomla Site


Please make sure you have set up a Custom Search Engine in your Google's account before you can use this component. Once you have created a Custom Search Engine, Google will assign a unique CSE ID to that engine. You need to enter the CSE ID into the config page to start using this component.

For advanced settings, please refer to Customizing the Component.

sh404SEF users

If you are using the googleSearch component together with sh404SEF:

  1. Go to sh404SEF Configuration.
  2. Click the "By Component" tab.
  3. Look for the component "googleSearch(CSE)", and set the first column as "skip".
  4. Don't forget to click "Save".

Please also make sure you read the following article:

Running googleSearch with sh404SEF: fixing the error 'JFolder::folder: Path is not a folder: /language'

"JFolder::folder: Path is not a folder: /language"

For those of you who get this error message, please refer to the article below for the solution:

Running googleSearch with sh404SEF: fixing the error 'JFolder::folder: Path is not a folder: /language'

Download

Very Important: Please make sure you have set up a Custom Search Engine in your Google's account before you can use this component. Once you have created a Custom Search Engine, Google will assign a unique CSE ID to that engine. You need to enter the CSE ID into the config page to start using this component.


Remove the "Powered by" links

If you find the component useful and would like to use the component without the "Powered-by" links, you may do so by purchasing a "Powered-by" removal license for only USD $10.

Secured payment is processed by 2checkout.com. All major credit cards are accepted, including Visa, Mastercard and American Express, etc. You can also pay by PayPal. Once the transaction is completed, you will be given a link to download the version with the "Powered by" links removed.

Version History

  1. Version 1.00: released Jan 6, 2009.

Customizing the Component

Please refer to the googleSearch: Customizing the Component. They are about the same.

Note that for the new Google CSE, many of the options are now stored right on Google's server, e.g. the colors for the title, background, links, etc.

Note also that the Google Adsense ID and channel ID is now encoded right inside the CSE ID.

Styling the Component and Module using CSS

You can set the style of the search field and search button to the exact format you want through CSS, for example, the font family, font size, foreground and background color, margin, border, etc.

I've designed such that the css style for the component is independent of that of the module. So you can have different styles for the component and the module.

For example, if you're using the default Joomla 1.5 template, define the following style in <joomla root folder>/templates/rhuk_milkyway/css/template.css. If you're using the default Joomla 1.0 template, define the following style in <joomla root folder>/templates/rhuk_solarflare_ii/css/template_css.css.

  1. Search Box
  2. Component Module
    div.googleSearch_cse input.inputbox {
    	font-family: Verdana;
    	font-size: 12pt;
    	font-style: italic;
    }
    
    div.mod_googleSearch_cse input.inputbox {
    	font-family: Verdana;
    	font-size: 12pt;
    	font-style: italic;
    }
    

  3. Search Button
  4. Component Module
    div.googleSearch_cse input.button {
    	font-family: "Arial Bold";
    	font-size: 12pt;
    	margin-left: 4px;
    }
    
    div.mod_googleSearch_cse input.button {
    	font-family: "Arial Bold";
    	font-size: 12pt;
    	margin-top: 6px;
    }
    
  5. The entire search form (use this if you want to set the background or draw a border around the entire search form)
  6. Component Module
    div.googleSearch_cse {
    	background: #33FF66;
    }
    
    div.mod_googleSearch_cse {
    	background: #33FF66;
    }
    

Replacing the Default Search module of Joomla 1.5

Suppose you want to replace the default search module of Joomla 1.5 using the default rhuk_milkyway template, here are the steps:

  1. Log on as administrator and go to Module Manager.
  2. In the input box "Filter:", enter "search".
  3. You should now see two items: Search (the default mod_search), and Google Search.
  4. Make sure Enabled is set to No for mod_search, and Yes for Google Search.
  5. Assuming that you're using the default Joomla 1.5 template, define the following style in <joomla root folder>/templates/rhuk_milkyway/css/template.css
    div.mod_googleSearch table {
    	margin-left: auto;
    	margin-right: 6px;
    }
    
    div.mod_googleSearch input {
    	width: 145px;
    	margin: 15px 0 9px 0;
    }
    

You should now see the googleSearch module instead of the default mod_search in module position user4.

FAQ (Frequently Asked Questions)

Q1: googleSearch_cse does not work, and I'm using sh404SEF on my website.

A1: For googleSearch_cse to work on websites using sh404SEF, please refer to the solution here.

Q2: googleSearch_cse returns the error "Google Error: Bad Request. Your client has issued an illegal request."

A2: This error usually occur when you did not enter a correct CSE ID in the config page.

Q3: I got the error message "Fatal error: Cannot redeclare class googleSearch_DisplayForm in googlesearch.lib.php on line 12"

A4: This is because you are trying to run the googleSearch_cse with an older version of googleSearch. To run both together, you need to upgrade googleSearch to v1.0.14/v1.5.14.

Q4: Can I run googleSearch_cse and googleSearch together on the same page?

A3:Yes, you can, as long as you've upgraded googleSearch to v1.0.14/v1.5.14.

Please make sure you have set up a Custom Search Engine in your Google's account before you can use this component. Once you have created a Custom Search Engine, Google will assign a unique CSE ID to that engine. You need to enter the CSE ID into the config page to start using this component.

History

  1. v1.0 (for Joomla 1.0) and v1.5 (for Joomla 1.5)
    Released January 6, 2009
 

Comments  

 
# Ryan Rik 2012-03-17 13:25
Dear sir, I got this error when trying to install it on my Joomla 2.5

JInstaller: :Install: File does not exist /home/admin/www/site/tmp/install_4f64f2b 979ab0/com_googleSearc h_cse_v2.5/googlesearchcse .php
Reply | Reply with quote | Quote
 
 
# kksou 2012-03-17 19:43
Hi,

Can you please email me the installer that you're using?

Regards,
/kksou
Reply | Reply with quote | Quote
 
 
+1 # Speciman 2012-03-18 01:49
Hi

I had the same error. My solution is to unzip the component and change two folder names to small types:
components/com_google_Sear chCSE
to componets/com_googlesearc hcse

and

administrator/components/com_google_Sear chCSE
to administrator/components/com_googlesearc hcse

Then zip the whole Files again and upload as normal.

Hope this helps.

Regards
Reply | Reply with quote | Quote
 
 
# kksou 2012-03-18 06:10
Hi Speciman, Thanks for highlighting this. Didn't realize the typo for the Joomla 2.5 installer. (Tested the installer on windows which runs ok because it's case-insensitive.)

Hi Ryan, have just reuploaded the installer for Joomla 2.5. Please try it again and let me know if it works this time. (Note: the installer for Joomla 1.6 and 1.7 are ok)

Regards,
/kksou
Reply | Reply with quote | Quote
 
 
# Steveb 2012-03-30 05:22
I installed this and I see the setup in components but i dont have a module to install. I cant see ho to actualy make it show and work on a page. Sorry im new to this, can you help
Reply | Reply with quote | Quote
 
 
# kksou 2012-03-30 21:07
Hi,

The googleSearch (CSE) module is here: http://www.kksou.com/php-gtk2/Joomla-Gadgets/googleSearch-CSE-module.php#download

Regards,
/kksou
Reply | Reply with quote | Quote
 
 
# mlvnjm 2012-04-16 08:11
Is there a way to use googlesearch through https? Meaning, how do i get the component to do a https google search request?
Reply | Reply with quote | Quote
 
 
# kksou 2012-04-16 19:17
Hi,

Think have seen it on the internet that you need to be Google's premium account user.

You might want to check with Google.

Regards,
/kksou
Reply | Reply with quote | Quote
 
 
# Sam56187 2012-04-17 12:45
Hi kksou,

I just purchased component and received the link to download version 'com_googleSearc h_cse_v1.5a'. This version is for joomla 1.5 right? I need version for 2.5.4. Please let me know. Thank you.

Regards

Sam
Reply | Reply with quote | Quote
 
 
# netinsco 2012-04-23 20:18
Can I pass Google search input values from a page not part of my Joomla template into my joomla googleSearch (CSE) component page?

I want to pass search values from a basic html home page to my joomla googleSearch (CSE) component page?

is it possible and how would you suggest I go about it?

Mike

test page: http://www.KillerSurfLinks.com
Reply | Reply with quote | Quote
 
 
# netinsco 2012-04-23 20:23
PS. I have successfully set up your component and it works great within the Joomla framework. I just want to pass the search values into the googleSearch (CSE) component page to display the results from a basic HTML page not part of the Joomla framework.

Thanks Again
Reply | Reply with quote | Quote
 
 
# kksou 2012-04-26 08:36
Hi,

Sorry for the late reply.

1) Enter any search term in the search field of your joomla googleSearch (CSE) component page.

2) Click the search button.

3) In the search result page, copy the entire URL and paste them into the notepad.

4) Take a close look at the entire URL string. The search string is in the parameter q=keyword.

5) So from your basic html page, as long as you pass in the same URL string and replace q=keyword with your own keyword, it will redirect to your joomla page.

Please give it a try and let me know if it works.

Regards,
/kksou
Reply | Reply with quote | Quote
 
 
# netinsco 2012-05-02 16:05
Worked like a charm. Thanks for the insight.

Mike
Reply | Reply with quote | Quote
 

Add comment


Security code
Refresh

< Prev   Next >

Blog - Forum - Privacy Policy - Contact Us
Copyright © 2006-2012. kksou.com. All Rights Reserved