Search

I'm totally down with @animaux's Kickstarter suggestion for getting this on 2.3.

I would like to have a crack at ElasticSearch (and learn more command line stuff), but to date, I've pretty much exclusively worked with cheap-o hosting packages that wouldn't give me SSH access even if I knew what I was doing.

but to date, I've pretty much exclusively worked with cheap-o hosting packages that wouldn't give me SSH access even if I knew what I was doing.

As someone who was in a similar situation with shared hosting (though it was a good service), I highly recommend looking at, for example, VPS hosting that gives you SSH access. It opens up lots of possibilities and also avoids annoying limitations.

David, I've had the exact same problem. Luckily my current clients are big enough to be able to rent a VPS, but for smaller projects I might not be so lucky (and still needing search).

So an interesting (I think) thought has crossed my mind: ElasticSearch can be setup very flexible, so it should be possible to setup a hosted ElasticSearch service for Symphony, to be used in smaller projects. The best part is that ES is quite demanding in its own right, but it scales very well. So the difference of having 1 or 10 small clients is minimal.

Would anybody be interested?

@DavidOliver: I agree a VPS is a big step forward from a standard shared hosting package. However, the price difference is also rather big (I went from 20 euro to 180 euro a year).

Would anybody be interested?

Absolutely, and indeed I've started playing with this idea already. There are services who offer hosted ElasticSearch already (IndexDepot $15/m, bonsai in beta) but even that can be too expensive for some people.

I am toying with the idea of setting up a VPS node somewhere just running ElasticSearch (proxied through Apache/nginx, to provide authentication) and charge a nominal fee to cover the hosting costs. If a VPS costs $20/m then it only needs a few of us to make it worthwhile. It's just whether people are happy using a service like this.

I'm totally down with @animaux's Kickstarter suggestion for getting this on 2.3.

I'd be happy to move the repo to the Symphonists account on Github so that the community can do what they want with it. But I don't want any money for developing Search Index further. It's an extension I have no use for because the problem of search is solved far better by things like ElasticSearch and Solr, so I have no motivation to spend any more time on writing my own.

I agree a VPS is a big step forward from a standard shared hosting package. However, the price difference is also rather big (I went from 20 euro to 180 euro a year).

I pay about £230/yr for my VPS at Linode. I don't consider it expensive, but I do consider shared hosting cheap. Shared hosting is not cheap in value, because it's not very valuable! If you host more than just a couple of sites (which most of us do), a VPS could save you money. Plus you can resell the space to clients and make profit.

Anyway, let's please keep this discussion purely on Search Index. If you want to discuss ElasticSearch hosting let's start a new thread.

Really nobody who can help me paginate the search result which are made by this plugin?

No.

Then I need to look for a better solution for my website.

Pagination does work, so it's quite likely you're not using it correctly. Give yourself an hour to dig into the code to debug. Or try ElasticSearch, which uses pagination in virtually the same way...

I have already dig into the code and cannot find the answer. Elastic Search is unfortunaly not a answer because it's needs java and on my hosting I only have php and mysql.

Maybe can it be wise to give you login into my site so you can see what went wrong. It can make the discussion here much shorter.

I don't really have a lot of time to actively debug sites, especially on a deprecated extension. Perhaps best to explain your setup, the config settings (from config.php for this extension), and how you're using the data source...and which bits of code you have already debugged.

I'd be happy to move the repo to the Symphonists account on Github so that the community can do what they want with it.

Would you have time to move this to the Symphonists account? I know I love this extension and being able to install in a shared environment is a huge plus. Also, there seems to be a lot of interest left in this extension.

@nickdunn, we can't help it, you make amazing extensions, and a lot of us get hooked on your genius work. If you don't mind moving this to the Symphonists account, I think it would be a great benefit to a lot of folks.

Thanks for all you do for this community and for graciously sharing your talents with us.

@nickkdunn :

I use this plugin for a multi-sections search I cannot find the config.php so I cannot give it.

Here the xslt :

<div id="search">
 <form method="get" id="searchform" action="http://test.tamarawobben.nl/search-page/" >
 <input type="text" value="" name="keywords" id="s" class="txtField" />
 <input type="submit" id="searchsubmit" class="btnSearch" value="Find It " />
 <input type="hidden" name="per-page" value="3" />
 </form>
</div>

And here a screenshot of the datasource : http://imagebin.org/215307

This extension provides a data source named "Search Index" which does the keyword searching and returns the $ds-search parameter filled with entry IDs. You have created a data source that takes these IDs and subsequently filters another section. Let's forget about this second data source for a minute and focus on the Search Index data source itself:

  • make sure it is attached to the page
  • paste the XML output of this data source here
  • config.php is found in manifest/config.php, copy and paste the settings for the search_index key

1) It's attached to the page.

2) here's the xml output of the DS :

<search keywords="mama" sort="score" direction="desc">
    <alternative-keywords> 
       <keyword original="mama" alternative="man" distance="2" />        
    </alternative-keywords>
   <pagination total-entries="36" total-pages="12" entries-per-page="3" current-page="1" /> 
       <sections> 
         <section id="6" handle="Sections">Sections</section> 
           <section id="9" handle="Dagboek">Dagboek</section> 
       </sections> 
       <entry id="136" section="Dagboek"> 
         <excerpt><p>Vandaag was het de grote dag, je hebt voor het eerst heel bewust <strong>mama</strong> gezegd. Ik had al wel in de gaten dat het eraan zat te komen, ja was al een hele tijd bezig met <strong>mama</strong><strong>mama</strong>ma. Een mooi verjaardagscadeautje meisje, een heel goede timing. Dank je wel. Je zegt nu twee woorden, papa en <strong>mama</strong>&#8230;.</p>
         </excerpt> 
       </entry> 
       <entry id="62" section="Dagboek"> 
         <excerpt><p>&#8230; boos maken van de arts, er komt dan meer bloed. Je word maar heel even boos en blijft mee aankijken met een blik van waarom <strong>mama</strong>? De arts geeft het op en laat een laborant komen voor een hielprik. Je hiel wordt alvast in een gelpakking gedaan. Papa&#8230; het slapen gaan bel ik nog even naar de Nicu. Jouw temperatuur zakt een klein beetje, van 38,4 is het nu 37,9 C. Waarom <strong>mama</strong> 2005-09-11&#8230;</p></excerpt> 
         </entry> 
            <entry id="126" section="Dagboek"> 
                <excerpt><p>&#8230; horen. Jouw babbels deed je wel na als wij het vroegen. Natuurlijk oefenen we al een tijdje met je om woordjes als papa en <strong>mama</strong> te zeggen. Je was de laatste tijd al druk in je eentje aan het oefenen, maar als wij papa of <strong>mama</strong> tegen jou zeiden, deed je het ons niet na. Tot vandaag. Je hebt je eerste woordje gezegd en het is PAPA geworden. Geeft&#8230;</p></excerpt> 
             </entry> 
 </search>`

3) Here the paste for search_index key :

###### SEARCH_INDEX ######
    'search_index' => array(
        're-index-per-page' => '20',
        're-index-refresh-rate' => '0.5',
        'get-param-prefix' => null,
        'get-param-keywords' => 'keywords',
        'get-param-per-page' => 'per-page',
        'get-param-sort' => 'sort',
        'get-param-direction' => 'direction',
        'get-param-sections' => 'sections',
        'get-param-page' => 'page',
        'default-sections' => 'Sections, Dagboek',
        'default-per-page' => '20',
        'default-sort' => 'score',
        'default-direction' => 'desc',
        'excerpt-length' => '250',
        'min-word-length' => '3',
        'max-word-length' => '30',
        'stem-words' => 'yes',
        'build-entries' => 'no',
        'mode' => 'like',
        'log-keywords' => 'yes',
        'indexes' => 'a:2:{i:9;a:3:{s:6:"fields";a:3:{i:0;s:5:"titel";i:1;s:5:"tekst";i:2;s:5:"datum";}s:9:"weighting";s:1:"2";s:7:"filters";a:0:{}}i:6;a:3:{s:6:"fields";a:2:{i:0;s:5:"title";i:1;s:5:"tekst";}s:9:"weighting";s:1:"2";s:7:"filters";a:0:{}}}',
    ),
    ########
);

So what's not working? You're submitting per-page as 3, and Search Index is correctly returning three entries per page (it found 36 but is returning 3 per page). Doesn't look like a bug in Search Index to me.

Oke, then I overlooked something because of a big xml file. Sorry then for the confusion I made and the extra work for you.

Any news on this extension. I cannot download it from the normal git repo?

Sorry for this post. Initially, it contained a question about removing the Search Index extension, but then I've figured out how to do it.
So, I cleaned up my post, before anybody see it. But can't delete the post. So, what I'd say?
Hey, it was a great extension! Pitty it didn't last up to the Symphony 2.3.
:-(
Amen.

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details