Update, Oct. 9, 2006 - A newer version of Fast Search has been released. Click here for details.
The built-in search tool in Movable Type can be slow and can take a lot of processing power, especially if you have blogs with many entries. When I recently upgraded to version 3.31 of MT, I was dismayed to learn that searches became slower and more processor-intensive (at least on my server). I was forced to disable the mt-search.cgi script, as it was overloading my dedicated server. So I went looking for an alternative. I found a PHP mySQL Fulltext method that worked very fast, and without the CPU problems.
So contacted Iñaki, the creator of this PHP solution, who granted me permission modify the solution and package it up as a Movable Type plugin. I have added a number of features, and I have made significant efforts to make the plugin easy to install and use.
Fast Search is a PHP plugin for Movable Type. This means that Fast Search uses Movable Type's dynamic PHP-based publishing system to display search results. However, you can continue to use static publishing for all of your indexes and archives. Fast Search is fast in part because it uses mySQL fulltext indexing -- basically this means that a search index will be created for the entries in your database, making searches much faster.
Template Tags
Version 1.0 of FastSearch is designed to easily replace the existing search functionality in Movable Type. For example, if you are currently using customized search templates, you can use them with Fast Search, with very few changes in most cases. Many Fast Search template tags have the same names as their CGI counterparts:
- <MTSearchString> - The search string (query) being searched.
- <MTSearchResults> - A container tag that displays search results. Arguments include (all are optional):
- lastn - restricts the search to n results. (example <MTSearchResults lastn="10"> ) The lastn argument, like all arguments for MTSearchResults, can also be specified in the URL (...&lastn=10) or POSTed from a search form)
- offset - used in coordination with lastn, starts M entries from the start of the list. (example <MTSearchResults lastn="10" offset="10"> will display results 11-20)
- order - must be either 'date' or 'relevance', the default is 'relevance'. (example $lt;MTSearchResults order="date"> will provide similar results as the CGI search)
- category - must be a valid category ID for the current blog - restricts the search results to entries from this category.
- google_highlight - if specified, search words will be highlighted. (example <MTSearchResults google_highlight="1"> )
- query - the search string (text) to be searched. In normal use, you would NOT include this argument as part of the <MTSearchResults> tag, rather, it would be specified as a URL paramter (example ...query=search+phrase) or POSTed from a search form.
- <MTBlogResultHeader> - this is container tag that displays content before the search results. (Note: in version 1.0 of Fast Search, you cannot search multiple blogs in the same search)
- <MTBlogResultFooter> - this is container tag that displays content below the search results.
- <MTNoSearchResult> - A container tag that displays its content only if zero results are found. Note that this tag must be used after a <MTSearchResults> container.
- <MTNoSearch> - A container tag that displays its content only if no search phrase was specified.
- <MTSearchCount> - The number of search results displayed. This tag should be used with a <MTBlogResultHeader> or <MTBlogResultFooter> container.
- <MTSearchFirst> - The number of the first search result on the current page. This tag should be used with a <MTBlogResultHeader> or <MTBlogResultFooter>container.
- <MTSearchLast> - The number of the last search result on the current page. This tag should be used with a <MTBlogResultHeader> or <MTBlogResultFooter>container.
- <MTSearchIfNextPage> - A conditional tag that displays its content if there is a subsequent page of search results. This tag should be used with a <MTBlogResultHeader> or <MTBlogResultFooter>container.
- <MTSearchNextPageLink> - Output a URL to the next page of search results. This tag should be used within <MTSearchIfNextPage> tags.
As you may have noticed, most of the tags above are identical to the ones used for the existing CGI-based search results. This is by design, so you will easily be able to cut-and-paste your existing search template code into the Fast Search template, though some minor modifications may be required.
Working Examples:
Here are some working examples you can try. Feel free to try additional search queries and note the speed that searches are performed.
- Mars Rover Blog has over 5,000 entries. Example search: "water on mars". Note that this example shows the default FastSearch template, which is very similar to the default search results template in MT 3.2.
- Seinfeld Blog has over 8,000 entries, 180 of which consist of the episode descriptions and scripts of all 180 episodes. Fast Search powers the Seinfeld Script Search, which is restricted to a single category containing the episodes. Example search: 'bubble boy'
Requirements:
- Movable Type 3.2 or 3.3
- mySQL 4.0.1 or higher
Instructions
- Download the plugin and expand the zip file.
- Upload the contents of the 'plugins' folder to the 'plugins' directory of your MT installation (usually something like /cgi-bin/mt/plugins).
- Upload the contents of the 'php' folder to the 'php' directory (usually something like /cgi-bin/mt/php)
- Login to the MT admin interface. If you already logged in, choose 'Main Menu'
- If your are running MT 3.3, you should be redirected to an 'Upgrade' screen at this point. The Fast Search upgrade process will update your database to add a fulltext index to the table in your database where entries are stored. Note that this may take some time if you have many entries, and this will add to the overall size of your database.
- If you are running MT 3.2, you will not see the upgrade screen (as it is a 3.3 feature), so you need to create the index by browsing to the 'Settings' of a blog where you want to use Fats Search. Choose the 'Plugins' tab then find 'Fast Search' and choose 'Settings'. Now click the link in bold that says "Click here to create or rebuild the FastSearch fulltext index". Again, this may take some time, please be patient. After the index has been created, hit the Back button.
- Now browse to the 'Publishing' settings tab for the blog, and scroll down to the Setting called "Dynamic Publishing". If the first option, "Build all templates statically", is selected, you should change this setting to "Set each template's Build Options separately" and click "Save Changes" at the bottom of the screen. Otherwise, you don't need to make any changes here.(Note that change this setting will create an .htaccess file in the root path of the blog. Normally you won't notice this and everything will work fine, but if you have an existing.htacces file, you may want to take a look at it to make sure everything looks okay)
- If you just changed your Dynamic Publishing settings in the previous step, you should now rebuild all files for this blog by choosing "Rebuild Site" from the left menu, then "Rebuild all Files". You should also ensure that you have a "Dynamic Site Bootstrapper" (mtview.php) index template and make sure that it gets built, if it hasn't been built previously.
- Now return to the Fast Search settings ('Plugins' tab within 'Settings') and check the box to enable Fast Search. You may also want to adjust the settings for Maximum Search Results and logging, then click "Save Changes".
- Open the Fast Search settings once again and choose "Click here to install the default Fast Search Template." The template will be created and then displayed. This is an dynamic Index template (which can be customized) used to display the search results. (If desired you can also skip this step and create the index template manually, use the template tags as desired, or by cutting and pasting your exisiting search template code)
If you already have search forms on your blog pages, you need to update them to point to the new Fast Search template. For each template that contains a search form, look for the following (or similar):
<form method="post" action="<$MTCGIPath$><$MTSearchScript$>"
...and change it to:
<form method="post" action="<$MTBlogURL>fastsearch"
...save the template and repeat this step for every template that has a search form.
If you want to insert a new search form on your site, or completely replace existing forms, you can use the following:
<form method="get" action="<$MTBlogURL$>fastsearch">
<label for="query" accesskey="4">Search this blog:</label><br />
<input id="query" name="query" size="20" />
<input type="submit" value="Search" />
</form>
Of course you can also add optional fields to the form such as:
<input type="hidden" name="order" value="date" />
....to sort the results by date, or....
<input type="hidden" name="category" value="5" />
...to restrict the search to category_id = 5.
Once you have the search form(s) on you site, rebuild those pages and start searching. You should notice significant speed and resource improvement, especially on blogs with many entries.
Download Fast Search
Non-commercial use - FREE ( although you must include a
Movable Type search results powered bylink on your search results pages.
<a href="http://mt-hacks.com/fastsearch.html">Fast Search</a>
Also, donations are appreciated:
Commercial use - $97.00
Download Now
Downloads: 4523 (since 3/6/07)
As always, suggestions and feedback are appreciated. Please reply to this entry.
Note: FastSearch v1.0 is a suitable replacement for most implementations of the built-in search function in Movable Type. However, there are a few features that Fast Search v1.0 does not include. Fast Search v1.0 does not support comment searches, multi-blog searches (searching multiple blogs at the same time), regexp search, case-senstive search, the use of AND and OR operators, and Edit Entry Links). Also, Fast Search v1.0 does not inlcude MT 3.3 search features such as tag search. Some of these features may be supported in future versions -- please let me know what features you would like to see.
Updated: 8/9/06 07:39:00 - added some additonal info to the instructions based on feedback from Patrick.

Comments (112)
Oh man, this is going to make my life so much easier, thank you! I redesign often, and it's such an awful pain to have to go back to the search templates for these changes. Right on!
Posted by Jesse Gardner
|
August 8, 2006 1:25 PM
Posted on August 8, 2006 13:25
Great job, Mark! You've done a great job packaging it and making it easy to install for everyone, very good job indeed.
I highly recommend switching from MT's search to this method, we've been using it in our 16 blogs for months and works really well: searches are much faster for users, and the load on the system is much lower.
Posted by Iñaki
|
August 8, 2006 2:18 PM
Posted on August 8, 2006 14:18
I was truly waiting for something like this, so thank you very much!! I'd like to share a few problems I ran into while installing this.
1. I have an all-static blog and the mtview.php file failed to be created when switching to "Set each template's Build Options separately". I had to create a static template for "myview.php" containing the following (found here: http://forums.sixapart.com/lofiversion/index.php/t49502.html).
<?php
include('<$MTCGIServerPath$>/php/mt.php');
$mt = new MT(<$MTBlogID$>, '<$MTCGIServerPath$>/mt.cfg');
$mt->view();
?>
2. Setting "Set each template's Build Options separately" caused MT to create an .htaccess file in my blog's directory, and since I use a global .htaccess at my site's root (which does all kinds of redirects under my blog's path), I had to delete that and add the following to my own .htaccess.
RewriteRule ^mt/fastsearch$ /mt/mtview.php [L,QSA]
3. <MTElse> doesn't seem to be supported, so I had to rewrite some things differently.
4. <MTNoSearchResults> must be used after <MTSearchResults>, not before.
5. Really DO rebuild all files, because that will create [redundant] entry data in the mt_fileinfo table, necessary for the PHP dynamic templates. If you have trouble with <$MTEntryPermalink$> or if getting unexpected "Page not found" errors, rebuild.
It took me a while to figure out that last one especially, but otherwise it went ok and my search now works faster than ever!
Posted by Patrick
|
August 9, 2006 5:19 AM
Posted on August 9, 2006 05:19
Thanks for your detailed comments, Patrick.
1. Regarding the mt-view.php file, it seems like you have have deleted this template in the past (because you don't need it for an all static blog). When I installed Fast Search for MT Hacks, I had a similar problem, in which the mt-view.php template was previously set by me to NOt rebuild with indexes, and had never been built. So I had to build manually. Perhaps the plugin could check for these things -- at a minimum, a note about it in the Instructions may be helpful.
2. Yes, setting build options seperately does create that .htaccess file. In most cases, it plays nice with existing .htaccess files, but I have run into cases where I have needed to make modifications to get everything working. I am not sure if this is avoidable, but do like your one-line rewrite rule, which is great for people who only have Fast Search as a dynamic page/template.
3. Regarding <MTElse>, I assume you are using this in conjunction with the <MTSearchIfNextPage> tag? I will look into this, and may be able to add support for this in future.
4. True, <MTNoSearchResults> does need to come after <MTSearchResults>. This seems reasonable to me, as it is mutually exclusive to <MTSearchResults> -- are there cases where there would be advantages to reversing the order? I should at least add a note about this in the instructions.
5. Yes, I had the same confusion and problem intially. It was only after digging in the PHP code for <MTEntryPermalink> that I relaized that it was looking for the link data from the FileInfo table, and that MT creates FileInfo records for every page in your blog, even if only one of them is set to dynamic publishing. Seems a little odd, but the implication is that is important to do a full rebuild of all files after changing your dynamic publishing settings.
Patrick, your implementation looks good. It seems like you customized things to provide multiple-blog search results. I would be interested to hear how you set this up. ;)
Posted by Mark Carey
|
August 9, 2006 6:32 AM
Posted on August 9, 2006 06:32
Hey Mark, thanks for the reply!
1. You must certainly be right, I often delete stuff that I don't need (or think I need!). :)
3 and 4. I was using <MTElse> with <MTNoSearchResults>, so that I could include header and footer text to the results (other than the <MTBlogResultHeader> which I used as a real per-blog header). My previous template was actually sort of like this (simplified):
<MTNoSearchResults>
Sorry, no matches for "<MTSearchString>".
<MTElse>
</h1>Search results for "<MTSearchString>".</h1>
<MTSearchResults>
<MTBlogResultHeader><h2><$MTEntryBlog$></h2></MTBlogResultHeader>
...
</MTSearchResults>
</MTNoSearchResults>
> Patrick, your implementation looks good. It seems like you customized things to provide multiple-blog search results. I would be interested to hear how you set this up. Wink
Actually I'm doing that with a rather patchy technique. That search.php script does HTTP requests to /mt/fastsearch, /mt/agenda/fastsearch (etc. for each of my blogs) and then outputs the results together. Each blog's fastsearch template is very minimal. You can see one's output here:
http://www.chipple.net/mt/fastsearch?search=test
Posted by Patrick
|
August 9, 2006 9:04 PM
Posted on August 9, 2006 21:04
Regarding number 3 and 4, your example seems a little confusing, having a <MTSearchResults> inside a <MTNoSearchResults> tag. However, I do see your challenge, regarding the multi-blog search hack you are doing. it seems like you could achieve this by having the FastSearch template for the first blog to be like:
<MTSearchResults>
<MTBlogResultHeader>
<h1>Search results for "<MTSearchString>".</h1>
<h2><$MTEntryBlog$></h2></MTBlogResultHeader>
...
</MTSearchResults>
<MTNoSearchResults>
Sorry, no matches for "<MTSearchString>".
</MTNoSearchResults>
... and the subsequent blogs would omit the <h1> part:
<MTSearchResults>
<MTBlogResultHeader>
<h2><$MTEntryBlog$></h2></MTBlogResultHeader>
...
</MTSearchResults>
<MTNoSearchResults>
Sorry, no matches for "<MTSearchString>".
</MTNoSearchResults>
I was wondering if that was your approach to multi-blog search. Perhaps the next version of Fast Search can incoporate multi-blog searching in one form or another...
Posted by Mark Carey
|
August 10, 2006 7:41 AM
Posted on August 10, 2006 07:41
I am not a developer, but just an FYI: At least in what I just downloaded, the directory structure is in correct. Shouldn't it be:
plugins
--FastSearch
php
--Plugins
Right now the PHP files are in the php folder, and I know I couldn't get the forms to even load and got a bunch of smarty errors until I moved those files into the plugins folder.
Still working on getting it to work properly on my site, but after having trouble with mt-search for a long time, this will make me stupidly happy if I can get it to work :-)
Posted by Jake
|
August 14, 2006 7:22 PM
Posted on August 14, 2006 19:22
Thanks for reporting that issue with the directory structure in the zip file. I was not aware that I didn't have the php files in a 'plugins' folder. I have updated the zip file to fix this.
Please let me know if you need any help or advice with getting it working on your server.
Posted by Mark Carey
|
August 14, 2006 7:54 PM
Posted on August 14, 2006 19:54
I actually figured out my problem, Mark, after digging through my ProNet email list archives. I had caching enabled in my mtview.php file, so it wasn't loading any search results. After I disabled caching line in there, it worked fine.
Posted by Jake Ortman
|
August 14, 2006 8:02 PM
Posted on August 14, 2006 20:02
OK, one feature suggestion: provide some .htaccess examples on how we can make this even more of a drop-in replacement for mt-search.cgi so we can redirect requests to that file to fastsearch and get rid of that cgi resource hog.
Posted by Jake Ortman
|
August 14, 2006 8:22 PM
Posted on August 14, 2006 20:22
Good to hear, Jake. If you are interested, you will also find my solution for getting MT caching to play nice with Fast Search (click for ProNet message - requires ProNet login).
I will play around with .htaccess to see if I can come up with some rewrite rules. Intially I was hoping to just override the <MTSearchScript> tag and point it to Fast Search, but the default templates preface this with the <MTCGIPath> tag, which complicates things. That said, there may be some rewrite solutions.
Posted by Mark Carey
|
August 15, 2006 7:50 AM
Posted on August 15, 2006 07:50
Mark-
I'm trying to isntall FastSearch. Got to step 6 (Yes, I am on 3.2) and when I click the link I get the following:
Any ideas?
Posted by Dascalargo
|
August 21, 2006 2:19 PM
Posted on August 21, 2006 14:19
Dascalargo, that section of the code relates to loading the database driver and executing some SQL code. I am not sure exactly why you are getting this error.
Please forgive the obvious question: can you confirm that your installation of MT is using mySQL as a data source? If you are not sure, look for an "ObjectDriver" line in your config file (either named mt.cfg or mt-config.cgi).
Posted by Mark Carey
|
August 21, 2006 2:42 PM
Posted on August 21, 2006 14:42
Mark, no need to apologize for the obvious question because it did need to be asked. I glossed right over the MySQL requirement, but I figured that much out before you had the chance to respond.
Yesterday afternoon I decided to try to migrate over to MySQL. A lot of this stuff is groping in the dark, learning as I go along, and I'd done pretty well... until now.
I got MySQL set up, no problem. Started the MT upgrade which transferred everything over, but it bombed out in the middle for some reason. I got some totally non-descript error message -- something akin to, "I'm afraid I can't do that, Dave," with no further explanation. Long story short, the MySQL database was corrupted and my MT password ceased working.
So... I'm starting from scratch, installing MT 3.3. I had been considering doing that anyway -- I originally installed MT a few years ago, when even more of this was trial-and-error for me, then upgraded to 3.2, and then moved the entire install to a new server, so the set-up was in desperate need of a clean-up anyway -- but I always talked myself out of it because of the work involved. Looks like I convinced myself. :D
Bottom line: Once I get MT installed (this time using MySQL), I'm going to try FastSearch again. I look forward to using it.
Sorry to have unnecessarily bothered you with this.
Posted by Dascalargo
|
August 22, 2006 9:08 AM
Posted on August 22, 2006 09:08
Mark-
Finally got Fast Search to work with my new install of MT... sort of.
It seems to not see certain words. Bat, Fox, Dog, between, able, two, first, something, and sent are all words that appear in the main body of an entry, but which Fast Search doesn't see. I have rebuilt the site as well as building, rebuilding, and re-rebuilding the fulltext index, and it's always the same words that go unnoticed.
Here's something else I noticed in experimenting. I have the word voice in two entries, both of which Fast Search returns when I search on that word. Fast search finds neither that nor to, but it CAN differentiate between and find the correct entry if I search for the phrases "voice that" and "voice to".
The page can be viewed at http://www.triviot.com/index2.php. It's not live and the subsequent archives and search results pages have no styles applied to them yet.
I generally tend to think I did something wrong in these cases, but this time I'm stumped.
Posted by Dascalargo
|
August 24, 2006 12:51 PM
Posted on August 24, 2006 12:51
Oh, and yes, I'm on MySQL this time. :D
Posted by Dascalargo
|
August 24, 2006 12:52 PM
Posted on August 24, 2006 12:52
Damn. One more thing I meant to tell you...
On your default search results page, the courtesy link back to you is broken. Looks like you left off the dot-com.
Sorry to be flooding the comments.
Posted by Dascalargo
|
August 24, 2006 1:03 PM
Posted on August 24, 2006 13:03
Thanks for the note regarding the error in that link -- I also received an email about that and it has now been fixed.
You description above about the search results is normal and to be expected. mySQL fulltext search excludes words less than 4 characters by default -- this is why searches for words like bat, fox, and dog don't work. Furthermore, fulltext also excludes a list of "stop words", which likely include between, able, something, etc. The goal in both cases if to avoid really short or commmon words in order to return the most relevant results.
So you didn't do anything wrong. Some people don't like the fact that you can't search for 3 letter words -- this can be changed in the mySQL config file, but unless you have a dedicated server, this may not be possible.
Posted by Mark Carey
|
August 24, 2006 2:59 PM
Posted on August 24, 2006 14:59
Thanks, Mark. I'm totally new to MySQL, so was ignorant about stopwords and word length. I've since done a bit of research.
Yeah, I'd probably want to be allowed to search three-letter words if I had the option -- my database should be small enough that I don't think it would make a big difference in building the file -- but that option isn't available to me. As for the stopwords, I have no problem with the concept that it doesn't include certain words. I mean, in reality I never would search on the words I tested anyway. I did find a copy of the built-in stopwords list (which my server is using), and it helps to see what isn't on the list.
Thanks again. I'm up and running, and fully understanding now. I think I'm finally out of your hair. :wink:
Posted by Dascalargo
|
August 24, 2006 4:18 PM
Posted on August 24, 2006 16:18
Quick question, I was using Joe D'Andrea's Seeker plugin which is quite similar to FastSearch. The only qualm I had with Seeker was that it couldn't log searches to the activity log, hence my question, does FastSearch like MT::App::Search log searches to the Activity Log?
Posted by Arvind Satyanarayan
|
August 26, 2006 11:37 PM
Posted on August 26, 2006 23:37
Hi Arvind,
Yes, Fast Search does log searches to the Activity Log. Both 3.2 and 3.3 log formats are supported. Logging is off by default but can be enabled on a per-blog basis (blog-level settings).
Thanks for bringing to my attention the fact that I was not explicit about this above.
Posted by Mark Carey
|
August 27, 2006 6:59 AM
Posted on August 27, 2006 06:59
Hi,
Can you provide installation instructions for lighty+fastcgi. We are currently getting 404 errors. Lighty will not recognise .htaccess files
Anish
Posted by Anish | August 29, 2006 12:01 AM
Posted on August 29, 2006 00:01
I was able to follow all of the instructions on setting up FastSearch for my Movable Type installation, but after completing step 10 and doing a test search the page returns an error message of "Page not found - /fastsearch".
I've added the Rewrite ruled in my .htaccess file as mentioned by Patrick and I even see the query show up in my the Movable Type activity log, but FastSearch doesn't seem to work for me (even after rebuilding several times to update the fulltext index).
Any thoughts on what I might be doing wrong? The server is Red Hat Linux Enterprise running Apache 2.0 on one of Media Temple's dedicated virtual servers.
.htaccess:
RewriteEngine on
RewriteRule ^/fastsearch$ /mtview.php [L,QSA]
Posted by Ryan J. Bonnell
|
September 14, 2006 4:42 PM
Posted on September 14, 2006 16:42
Ryan,
Given your description, you can try two things:
1) Try rebuilding all indexes. However, it sounds like you have done this.
Is the "not found" page a standard apache 404 page, or does it look different? Specifically, I am wondering whether this page is being generated by mtview.php. If it is not, try the following:
2) Check to make sure that Apache is configured to allow the use of .htaccess files in the root directory of the web site. Since this is a dedicated server, you should be able to check and change this, if necessary. I recently came across this issue with a Fast search install. The solution was to add the following to the apache config:
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
"AllowOverride All" is the key line above.
If you can provide a link to your search form, I can confirm whether the "not found" page is being generated by mtview.php, or not. If it is, it means that you .htacess is working fine, but the MT "FileInfo" record is not there. In this case, make sure that you have completed step 7, check that your Dynamic publishing settings are set to "Set each template's Build Options separately". As well, make sure that the Fast Search index template is present under Index Templates. If it is not there, revist step 10: Open the Fast Search settings once again and choose "Click here to install the default Fast Search Template." In the Fast Search index template is there, make sure it is set to build dynamically. Then rebuild indexes.
Please let me know if any of the above fixes the problem.
Posted by Mark Carey
|
September 14, 2006 8:02 PM
Posted on September 14, 2006 20:02
I must have missed something. I followed your instructions and yet I'm getting 404 Not Found errors whenever I try a Fast Search. Have a look at http://www.bowjamesbow.ca/blog.shtml
Any suggestions appreciated.
Posted by James Bow
|
September 17, 2006 12:04 PM
Posted on September 17, 2006 12:04
Finally!! A search for Movable Type that WORKS!!
Thanks - I'll be installing it on all of my blogs
Posted by Jim
|
September 17, 2006 6:33 PM
Posted on September 17, 2006 18:33
James,
It seems like you may be missing the "Dynamic Site Bootstrapper" (mtview.php) index template -- or, this index template has not been built. If you see this under index templates, rebuild it. If not, you need to create it. Name it "Dynamic Site Bootstrapper" and use output file "mtview.php". You can grab the default template from here. This template does not need to be "rebuilt with indexes", but be sure to build it at least once.
Let me know if this doesn't work...
Posted by Mark Carey
|
September 17, 2006 7:52 PM
Posted on September 17, 2006 19:52
Does the Dynamic Site Bootstrapper have to be published dynamically, or should it be static?
Posted by James Bow
|
September 17, 2006 10:21 PM
Posted on September 17, 2006 22:21
Okay, I don't know what I did (constantly switching mtview.php and fastsearch between static and dynamic and rebuilding), but it works now.
A relief too. Much better search method.
Posted by James Bow
|
September 17, 2006 11:14 PM
Posted on September 17, 2006 23:14
I thought I should let you know that the plugin doesn't play nice with markdown and smartypants and any posts which are formatted using these plugins chokes the search. But this is easily fixed by adding the variable convert_breaks="1" in the EntryExcerpt field.
Posted by James Bow
|
September 17, 2006 11:33 PM
Posted on September 17, 2006 23:33
Mark,You've done a great job in Fast Search but the fact is that it is only working in Latin alphabets. I'm not very professional in php but it seems that you've used some functions that do not support 2-byte characters in UTF-8 format. Most of non-Latin languages are using this type of 2-byte chars and your search plugin is not working in these languages.
I want to know if you can do me and a lot of others, who are using MT to publish weblogs in non-Latin alphabets, a favour by solving this issue. I'm eager to donate some if you can solve this problem. besides I know a lot of other who are capable of donating more if you end this search nightmare for them.
Waiting to hear good news from you.
Posted by Aziz Ashofte
|
September 18, 2006 1:51 AM
Posted on September 18, 2006 01:51
I'm getting this error:
SQL/DB Error -- [You have an error in your SQL syntax near 'BOOLEAN MODE) AS score FROM mt_entry, mt_author WHERE entry_blog_id IN (1) AND e' at line 1]
I'm using the MT 3.33 on a MySQL database. Can't figure out what is wrong. I do see the fastsearch page, I do see a search box and I also see the error mentioned above. Is it a MT 3.33 problem? I have rebuilded the fulltextsearchindexthingie and my whole blog.
Posted by George
|
September 27, 2006 4:18 AM
Posted on September 27, 2006 04:18
George, what version of mySQL are you running? This error sounds like you are using an old version of mySQL, that does not support fulltext searching. As stated above, mySQL 4.0.1 or higher is required for the current version of Fast Search. However, an upcoming release of Fast Search may support older version of mySQL. Stay tuned.
Posted by Mark Carey
|
September 27, 2006 7:05 AM
Posted on September 27, 2006 07:05
Hi Mark,
Oops. I'm using the 3.23.58 version. Going to kick my provider :-)
Thanks!
Posted by George
|
September 28, 2006 4:21 AM
Posted on September 28, 2006 04:21
Hi Mark,
I noticed there is a next page tag but I was wodering if in the future you plan to include a previous tag or why not some pagination numbers ala Google.
This is such a huge improvement from the search.cgi that I hope Six Apart implements this in their next major release!
Thanks.
Posted by Diego
|
September 29, 2006 11:59 AM
Posted on September 29, 2006 11:59
Hi Mark,
Weird question: is there any restricted English words that won't appear in the search results page?
I'm having a problem with the word "associated". I've created an entry with the text below:
"an association of associates. associate. associater. associated. asociated."
and all the words can be found except "associated". I'm quite confused about this.
Do you have any suggestions or has anyone had a similar issue?
Posted by Diego | September 29, 2006 1:26 PM
Posted on September 29, 2006 13:26
I just realised that the issue with some words has to do with mySQL stop words (As somebody pointed out previously).
For those interested, the link to the full list is below:
http://dev.mysql.com/doc/refman/5.0/en/fulltext-stopwords.html
Posted by Diego
|
September 29, 2006 1:52 PM
Posted on September 29, 2006 13:52
Hi Diego,
With respect to a "previous" tag, yes, I think that is something that I could add in future.
Regarding the pagination numbers, this is possible, but I decided against it, as it could affect perfomance. The challenge pagination numbers is that you need to know the total number of search results -- and this would require another "count" query. I'm not a mySQL expert, so I am not sure how much this would impact performance, but with blogs with many entries, it might.
Posted by Mark Carey
|
September 29, 2006 5:26 PM
Posted on September 29, 2006 17:26
Hi Mark,
Thanks for coming out with such a useful plugin. I was dissapointed at the speed of search.cgi in MT 3.3 too.
I managed to install the plugin but the fastsearch template breaks with some MT tags. I can get a full list of search results if I only list the <MTEntryTitle> or <MTEntryDate> tag in the template but the results break on the first one if I want to include <MTEntryExcerpt> or <MTEntryBody>. My entries are stored in a MySQL database.
Any thoughts? Thanks a lot!
Posted by Rich
|
October 1, 2006 5:44 AM
Posted on October 1, 2006 05:44
Rich,
That's a strange one. Being a php plugin, Fast Search won't support many tags from other non-php plugins, BUT it does support core MT tags such as MTEntryExcerpt and MTEntryBody. Both of these have been tested and work fine in the search results. Can you provide an example of an error message? Or perhaps a link to your search form?
Posted by Mark Carey
|
October 1, 2006 8:22 AM
Posted on October 1, 2006 08:22
> Regarding the pagination numbers, this is possible, but I decided against it, as it could affect perfomance.
MySQL has a SQL_CALC_FOUND_ROWS keyword that seems to makes this doable in a more efficient way than doing a separate COUNT().
http://dev.mysql.com/doc/refman/4.1/en/information-functions.html#id2826088
Some PHP related comments are here:
http://www.php.net/manual/en/function.mysql-num-rows.php
Posted by Patrick
|
October 1, 2006 9:32 PM
Posted on October 1, 2006 21:32
Patrick, that sounds interesting, thanks for the pointer. I will try this out for the next version.
Posted by Mark Carey
|
October 2, 2006 1:37 PM
Posted on October 2, 2006 13:37
Hi Mark,
When I was validating the fast search results page with the html validator at http://validator.w3.org/ I got some errors due to encoding (My page's xhtml).
By encoding the ampersands in block.MTSearchResults.php line 100 as below the validation passes.
$next =
$uri[0]."?query=".urlencode($query)."&category=".$category."&order=".$order."&lastn=".$lastn."&offset=".$offset;
Hope it helps.
Posted by Diego
|
October 5, 2006 10:48 AM
Posted on October 5, 2006 10:48
Thanks for all the suggestions in this discussion. Many of them have lead to new features, which have just been released in version 1.5.
Click here for deatils about Fast Search v1.5.
Posted by Mark Carey
|
October 9, 2006 11:04 AM
Posted on October 9, 2006 11:04
James, I have move your comment over to the v1.5 discussion - see my response there.
Posted by Mark Carey
|
October 12, 2006 10:14 AM
Posted on October 12, 2006 10:14
Warning: main(): open_basedir restriction in effect. File(/var/www/vhosts/tracli.net/cgi-bin/mt8/php/mt.php) is not within the allowed path(s): (/var/www/vhosts/tracli.net/httpdocs:/tmp) in /var/www/vhosts/tracli.net/httpdocs/test8/mtview.php on line 2
Warning: main(/var/www/vhosts/tracli.net/cgi-bin/mt8/php/mt.php): failed to open stream: Operation not permitted in /var/www/vhosts/tracli.net/httpdocs/test8/mtview.php on line 2
Warning: main(): Failed opening '/var/www/vhosts/tracli.net/cgi-bin/mt8/php/mt.php' for inclusion (include_path='.:/usr/share/pear') in /var/www/vhosts/tracli.net/httpdocs/test8/mtview.php on line 2
Fatal error: Cannot instantiate non-existent class: mt in /var/www/vhosts/tracli.net/httpdocs/test8/mtview.php on line 3
error -_-" why not
Posted by Anonymous | November 17, 2006 3:05 AM
Posted on November 17, 2006 03:05
I'm testing fastsearch for a non-profit site I help out. I'm getting this error from the default template:
SQL/DB Error -- [You have an error in your SQL syntax near ' MATCH (entry_title, entry_text, entry_text_more, entry_keywords ) A' at line 1]
SQL/DB Error -- [You have an error in your SQL syntax near '()' at line 1]
Any idea what might cause this?
Posted by Kyle
|
December 11, 2006 6:43 PM
Posted on December 11, 2006 18:43
Kyle, you will need to provide more details. Whate version of mySQL are you using? What FastSearch mode? My guess is that you are using an old version of mySQL (older than 4.0.1) and that you are using the Fulltext method. If both are true, try switching to the "Non-fulltext" method. Older versions of mySQL don't support Fulltext.
Posted by Mark Carey
|
December 12, 2006 6:50 AM
Posted on December 12, 2006 06:50
Looks like we have MySQL 2.1021. Yes, it was set to Fulltext mode. We're using Media Temple. You'd think it would be more current.
I changed the settings to "non-fulltext" and rebuilt the FastSearch Index and now the error looks like this:
SQL/DB Error -- [You have an error in your SQL syntax near 'DISTINCT * FROM mt_entry left outer join mt_placement on ' at line 1]
SQL/DB Error -- [You have an error in your SQL syntax near '()' at line 1]
Posted by kyle
|
December 12, 2006 5:34 PM
Posted on December 12, 2006 17:34
I'd tend to think that those DISTINCT's aren't necessary, so you could try removing them from the file block.MTSearchResults.php.
However, the version of MySQL you're using really is very old, and you might run into other problems.
Posted by Patrick
|
December 12, 2006 10:15 PM
Posted on December 12, 2006 22:15
Kyle, I googled for that version of mySQL, but instead I found aversion of the Perl DBD:mySQL lib with that exact version. It seems like you have given me the version of the perl module, not for mySQL itself. It is highly unlikely that mediatemple would be using anything older that v3x.
Posted by Mark Carey | December 13, 2006 9:14 AM
Posted on December 13, 2006 09:14
Sorry, that's what mt-check.cgi said. In phpMyAdmin it says: "MySQL 3.23.58 running".
Posted by kyle
|
December 13, 2006 12:58 PM
Posted on December 13, 2006 12:58
Thanks, Kyle. I think I have figured out the problem. To reply to Patrick's comment, it doesn't seem like it has anything to do with the DISTINCT keyword, but rather the keyword that precedes it the query: SQL_CALC_FOUND_ROWS. I just looked it up and indeed it is only available in mySQL v4+. I used this to help calculate the total number of results for a particular search. It's more efficient that way. In a future version, I may be able to work around this for people running olders versions of mySQL -- the perfomance won't be as good, but it will still be better than the MT built-in search.
Posted by Mark Carey
|
December 14, 2006 12:54 PM
Posted on December 14, 2006 12:54
Oops, sorry about that wrong diagnostic.
Posted by Patrick
|
December 14, 2006 8:53 PM
Posted on December 14, 2006 20:53
I have had FastSearch implented for about two weeks, and now visitors are getting this error when attempting to search:
Parse error: parse error, unexpected \'{\', expecting \')\' in /home/slobokan/public_html/cgi-bin/mt/php/extlib/smarty/libs/Smarty.class.php(1936) : eval()\'d code on line 35
I have not made any modifications to any of the mt files, or the fast search, since installation, and it used to work just fine.
Any ideas?
Posted by Slobokan
|
December 19, 2006 3:42 PM
Posted on December 19, 2006 15:42
Mark, I switched over to Media Temple's Grid Server which has MySQL 4.11 and everything is working perfectly. Thanks for your help.
Posted by kyle
|
December 28, 2006 1:45 AM
Posted on December 28, 2006 01:45
The script has been working great except for one issue, when it finds entries that are formatted using the textile2 plugin I get this error on the results page:
Smarty error: [plugin] modifier 'textile_2' is not implemented (core.load_plugins.php, line 118)Posted by kyle
|
December 29, 2006 3:42 PM
Posted on December 29, 2006 15:42
OK. I downloaded and installed the PHP version of MT-Textile2 fromhere and I no longer get the Smarty error.
Posted by kyle
|
December 30, 2006 11:32 PM
Posted on December 30, 2006 23:32
This is excellent... any way to implement the feeds from search terms feature found in the default template?
Posted by raul Gutierrez | January 24, 2007 11:05 PM
Posted on January 24, 2007 23:05
raul,
Yes, it is possible.
Just create a second index template for the Feed template, using the Fast Search template tags as appropriate. You could start with the default RSS or Atom template, or even with the 3.3 search feed template code. Either way, you will have to modify/remove tags as appropriate. A future version of Fast Search may have "built-in" support for search feeds.
Posted by Mark Carey
|
January 25, 2007 8:57 AM
Posted on January 25, 2007 08:57
Hello ,
i want to use my from for search Multi Blog with one form , please give me that Code ,
for example for search blogs with "1" "3" "6" id with one form.
Thank you.
Posted by Smaty
|
January 27, 2007 12:05 PM
Posted on January 27, 2007 12:05
I love fastsearch... it really does improve performance over here on our internal blog with almost 9000 entries.
My question: does fastsearch support mt 3.34s tags and if so what code would we use to update a tag listing like this:
<MTEntryIfTagged>
<a>TAGS: </a><MTEntryTags glue=", "><a href="<$MTTagSearchLink$>"><$MTTagName$></a></MTEntryTags></MTEntryTags> <MTElse>
</MTElse>
</MTEntryIfTagged>
Posted by jim
|
January 30, 2007 3:51 PM
Posted on January 30, 2007 15:51
Smaty, you would use <MTSearchResults blogs="1,3,6"> in your Fast Search template. Or, place <input name="blogs" type="hidden" value="1,3,6"> in your form.
jim, as stated above, the current version of Fast Search does not support tag searches (MT 3.3+). That may be added in a future version.
Posted by Mark Carey
|
January 31, 2007 8:31 AM
Posted on January 31, 2007 08:31
Last September I added automatic tagging to my personal MT-powered blog and used MT-Search and the htaccess trick mentioned in SixApart's tagging post (scroll to the "Beautifying the tag search link URLs"). The results were beautiful: Google visits more than doubled.
Unfortunately MT-Search wasn't up for the extra load and my server started crashing once a week. I installed FastSearch and it's almost perfect. The problem I'm having is that links to domain.com/tag/whatever now get rewritten as domain.com/fastsearch?query=whatever. Is there any way to "beautify" the FastSearch result. I think the short URLs really matter. This may just be my ignorance of how htaccess works, but for the life of me I can't figure this out.
More about how I've pulled this altogether on this immodestly named post on my design blog. Thanks for a great plug-in and thanks everyone for any answers to my problem.
Martin
Posted by Martin Kelley | February 2, 2007 11:31 PM
Posted on February 2, 2007 23:31
Found a slight ordering issue with the MTSearchResults tag.
default is: relevance=1 and google_results=1
The problem with relevance currently is that it looks at all the entries with "all the keywords" then it looks at single keywords. But when grouping the entries, it reads oldest to newest. Most search results give you "latest by date" first since that's what you're looking for, not the oldest post.
Posted by darkmoon
|
February 7, 2007 7:14 AM
Posted on February 7, 2007 07:14
Martin, automatic tagging technique is very cool. As long as you are not using MT3.3 built-in tags feature, you will be able to search using Fast Search will search the entry, extended entry, excerpt and keywords fields, but not (yet) the Tags field.
That said,the other issue if the URL rewriting make nice looking URLs like domain.com/tag/something. Unforunately, due to the way that MT dynamic publishing works, when you try to do this kind of thing, it does not work as you would expect. This is a pet peeve of mine because it does not support .htaccess URL rewriting like this. In future, I plan to release a modified version of the MT.php file that will support -- if it works, it will enable you do what you are trying to do. Look for this in conjucntion with the release of Fast Search 2.
Posted by Mark Carey
|
February 7, 2007 8:12 AM
Posted on February 7, 2007 08:12
I just moved my site. The fastsearch is now a blank page. Any ideas on what the issue or error is? Is this another dynamic publishing issue?
Posted by darkmoon
|
February 9, 2007 9:40 AM
Posted on February 9, 2007 09:40
Fixed.
Also found a slight bug in the fastsearch template.
Right above the search results, if you try to search again, it fails. I changed it to show the following and it works now:
fastsearch.php">
" />
Search this site:
" />
Posted by darkmoon
|
February 9, 2007 2:26 PM
Posted on February 9, 2007 14:26
Bleh. hopefully this posts this time:
< form method="get" action=" <$MTBlogURL>fastsearch.php">
<input type="hidden" name="IncludeBlogs" value="<$MTBlogID$>" >
<label for="search" accesskey="4"><h3>Search this site:</h3><label>
<p><input id="search" name="search" size="30" value="<$MTSearchString$>" >
<input type="submit" value="Search" >
</form>
Posted by darkmoon
|
February 9, 2007 2:43 PM
Posted on February 9, 2007 14:43
Hi darkmon, glad its working. That's not a bug, however. The search didn't work because you changed the output file name of the fastsearch template. The default is "fastsearch" (no extension), and its seems like you changed it to "fastsearch.php". It's okay to change the filename like this, but you do need to make sure that all search forms reflect this change. ;)
Posted by Mark Carey
|
February 11, 2007 8:37 AM
Posted on February 11, 2007 08:37
Really? Because I checked the template after I changed the output of the file name. It would not IncludeBlog at all, nor was there a way to do tell it what to search.
Which is why I edited the template itself.
The search form which is given above is fine, but there is nothing about changing the template itself. The above code is actually right in the middle of the fastsearch template.
Posted by darkmoon
|
February 11, 2007 10:24 AM
Posted on February 11, 2007 10:24
Sorry, darkmon, I guess I missed the "bug" you were talking about. You don't need the IncludeBlogs argument -- the plugin knows what blog it is based on the context on the search results page (meaning, since the plugin knows the template being displayed is from blog 2, the results will be limited to blog 2).
The only time IncludeBlogs is required is when you are searching one or more blogs other than the blog where fast search template lives.
Posted by Mark Carey
|
February 11, 2007 4:14 PM
Posted on February 11, 2007 16:14
You asked for suggestions for Fast Search:
1. AND!
2. Support for custom mysql entries like those added by Right Fields.
3. Full support for tags.
4. Multiblog results
I'd suggest setting the default search results to AND and 'by date'.
Posted by lisa | February 11, 2007 8:38 PM
Posted on February 11, 2007 20:38
Strange. I don't know why it didn't work then when I didn't include the Include Blog tag. For whatever reason, if you just copy the search form and edit it to the template (which is what the above is), then it works well.
When I just left it as default, it would give blank query strings.
Posted by darkmoon
|
February 12, 2007 9:02 AM
Posted on February 12, 2007 09:02
Hey there,
I've installed FastSearch on a site and have it set to display results according to relevance. For some reason, it doesn't seem to be working completely.
The results aren't displaying by date but not totally by relevance either.
I know this because, for example, when I do a search for "pies." There are five listings that come up. If I update one of the listings and add information about different pies, the order of the search results doesn't change.
If I remove all mentions of pies from a listing, it doesn't show up in the search results any longer.
I added one new listing for a pie shop, with lots of listings of pies, and it shows up at the bottom of the search results.
I guess I'm wondering what FastSearch uses to determine relevance?
Any thoughts? I've been doing lots of tests and am not having much luck. Any help would be greatly appreciated!
Posted by Trevor | February 12, 2007 8:52 PM
Posted on February 12, 2007 20:52
Trevor, Fast Search used the relevance algorithms built-in to mySQL when used with fulltext indexing. More info can be found here, but here is a quote from that page:
" Every correct word in the collection and in the query is weighted according to its significance in the collection or query. Consequently, a word that is present in many documents has a lower weight (and may even have a zero weight), because it has lower semantic value in this particular collection. Conversely, if the word is rare, it receives a higher weight. The weights of the words are combined to compute the relevance of the row. Such a technique works best with large collections (in fact, it was carefully tuned this way). For very small tables, word distribution does not adequately reflect their semantic value, and this model may sometimes produce bizarre results."
It's not Google-quality relevance, but in general it seems to work pretty good.
Posted by Mark Carey
|
February 13, 2007 8:14 AM
Posted on February 13, 2007 08:14
Hey Mark,
Thanks for your answer. Does FastSearch put more or less weight on keywords vs entry vs tags? Does it use one of those fields or all of them?
Would the length of the search word make a difference? When I search for the word "pie" using Fulltext mode, no entries are found even though I have one listing with the word "pie" in it. When I use Fallback, a whole bunch of listings are found that include "pie" as part of other words.
Basically, my client is doing searches on businesses listed on his site and is bothered that the most relevant businesses are showing up closer to the bottom than the top.
ANY help you can give would be greatly appreciated. I've spent a lot of time on this and I feel like I'm getting nowhere.
Posted by Trevor | February 13, 2007 11:59 AM
Posted on February 13, 2007 11:59
Fast Search will search the Title, entry, extended entry, excerpt, and keywords fields. Keywords found within those would be treated equally by mySQL.
With mySQL fulltext search, words less than 4 charaters long are not indexed, that's why they show zero results. If you have access to the mySQL config files, you can change this setting. When you use "Fallback", Fast Search will fallback to a non-fulltext search, which does allow 3 letter words, including partial words, etc.
MySQL relevance is what it is, so its tough to change that. If you are on a dedicated server, you could tweak some seeting as mentioned here.
Posted by Mark Carey
|
February 13, 2007 3:05 PM
Posted on February 13, 2007 15:05
Hello Mark , Thank you.
I try it but its dont work.
Can you please give me an example?
Mark :
Smaty, you would use in your Fast Search template
fastsearch"> Search this blog:My Form :
Posted by Smaty
|
February 15, 2007 10:16 PM
Posted on February 15, 2007 22:16
Smaty, as stated previously one way to do this is to use the following form code:
<form method="get" action="<$MTBlogURL$>fastsearch">
<label for="query" accesskey="4">Search this blog:</label><br />
<input name="blogs" type="hidden" value="1,3,6">
<input id="query" name="query" size="20" />
<input type="submit" value="Search" />
</form>
Notice the line in bold above. Edit the 1,3,6 to have the blog_ids of the blogs that you want the form to search.
Posted by Mark Carey
|
February 16, 2007 7:15 AM
Posted on February 16, 2007 07:15
Dear Mark,
Thank you veru much.
Posted by Smaty
|
February 17, 2007 9:16 AM
Posted on February 17, 2007 09:16
For future updates I'd like to put in my vote for including AND searching. We're developing a new website in MT right now while I love most things about fast search (love the speed and the server efficiency), without AND as the standard setting we're going to stick with the default MT search... most of the searches we get are two word searches and without AND there are just too many bad results returned. Also I believe that this is how people expect search to work as this is how google, yahoo, spotlight and now vista return results.
Support for custom mysql fields would also be great although I understand why this would be a low priority.
Posted by reeves
|
February 22, 2007 1:22 PM
Posted on February 22, 2007 13:22
Thanks for the comments, reeves.
A few things to note:
The "non-fulltext" search mode does currently default to AND searching -- only results with all keywords will be returned. And its still pretty fast compared to the built-in search. You should try it. (Fast Search v1.5+)
The fulltext mode also supports AND -type searching, but not by default. You currently need to preface each word with a + to required that keyword to be present. A future version of Fast Search may include an option for searches to default in this way, only displaying results that contain all keywords. Click for a description of the AND/OR operators currently supported.
Posted by Mark Carey
|
February 22, 2007 1:56 PM
Posted on February 22, 2007 13:56
templates_c is 777 and fully writable,
unfortunately is a high level of danger.
hackers can upload any files such as php shell script, with other accounts on shared servers.
what is solution?
Posted by Smaty
|
February 22, 2007 6:46 PM
Posted on February 22, 2007 18:46
For some unknown reason the hosting company that I use doesn't all .htaccess files to be created on their servers. It there a way to get around this with installing Fast Search?
Posted by Patrick | March 3, 2007 9:17 PM
Posted on March 3, 2007 21:17
Well, Patrick, it may be time to find a new host. Not allowing .htaccess can limit you in many ways.
Does your host allow custom error pages? If so, you may be able to assign mtview.php as the custom 404 page not found error page. This would work. Apart from that, I can't think of a way to do it without .htacess.
Posted by Mark Carey
|
March 3, 2007 9:37 PM
Posted on March 3, 2007 21:37
Greetings Mark, I downloaded and installed Fast Search today on my blog so that I could use it to paginate my search results and tag results (tags are a great addition btw) and I have paid for the use as a business :)
The search function is working great and I have been able to customize the templates to some degree but there is one thing I cannot seem to fix and I was hoping you might help me. I use another plugin called Right Fields http://www.staggernation.com/mtplugins/RightFields which allows me to create my own tags.
The challenge is that your Fast Search plugin does not recognize the Right Fields plugin tags that I have created and am displaying in my search results and it throws an error (whereas the original mt-search.cgi does not)... For this reason I cannot use your search at all on my site because the extra Right Fields tags are critical to the design. Also note, if you visit my site, I am using the Google Site search utility, tags are really the only way I am "searching" with your or MT search utilities.
At this point I have reset my search to the old MT version so that I don't get the error. You can visit my search results page at http://www.abstractmall.com/mt/mt-search.cgi?tag=men&blog_id=1 to see how it should or would look. An example of the Right Tags that throw off your results is
Note: all of the t-shirt images and hover images are being brought in with Right Fields, if you could add compatibility for this plugin to your search plugin I would most appreciate it!
Also, how do you get your link to PayPal to land on the "enter credit card" page instead of the login page? I am using PayPal standard and I assume you are too?
Posted by Court
|
April 7, 2007 4:31 PM
Posted on April 7, 2007 16:31
We've had fastsearch running for a few months and all of a sudden last night it stopped working. No code was changed that I'm aware of and the fastsearch page is accessible directly, but submitting search terms results in a blank page. The only assumption I have is that maybe something was entered in a post that might be causing some "indigestion", but I don't know where to start trying to troubleshoot.
Posted by kyle
|
May 9, 2007 2:41 PM
Posted on May 9, 2007 14:41
I think the host recently updated to PHP v4.4.6 around the time fastsearch stopped working. The host claims they didn't do anything but the
phpinfo();notes the update. Would anything be effected by that? I uninstalled and reinstalled and still get a blank page.Posted by kyle
|
May 13, 2007 11:08 PM
Posted on May 13, 2007 23:08
I've installed FastSearch but have come to a problem. When I try a search, the search string is in the address bar, but the page displays Searched for "" . No entries found.
I've tried a few different form methods but nothing seems to work. Oh and i've rebuilt a lot and reindexed a few times too.
thanks,
karim
Posted by Karim
|
May 15, 2007 7:08 AM
Posted on May 15, 2007 07:08
Just to follow up, I switched hosts (from Hosting Matters to Dreamhost). Dreamhost is running PHP v4.44 (and their support seems much more professional, FYI) and fastsearch is working perfectly there, so I don't know if it was PHP v4.4.6 that was the problem or the host screwing something up behind the scenes. Either way we're good.
Posted by kyle
|
May 30, 2007 3:31 PM
Posted on May 30, 2007 15:31
Good, to hear, Kyle. Sorry for missing your earlier comments from a few weeks ago.
For what its worth, I have some site on both dreamhost and hosting matters, and they are both generally pretty with MT, but I haven't tested Fast Search on either of them (yet).
Posted by Mark Carey
|
May 31, 2007 12:56 PM
Posted on May 31, 2007 12:56
Thanks for replying Mark. I spoke a bit too soon. Right now I'm getting intermittent results. The fastsearch page always comes up now (no more blank pages) and it works intermittently (I do get results when the search string is passed on), but it is also returning this:
Searched for ""
No pages were found containing "".
when there was definitely text entered. I've recreated files, reuploaded, checked permissions, etc. So something is causing the search string to vanish.
Posted by kyle
|
May 31, 2007 11:31 PM
Posted on May 31, 2007 23:31
Kyle, that is strange. I just tested it on your site, with the same intermittent problem. About 75% of the time it worked fine but the rest had the blank query problem. Seems similar to what Karim described above.
I am not sure what might be causing this. Can you confirm which version of Fast Search your are using? Version of MT (though I doubt it matters in this case)?
Posted by Mark Carey
|
June 1, 2007 6:21 AM
Posted on June 1, 2007 06:21
Sure. I am using Fast Search 2.07 with MT3.35. Just in case, PHP v4.44 and MySQL is 5.0.24a. Thanks for looking into it.
Posted by kyle
|
June 1, 2007 11:05 AM
Posted on June 1, 2007 11:05
I just noticed Dreamhost updated to PHP 4.4.7. I'm not sure when they did this. I wonder if it relates to when Fast Search started working intermittently.
Posted by kyle
|
June 7, 2007 12:14 PM
Posted on June 7, 2007 12:14
Suggestion: I've had some problems with malicious spammers and people trying to do DOS attacks and I've noticed a new attack technique is to run scores of searches for the same random string of letters. Might be useful if we had a way to deny multiple searches for the same string in very short intervals especially when they come from the same IP address.
Posted by raul | July 4, 2007 7:03 PM
Posted on July 4, 2007 19:03
I see it's been mentioned previously, but will it possible in future versions to search fields added through the Extra Fields plugin? I've just set up Fast Search on a new design and made that realization.
I am very happy with the ease of the plugin, but if it can't use it to search the additional fields I have, I'll have to go back to the default cgi search. :-(
Posted by kb | July 5, 2007 5:08 AM
Posted on July 5, 2007 05:08
raul, that is a good suggestion, but it might be tough to do. I will give it some thought.
kb, that one is also tough to support, because there are at least 3 different plugins that provide extra fields, and it might be cumbersome to support all three. Perhaps, add-on module could be created for each to support such searches.
Posted by Mark Carey
|
July 7, 2007 7:18 AM
Posted on July 7, 2007 07:18
MT 4.0 support?
Posted by lisa | July 20, 2007 4:55 PM
Posted on July 20, 2007 16:55
Hi.
We are installing FastSearch, and getting selective or partial results. On certain terms, all the entries are returned, but on other terms, FastSearch only displays a handful of the relevant entries, sometimes none.
Any thoughts for why this may be happening?
I've checked to make sure the search term is more than 3 letters and exactly matches the terms in the entry title or body.
Thanks,
Michele
Posted by Michele | July 24, 2007 7:25 AM
Posted on July 24, 2007 07:25
When I search for one of my tags via the normal search input box with FastSearch the entries with those tags don't show up. Am I doing something wrong or missing something. Clicking on tags to search for entries with that tag works just fine.
Posted by lisa | August 4, 2007 2:22 PM
Posted on August 4, 2007 14:22
Is it possible to use your plugin in the place of mt serach plugin for using it with tag search in a blog id
for example i will say http://www.url.com/mt-search.cgi?blog_id=1&tag="serch"
can i replace that with ur fast search plugin if yes please tell me how to use it .
Posted by ganesh | November 10, 2007 12:54 PM
Posted on November 10, 2007 12:54
hi.
how can i limit search in standard fields with fast search?
i want to search only in the "body" texts or only in the "mt extended" texts. how can i?
is it same to category or blog limit? i don't see any thing about limiting for fields !
thanks.
Posted by amir
|
February 22, 2008 1:43 PM
Posted on February 22, 2008 13:43
In lieu of running the upgrade script, can I just run the 2 sql statements:
ALTER TABLE `mt_entry` DROP INDEX `fastsearch`;
ALTER TABLE `mt_entry` ADD FULLTEXT `fastsearch` (`entry_title` , `entry_text` , `entry_text_more` , `entry_keywords` );
Is there anything else that needs to be run to install/initialize FastSearch?
Thanks.
Posted by linh | April 23, 2008 5:42 PM
Posted on April 23, 2008 17:42
Hello Mark ..
i've used the older version of fastsearch with MT3.31 and it was great.
but after upgrading to MT4.1 and the new version of fastsearch i've faced a problem ( not a very serious one though )and that is :
if the phrase that you want to search for is in UTF-8 languages ( like persian , arabic ) then in the results page you get your results but the ( your searched phrase ) will have a weird shape and won't get shown right.
you can see it in your blog for example ... search the word سیب which is the persian word for " apple " and you see the problem in new page.
i think it's got something to do with encoding and ... well you're the expert !
i did'nt have this problem before but now with both MT and fastsearch new versions i do ...
lookin forward to your answer , thanks alot !
Posted by ebliser
|
July 11, 2008 4:28 PM
Posted on July 11, 2008 16:28
can you try my fastsearch at http://www.memeticians.com. i'm not sure why search term comes up blank. any ideas?
Posted by Hank | September 3, 2008 4:28 PM
Posted on September 3, 2008 16:28
sorry to post again, http://memeticians.com but the previous link was broken due to a period. mark, feel free to delete this comment and update the last. thanks!
Posted by Hank | September 3, 2008 4:31 PM
Posted on September 3, 2008 16:31
OK, cancel my comments above, I just can't handle the requests coming in from the search bots hitting me with a new keyword every second. So i've switched to google search (sorry), but i would like to keep fastsearch with my tags. if you try out my tag cloud at http://memeticians.com , you'll see that a blank search results comes up as if the tag name variable never passes to the search query. but when you get the search results and use the fastsearch box, that works no problem. i don't get it, anyone have any suggestions?
Posted by Hank | September 5, 2008 10:25 AM
Posted on September 5, 2008 10:25
SEO(or come grinding engine optimization) is to rewrite the web page to appear higher in search results for a particular search engine. Its technology. Also known as search engine optimization. The English "Search Engine Optimization" to take initial measures which are known as the http://www.link4seo.com SEO Search engine optimization has become a target, Google often. The foreign (especially American) by the high market share in Google. In Japan, Yahoo! For many users of the search, Yahoo! Is focused search measures.
Posted by Hank | February 28, 2009 3:28 AM
Posted on February 28, 2009 03:28
hi.
how can i limit search in standard fields with fast search?
i want to search only in the "body" texts or only in the "mt extended" texts. how can i?
Posted by フランチャイズ | February 28, 2009 3:35 AM
Posted on February 28, 2009 03:35
Not sure if you're still around on this thread given the spam, but just in case... is there an easy way to display the ratings without the Ajax ability? I'm thinking I might like to be able to show the stars in the widgets or category pages, but without letting people make a rating themselves before they've read the whole thing.
国内格安航空券
多重債務
Posted by 国内格安航空券 | February 28, 2009 3:55 AM
Posted on February 28, 2009 03:55