Custom search on public site

usmanehsan0613's Avatar

usmanehsan0613

10 Nov, 2015 06:53 AM

Hi,

I need to add a search feature on public site. Here is what is required in search

  • user types and suggestions should come up i.e live searching
  • it should search first for the title of page , than its metadata , than inside the content
  • top priority should be with title of the page , if not matched than search for metadeta, if didnt find anything in metadeta than match same string inside the description of that particular page.
  • Let say user has type " admissions " than the search should return a json object for title, summary, meta deta because i dont want to reload the page rather show instant results on that page. Please have a look at alshop.com the search results are instantly coming up.

Search is vital part of any website but i am little confused on how to fetch / look into all pages inside cascade.

Please help.

Thanks
Uthman

  1. 1 Posted by Wing Ming Chan on 10 Nov, 2015 04:01 PM

    Wing Ming Chan's Avatar

    Hi Uthman,

    To implement such a powerful search feature, first you need to build your own database. Second, you need to populate your database tables with data from Cascade. You can query the Cascade database directly, or you can use web services (e.g., run daily). Lastly, you need to build the front-end, consuming data drawn from your database. This is going to be a big project.

    Wing

  2. 2 Posted by usmanehsan0613 on 10 Nov, 2015 05:54 PM

    usmanehsan0613's Avatar

    HI wing,

    Thanks for your reply.

    So whats possible with cascades ? How search is possible with cascade as search is vital part of any website especially educational website where most of the people would prefer to make a search instead of browsing all pages.

    Regards,
    Uthman

  3. 3 Posted by Wing Ming Chan on 10 Nov, 2015 05:57 PM

    Wing Ming Chan's Avatar

    Hi, Uthman,

    You need to understand that there is no connection between Cascade and your web server. Cascade is only responsible for pushing static contents to your web server. Anything else you want, you need to do it yourself.

    Wing

  4. Ryan Griffith closed this discussion on 19 Nov, 2015 04:04 PM.

  5. usmanehsan0613 re-opened this discussion on 25 Nov, 2015 10:37 AM

  6. 4 Posted by usmanehsan0613 on 25 Nov, 2015 10:38 AM

    usmanehsan0613's Avatar

    Hi Ryan Griffith,

    I didn't find any solution to this problem , so i wondered how you have closed the discussion.

    Please let me know if there is any solution ?

    Best Regards,
    Uthman

  7. 5 Posted by usmanehsan0613 on 25 Nov, 2015 10:40 AM

    usmanehsan0613's Avatar

    Please dont say that cascades doesnot supports this.

  8. 6 Posted by usmanehsan0613 on 25 Nov, 2015 10:41 AM

    usmanehsan0613's Avatar

    usmanehsan0613

    Nov 10, 2015 @ 10:53 AM

    Hi,

    I need to add a search feature on public site. Here is what is required in search

    user types and suggestions should come up i.e live searching
    it should search first for the title of page , than its metadata , than inside the content
    top priority should be with title of the page , if not matched than search for metadeta, if didnt find anything in metadeta than match same string inside the description of that particular page.
    Let say user has type " admissions " than the search should return a json object for title, summary, meta deta because i dont want to reload the page rather show instant results on that page. Please have a look at alshop.com the search results are instantly coming up.
    

    Search is vital part of any website but i am little confused on how to fetch / look into all pages inside cascade.

  9. 7 Posted by Ryan Griffith on 25 Nov, 2015 01:59 PM

    Ryan Griffith's Avatar

    Hi Uthman,

    I went ahead and closed this discussion because it was idle for more than a week and Wing's latest response was right on point, my assumption was your question was answered.

    To echo Wing's latest comment, I would not consider Cascade and searching your website to be connected at all. Sure you could write a Web Services script that takes a user's query, searches Cascade and returns some results; however, what do you do with those results? Cascade's assets should be considered internal and private, and the majority of your website traffic would be public users who do not have access to Cascade. Also consider performance issues that could arise from constantly querying Cascade as well as situations where Cascade would return assets that have not yet been published.

    Instead, you should be using a search service such as Google Custom Search or a Google Search Appliance, which is specifically designed to crawl your public website and provides you with APIs to hook into that information. Again, this would be completely independent of Cascade.

    Please let me know if you have any questions.

    Thanks!

  10. 8 Posted by usmanehsan0613 on 26 Nov, 2015 04:11 AM

    usmanehsan0613's Avatar

    I have a site with more than 5000 pages, I cannot link them all on home page.

    e.g admission, catalog etc & etc there are lot more.

    Is not it easy for a user to type keyword in a textbox on home page and it should give it a list of suggestions (i.e searching the cascades published pages with their title). It would be very easy for them to find correct page.

    I dont want to rely on Google Search as i constantly change folder structure etc but google keep picking up old pages that are outdated hence giving users wrong information.

    If you consider any CMS it would have basic search functionality at least and options to make it more advance search.

    Here i am not talking about the filters e.g search the admission criteria within specified institutes. its very simple basic search without relying on third party.

    Hope my question is clear and cascade must have the solution to this instead of just publishing the pages and relying on custom google search.

    Best Regards,
    Uthman

  11. 9 Posted by usmanehsan0613 on 26 Nov, 2015 10:28 AM

    usmanehsan0613's Avatar

    " Cascade's assets should be considered internal and private, and the majority of your website traffic would be public users who do not have access to Cascade "

    i need only to make search based on page title's . page titles are not internal and private rather this information is to be shown to end users.

    "To echo Wing's latest comment, I would not consider Cascade and searching your website to be connected at all. Sure you could write a Web Services script that takes a user's query, searches Cascade and returns some results; however, what do you do with those results? "

    How you can say its not connected . All the pages are being updated in cascades , obviously search has to come from cascades. its not like that i will create a seperate database for search and query that database. That will be a double work + in efficient because different departments are updating their content everyday.

  12. 10 Posted by usmanehsan0613 on 26 Nov, 2015 10:31 AM

    usmanehsan0613's Avatar

    Here is what i am looking for.

    a xhtml block with a text box inside it.

    a jquery key up function that will monitor key strokes by the user.

    that will be mapped with each page's title inside the cascades.

    and return a response back in json.

    Apparently there should be a place where i can post user typed strings.

    Hope i have made clear the requirements.

  13. 11 Posted by usmanehsan0613 on 26 Nov, 2015 10:34 AM

    usmanehsan0613's Avatar

    and again this question will be in connection with my recent issue that you have not answered and closed the discussion.

    • how to send an email whenever the page content is updated / published.

    Because if you will say to read the index block for whole site than this block should have auto-publish itself whenever there is a content update to reflect the latest changes / new pages.

  14. 12 Posted by usmanehsan0613 on 28 Nov, 2015 04:46 PM

    usmanehsan0613's Avatar

    I am looking for official support on this issue as I am paying for cascades license and need solution for common problems rather than simple answer that it's not possible with cascades

  15. 13 Posted by Ryan Griffith on 30 Nov, 2015 03:53 PM

    Ryan Griffith's Avatar

    Hi Uthman,

    i need only to make search based on page title's . page titles are not internal and private rather this information is to be shown to end users ... How you can say its not connected . All the pages are being updated in cascades , obviously search has to come from cascades. its not like that i will create a seperate database for search and query that database. That will be a double work + in efficient because different departments are updating their content everyday.

    Please remember that Cascade is a push CMS and not a pull CMS. As such, Cascade's main role is to provide the tools necessary to maintain web content and publish that content to an end point such as a web server. This is why I stated Cascade's assets are private and the two are not connected, because public web traffic does not directly interact with Cascade's assets, only the published content on the web server.

    A pull CMS, on the other hand, has the functionality you are referring to, because this type of CMS serves its content directly from a database. As such, this type of CMS is also capable of searching content directly from the database.

    For additional information about the differences between the two technologies, please feel free to take a look at this white paper.

    a jquery key up function that will monitor key strokes by the user. that will be mapped with each page's title inside the cascades. and return a response back in json.

    Again, because Cascade is a push CMS, you will need to set something up externally such as a search engine as I suggested or your own database as Wing suggested. You could access Cascade directly using Web Services, search its content and return a consumable result; however, I would strongly discourage this for performance and security reasons.

    Consider the potential situation where you have thousands of assets to search and traffic on your website searches frequently enough where you could be looking at potentially one AJAX request every second. The constant searching could cause resource contention between your website traffic trying to search and your end users trying to maintain the website. What if your search field was hit by a bot? You could face a DoS situation. What if during the DoS you need to publish time sensitive content. This is a hypothetical situation of course, but keeping your CMS and website independent of one another would avoid this potential scenario. This is one of the core benefits to a push CMS.

    I dont want to rely on Google Search as i constantly change folder structure etc but google keep picking up old pages that are outdated hence giving users wrong information.

    Using Google Search was only an example; however, being a former Cascade client who used a Google Search Appliance specifically, I can say I never ran into this issue because the search engine reindexes itself quite frequently and you can control what and when it indexes.

    Because the search engine is specifically designed to index and query content, it has the added benefit of being able to return results quickly and efficiently. In most cases, there is also an API one can use for use cases such as your's. For example, when I was a former client, I simply queried a Google Search Appliance directly using AJAX and the appliance would return results in JSON format almost instantly.

    I am looking for official support on this issue as I am paying for cascades license and need solution for common problems rather than simple answer that it's not possible with cascades

    I am sorry to hear you are not satisfied with our response. Unfortunately, in each case we were not able to provide you with a specific solution because the functionality does not exist natively within Cascade. That being said, we tried our best to provide a link to a related improvement idea in our Idea Exchange to vote for and/or comment on as well as a possible workaround for your use case.

    Please let me know if you have any questions.

    Thanks!

  16. Tim closed this discussion on 11 Dec, 2015 06:08 PM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac