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. Like the built-in search, Fast Search logs searches to the Movable Type Activity log.
New Features in Version 1.5
Fast Search v1.5 has several new features:
- Search Method Options. Three methods are available which control how the searches are conducted. Most users will use the default "Fulltext" option, but some installations will beneft from the two new options. More details below.
- Multi-Byte Language Support. Fast Search can now search entries with languages in multi-byte languages, such as Arabic and Japanese, using the "Non-Fulltext" search method.
- Total Number of Results Found. A new tag for displaying the total number of results in the database, so you can display "showing 1 - 10 of 256 results".
- Search Page Links. Display linked page numbers to link directly to multiple pages of search results.
- Previous Page Link. Links to the previous page of search results.
- Short Words Searching. Using the "Non-Fulltext" or "Fallback" search methods, you can now search for words under 4 characters in length.
- Match Partial Words. Search for partial words using the "Non-Fulltext" or "Fallback" methods, you can now search for partial words.
- "Mixed" Multi-blog Searching. You can now search multiple blogs in the same search. The results are "mixed" together, in one list of search results, not grouped by blog.
What Search Method is Best?
For most cases, "Fulltext" will be the fastest search method. This is the same method used in version 1.0. There are some cases in which you might two options:
- Non-Fulltext. Technically speaking this method used a LIKE %query% syntax. If you don't know what that means, don't worry about, just read on.
- Fallback. The Fallback method is a combination method. FastSearch will first try a fulltext search, and if that returns no results, then it will try a Non-Fulltext search.
Non-Fulltext and Fallback are capable of some types of searches that you can't do with mySQL. You might want to use Non-Fulltext or Fallback to:
- search multi-byte languages such as Arabic and Japanese.
- search words shorter than 3 characters (such as "MTV")
- search partial words
- search a mySQL database that does not support Fulltext searching
Template Tags
Version 1.5 of FastSearch is designed to easily replace the existing search functionality in Movable Type, but with added features. 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.
- blogs - a comma-separated list of blog_ids if you want to search more than one blog. This argument is optional, if excluded, only the current blog will be searched. Example usage: <MTSearchResults blogs="1,3,8">
- <MTBlogResultHeader> - this is container tag that displays content before the search results.
- <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 on the current search results page. 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.
- new - <MTSearchIfPrevioustPage> - A conditional tag that displays its content if there is a previous page of search results. This tag should be used with a <MTBlogResultHeader> or <MTBlogResultFooter>container.
- new - <MTSearchPreviousPageLink> - Output a URL to the previous page of search results. This tag should be used within <MTSearchIfNextPage> tags.
- new - <MTSearchTotalResults> - The total number of matching results in the database.
- new - <MTSearchPages> - A container tag that can display links to multiple pages of search results. Optional arguments include:
- max - the maximum number of page links to display on each page. Example: <MTSearchPages max="20">
- glue - a text string that seperates each page. For example, if you wanted to display 1 - 2 - 3 - 4, you could use <MTSearchPages glue=" - ">
- new - <MTSearchPageNumber> - Displays the page number of each search results page. This must be used within a <MTSearchPages> container.
- new - <MTSearchPageLink> - Displays the URL to each search results page. This must be used within a <MTSearchPages> container.
- new - <MTSearchIfCurrentPage> - A conditional tag that only displays its contents if the page number is the same as the current page - you would normally use this is you wanted to highlight the current page in the list of page numbers, etc. This must be used within a <MTSearchPages> container.
Note: the new default Fast Search template includes pre-formatted template code that displays Google-style search results page links.
As you may have noticed, some 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
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)
Upgrading from Fast Search v1.0
Follow steps 1 to 3 above, then adjust your Fast Search plugin settings and search template, if desired.
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.
Fast Search Settings
Fast Search settings are on a "per blog" basis. To access the settings, browse to the blog you want to use, then choose "Settings", then "Plugins". Look for Fast Search in the list and click the "Show Settings" button.
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
Membership required, please sign-in or register:
As always, suggestions and feedback are appreciated. Please reply to this entry.
Note: FastSearch v1.5 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.5 does not include. Fast Search v1.0 does not support comment searches, regexp search, case-senstive search, the use of AND and OR operators, and Edit Entry Links). Also, Fast Search v1.5 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.

Comments (91)
Good work as always. One question I have, and I've ran into this in other plugins before, but do you know of a way I can check on what type of "order" has been used in the search? Basically, I'm trying to create two radio buttons that allow you to order search by date or relevance, and tried to put in this code to determine what (if any) ordering was done:
<input type="radio" name="order" <? if $_POST['order'] != "date" echo 'checked';?> value="relevance"> Sort By Relevance<br>
<input type="radio" name="order" <? if $_POST['order'] == "date" echo 'checked';?> value="date"> Sort By Date<br>
The php doesn't get executed. Am I doing something wrong? I've tried to execute PHP within MT's dynamic pages before (particularly, the 404 page: http://forums.sixapart.com/index.php?showtopic=59281 ) and had no luck, so this is probably nothing within your control, but I'd figured I'd throw it out there.
Meanwhile, I did make sure I kept the Fast Search credit on my results -- with a bit of editing:
http://utterlyboring.com/fastsearch?query=jake
;-)
Have a good one!
Ot
Posted by Jake
|
October 9, 2006 2:30 PM
Posted on October 9, 2006 14:30
OK, obviously I can't copy/paste code into this field, so you'll have to look for the commented-out source code in my fast search results page above (it's listed there).
Posted by Jake
|
October 9, 2006 2:44 PM
Posted on October 9, 2006 14:44
Hi Jake,
I edited you first comment so the code now displays properly.
You need to start your php with <?php instead of just <? - then it should execute.
Ps. I like the credit link, thanks, ;)
Posted by Mark Carey
|
October 9, 2006 3:58 PM
Posted on October 9, 2006 15:58
Ah....didn't know I had to long-hand my code in there. That would explain it.
Here's the final code I ended up getting to work (and hopefully I converted all the tags properly):
<input type="radio" name="order" <?php if (isset($_REQUEST['order']) && $_REQUEST['order'] == 'relevance') {echo 'checked';}?> value="relevance"> Sort By Relevance<br>
<input type="radio" name="order" >?php if (isset($_REQUEST['order']) && $_REQUEST['order'] == 'date') {echo 'checked';}?> value="date"> Sort By Date<br>
Hopefully that will be of use to somebody. I also did something similar so that it reads "Search Results for: [search term], sorted by [sort-type]"
THanks again!
Posted by Jake
|
October 9, 2006 5:36 PM
Posted on October 9, 2006 17:36
Jake, glad you got it to work.
The key thing to note is that order=date means a date sort and when order is blank/null, the sort is by relevance.
Posted by Mark Carey
|
October 9, 2006 7:14 PM
Posted on October 9, 2006 19:14
Which is the reason I checked to see if it's set, or at least that was my thinking. Probably cleaner way to do that, but PHP whiz I am not.
Posted by Jake
|
October 10, 2006 1:22 AM
Posted on October 10, 2006 01:22
I've upgraded to version 1.5, and one installation works. The other, however, is giving me this error on the fastsearch page:
"Page Not Found
Smarty error: [in mt:364 line 8]: syntax error: unrecognized tag 'MTSearchString' (Smarty_Compiler.class.php, line 580)"
I've already turned the EntryExcerpt tag to "convert_breaks=1" to compensate for the fact that the blog might have Markdown/Smartypants formatted posts, but that doesn't seem to have helped.
Posted by James Bow
|
October 12, 2006 8:47 AM
Posted on October 12, 2006 08:47
James, I would need some more details to help. Ideally, if you could send me a link to the installation (Fast Search form), that would help.
The error suggests a problem with the MTSearchString tag. The obvious thing to check first is that the function.MTSearchString.php file in present in mt/php/plugins. Assuming you have done that, I would need to know more deatils about the install with the error (MT version, mySQL version, difference in templates, Fast Search options, etc.)
Posted by Mark Carey
|
October 12, 2006 10:20 AM
Posted on October 12, 2006 10:20
Bingo.
Mark, the problem is obviously with my FTP system, which failed to upload the entire php/plugins directory. Making sure all of the files were there corrected the problem. Many thanks!
Posted by James Bow
|
October 12, 2006 2:07 PM
Posted on October 12, 2006 14:07
I have encountered a different issue. On the new installation, I'm getting search results, but no permalinks. Instead, the links to the individual articles are blank, so clicking on the links just returns you to the query page. Do you need more details?
I must say, though, that this is a remarkable plugin, much better than MT's standard search engine. I hope it gets included as the default when the next version comes out.
Posted by James Bow
|
October 12, 2006 3:10 PM
Posted on October 12, 2006 15:10
Okay, how's this for odd behaviour. The problem I identified above isn't consistent. It's only older posts that get this treatment. Newer posts (up to 2 years old on a blog that has over 5000 posts) are fine. Weird, huh?
Posted by James Bow
|
October 12, 2006 3:20 PM
Posted on October 12, 2006 15:20
hello Mark,
Wonderful plugin!
I have a couple of questions for you:
1) is it possible to display the entry author with this new version? with the previous one the author tag was simply ignored.
2) can i set the search to look for "internet AND marketing" rather that "internet OR marketing"? if i search for "internet" or "internet marketing" i get the same number of results.
many thanks
Posted by Mihai Bocsaru
|
October 12, 2006 6:11 PM
Posted on October 12, 2006 18:11
James, I have seen this problem before.
Are you sure you have followed steps 7 and 8 (above) exactly? Specifically, I am referring to the "rebuild all files" part.
Posted by Mark Carey
|
October 13, 2006 8:09 AM
Posted on October 13, 2006 08:09
Running on a Windows Server, which does not read .htaccess.
hence fastsearch will not work, and will lead to an error (file not found).
Can FastSearch work without .htaccess file?
Posted by Johnny
|
October 13, 2006 6:27 PM
Posted on October 13, 2006 18:27
Thanks for the great plugin.
I just noticed one problem... in Activity Log, all the date were listed as "Less than 1 minute ago". Is this a bug?
Posted by Antony Shen
|
October 14, 2006 12:42 PM
Posted on October 14, 2006 12:42
Antony, what version of MT are you using? Do you mean that even hours after a search, it still shows in the log as "less than 1 minute ago"? What happens if you change the "display format" for the the log to absolute dates. What dates shows for each search?
Posted by Mark Carey
|
October 15, 2006 2:19 PM
Posted on October 15, 2006 14:19
Hello Mark - this looks like a great plugin, something seriously needed for MT, especially with multiblog search functionality.
I followed your instructions carefully, but keep on getting a "500 Internal Server Error" error. A couple of questions for my multiblog installation:
1. Do I need to change settings, run the plugin, and fastsearch template on every blog?
2. Do I need to tweak the "mt-config.cgi" file in any way (i.e. default or alternative templates, etc.)?
3. Would running a "fulltext index" multiple times (due to upgrade from v1.0) have any negative effect?
4. You say "if you have an existing .htaccess file, you may want to take a look at it to make sure everything looks okay"...what would I be looking for exactly?
5. Also you mention "a comma-separated list of blog_ids" but list an example () that uses different terminology...is the example correct?
Sorry for all the questions, and thanks for your kind reply.
Posted by robbo
|
October 15, 2006 4:37 PM
Posted on October 15, 2006 16:37
robbo,
Here are the answers:
1. yes, the settings are on a per-blog basis, so you need to do the setting and template part for each blog.
2. no
3. no, I don't think so.
4. well, it varies. I know that answer doesn't help much. The main thing to look for are pre-existing lines that include "rewrite" in any way. Sometimes things can conflict, and you have change the order of things. .htaccess problems may result in 500 errors.
5. I not sure what you mean here. The example was <MTSearchResults blogs="1,3,8">. This example is correct and represents a comma-separatd list of blog ids. The argument name is "blogs", not "blog_ids", if this if what you are driving at.
With respect to the 500 error, does it happen when you go directly to www.blogurl.com/fastsearch (without running a search)? If so, it may be a problem with the .htaccess file. Sometimes your web server error log provides some hints in these cases.
Posted by Mark Carey
|
October 15, 2006 8:07 PM
Posted on October 15, 2006 20:07
Johnny, MT's dynamic publishing model does work with MT, so Fast Search should as well. Instead of using .htaccess, on Windows it uses custom error documents. Basically, this means that a custom 404 error document would redirect to the mtview.php script, which would then serve the dynamic page (Fast Search or other dynamic template). I have not installed MT on Windows myself, but there is some additional detail http://www.sixapart.com/movabletype/docs/3.2/06_publishing/here.
Posted by Mark Carey
|
October 15, 2006 8:13 PM
Posted on October 15, 2006 20:13
Hello Mark - thank you for your quick reply to my questions.
I am having my MT host check my .htaccess file and web server logs in detail.
My www.blogurl.com/fastsearch result: on some blogs, the fastsearch template shows, but with no results. On other blogs I get 500 errors.
For each blog I have added the fastsearch template, set settings, enabled the plugin, and rebuilt the index but same problem exists.
Can Fast Search work from a blog that has no entries (i.e. aggregated from entries of all other blogs)?
When either my MT host or I figure out the problem, I'll let you know! Cheers -
Posted by robbo
|
October 16, 2006 2:54 PM
Posted on October 16, 2006 14:54
robbo, seems liek it might be an .htaccess problem in the case where you get 500 errors. However, in the case where the Fast Search template does display, it means the .htacess is working on those. If those blogs are still showing zero results, there is a problem of some other kind. Can you provide a URL to one of those blogs?
And yes, you can install Fast Search on a blog with no entries. Of course, you will have uses the "blogs" argument and thus specify the blogs you want to search (as previously disucussed).
Posted by Mark Carey
|
October 16, 2006 3:23 PM
Posted on October 16, 2006 15:23
Hi Mark - According to my MT host, 500 errors are being caused from too many redirects, which is coming from my .htaccess file. It seems to be a problem with my rewrite rules.
"mod_rewrite: maximum number of internal redirects reached. Assuming configuration error. Use 'RewriteOptions MaxRedirects' to increase the limit if neccessary."
Do you know what exact code I need to place into the .htaccess file? I'm just not technical enough to know this. If you like, I can send you the URL to my beta site offline. Thanks again!
Posted by robbo
|
October 17, 2006 1:18 AM
Posted on October 17, 2006 01:18
Hi Mark - thanks for your continued support.
My MT host says the error is caused from too many redirects, which is coming from my htaccess file. There seems to be a problem with my rewrite rules:
mod_rewrite: maximum number of internal redirects reached.
Assuming configuration error. Use 'RewriteOptions MaxRedirects' to increase the limit if neccessary.
As I am not technical, do you know what I need to exactly do within the .htaccess file?
As for the URL to my beta site, I can provide this offline if you wish. Cheers -
Posted by robbo
|
October 17, 2006 1:52 AM
Posted on October 17, 2006 01:52
Mark - apologies for the double post. Timed out on me, and didn't show up initially. Anyway, I've finally got the baby to rock n' roll! Here is what the problem was:
In my .htaccess file, there was a line of code:
"RewriteRule ^(.*)$ /sales/mtview.php [L,QSA]"
Which when changed to:
"RewriteRule ^(.*)$ /mtview.php [L,QSA]"
fixed the 500 errors. For some strange reason, one blog's title named "sales" was within the rewrite rule. Thanks for your patience, and hopefully this is the last you hear of me! Early indications are that this plugin will win top honours!
Posted by robbo
|
October 17, 2006 4:21 AM
Posted on October 17, 2006 04:21
Mark,
What version of MT are you using?
MT 3.33
Do you mean that even hours after a search, it still shows in the log as "less than 1 minute ago"?
Yes.
What happens if you change the "display format" for the the log to absolute dates. What dates shows for each search?
It shows the current time when I request that log. When I view the log again, all the entries in the log will be having a new time (all the same time).
Posted by Antony Shen
|
October 17, 2006 1:23 PM
Posted on October 17, 2006 13:23
Antony, thanks for your help. Yes, it is a bug. It is now fixed in version 1.52. Download here.
Posted by Mark Carey
|
October 18, 2006 11:56 AM
Posted on October 18, 2006 11:56
Thanks Mark,
However, I still experience the same problem after uploading all the files (v 1.52) to the server. Do I need to make any changes besides overwriting files?
Posted by Antony Shen
|
October 20, 2006 9:40 AM
Posted on October 20, 2006 09:40
Antony, the new version fixes the date issue only for new searches, not the old ones in the log. In other words, only searches made after the upgrade to v1.52 will shows the correct date.
Posted by Mark Carey
|
October 20, 2006 2:48 PM
Posted on October 20, 2006 14:48
Hi Mark,
I'm having the same problem as James Bow mentions above. The search results are displaying fine but the links are blank, i.e., they point to the search page "fastsearch?search=...". I tried rebuilding all files as you suggested but that did not solve the problem.
Any ideas? Thanks for the awesome plugin!
Posted by Jason Truell
|
October 22, 2006 3:47 AM
Posted on October 22, 2006 03:47
Jason, can you provide a link to your search results pages? Also, are you using the default Fast Search template, or a customized one? Is the Dynamic Publishing setting for the blog in question set to "Set each template's Build Options separately"? Are you doing multi-blog search?
Posted by Mark Carey
|
October 22, 2006 4:16 PM
Posted on October 22, 2006 16:16
Mark, Sure, here is the link to a sample search results page: http://www.globalchinacenter.org/fastsearch?search=china
A have customed the search results template. I'm tring to create a site-wide multiblog search. Each blogs publishing settings are set to build seperately. I went into the fastsearch plugin setting for each blog and enabled fastsearch and built the index. I am pointing the site-wide search to the same search template so each blog doesn't have its own template. However, I tried giving each blog its own template but that didn't solve the problem. Thanks again for the help!
Posted by Jason Truell
|
October 23, 2006 5:29 AM
Posted on October 23, 2006 05:29
Jason, have you "rebuilt all files" for every blog being searched? In addition to the dynamic setting, you also must rebuild all files for every blog being searched.
Posted by Mark Carey
|
October 23, 2006 6:27 AM
Posted on October 23, 2006 06:27
Mark, I have rebuilt at least several times (and just did it again). I'm out of ideas.
Posted by Jason Truell
|
October 23, 2006 8:53 AM
Posted on October 23, 2006 08:53
Thanks, Jason, but you didn't answer my specific question: did you rebuild all files for every blog that is being searched in the multi-blog search?
Other than that, I am not sure why you would have this problem. Have you tried a non-multi-blog search, does that work? What version of MT are you using? Are you using the MTEntryLink or MTEntryPermaLink tag?
Posted by Mark Carey
|
October 23, 2006 11:10 AM
Posted on October 23, 2006 11:10
Hi, thanks for the wonderful plugin!
One question though: Is there any way to pass the "blogs" parameter through the query parameter? I've tried it and it doesn't work. And it seems I can't include a variable I pass through to the template to determine the value of the "blogs" parameter in the tag. I am not too familiar with MT's way of handling and parsing tags, especially with respect to dynamic publishing.
I would like to offer a check box specifying if only the current blogs should be searched or if all blogs should be searched.
Of course I could swap the form when the box is ticked and use a different template for either the single blog or all blog search, but I'd prefer to keep this as simple as possible.
Thanks!
Posted by Tobias
|
October 29, 2006 3:27 PM
Posted on October 29, 2006 15:27
Tobias, thanks for pointing this out. This was an oversight on my part. I have just released version 1.53 which has this feature. Download here.
Posted by Mark Carey
|
October 30, 2006 10:15 AM
Posted on October 30, 2006 10:15
Thanks for the update Mark. And thanks again for the very impressive plugin.
I'm currently in the process of integrating a site with multiple blogs and, realizing how difficult that is in the static world of MT despite such efforts as multiblog, I was wondering if your script could not turn out to be the basis for the wonderful world of dynamic display and recombination of MT contents - something even the dynamic "context changing code" I found on movalog doesn't allow (or it does, but I don't know how). You already have category options and blog options, so I'm thinking that adding a date, and a tag parameter would essentially allow to create dynamic archives/combined display through links and simple php includes. I for one would truly appreciate this. Am I making the least bit of sense here? I don't know. Just thought I share my thoughts on this.
Thanks again for the plugin, and the link!
Tobias
Posted by Tobias
|
November 4, 2006 8:10 PM
Posted on November 4, 2006 20:10
You are correct, Tobias. A dynamic search methodology like this can be used creatively to display (paginiated!) category archives and more. And with some expansion, it could be extended to do the same for tags, authors, etc. In reality, multi-blog stuff shouldn't be so hard, because are entries are in the same table, all comments, in the same table etc.
I definitely have tag search and comment search planned, and per author searching is easy to add. These would be "advanced search" parameters, but one could certainly use them in the way you describe.
However, like all MT PHP-dynamic pages, you are limited to the plugins that you can use on these pages, because most plugins only support static (Perl) MT pages and not dynamic (PHP) ones.
Posted by Mark Carey
|
November 5, 2006 7:32 AM
Posted on November 5, 2006 07:32
This plugin doesn't seem to support the new "tag" features in 3.33 and the mt-search.cgi script. I'd like to move away from mt-search.cgi altogether, can you add support for the new tag search as related to keywords/tags in version 3.33?
Posted by joel
|
November 9, 2006 1:22 PM
Posted on November 9, 2006 13:22
Joel, you are correct. As stated above in the description, this plugin does not currently support tag search. It is possible that I may add this feature in the future, if there is enough interest. So far, you are the first to request this.
Posted by Mark Carey
|
November 9, 2006 2:14 PM
Posted on November 9, 2006 14:14
Having some problems - hoping someone can direct me.
I had 1.0 installed on MT v3.2. I went to a dedicated server installed MT v3.3 and copied all my plugins and uploaded them.
Fast Search wouldn't work - so I came here and got FS v1.53. I loaded it, unloaded but can't get it to work. I never get the "installer" with v3.3 as outlined above. I did rebuild the the blog after each time I uninstalled.
Any suggestions are appreciated. One you have Fast search you can't live with MT's version.
I hope I can get it working again.
Thanks
jw
Posted by jim
|
November 12, 2006 12:52 AM
Posted on November 12, 2006 00:52
jim,
Assuming you are using full text search, the first thing I would try is to go to the Fast Search settings for the blog in question and click the "Click here to create or rebuild the FastSearch fulltext index". Given you description, I think this may get things working.
If not, I would need more info. What fast search settings are you using? Is your search result template customized? Are you getting a specific error message, or just "no results" for all queries? What version of mySQL? etc.
Posted by Mark Carey
|
November 12, 2006 9:01 AM
Posted on November 12, 2006 09:01
Thanks for the input Mark:
Here's where I'm at.
Deleted everything, re-downloaded v1.53 and confirmed installation (rebuilt fulltext). Used default FS template. Tried using Fallback, rebuilt entire site after each change.
Now, all settings are back to default, error message continues (500 Internal).
I double checked .htaccess to make sure MT's standard stuff was in there.
SERVER: Apache/2.0.52
PERL: 5.6.1
mySQL; 2.0419
Perl and mySQL are same as the old shared server.
Posted by jim
|
November 12, 2006 2:21 PM
Posted on November 12, 2006 14:21
In a test blog here:
http://thefuntimesguide.com/test/index.php
I am able to get a blank screen, no error messages.
Posted by Jim
|
November 12, 2006 4:36 PM
Posted on November 12, 2006 16:36
jim, thanks for the details. That is a very old version of mySQL. Are you sure the old server had the same version? Fast Search v1.0 does not work with version older than 3.23 (that is the version when fulltext indexing was first available with mysql). Since you mentioned that 1.0 worked for you on the old server, it seems like you had a newer version of mySQL. With 2.0419, only the "Non-fulltext" mode should work.
That said, the blank page does not necessary indicate a mySQL related error. Do other MT "dynamic" templates work? To test, set the main index of the test blog to build dynamically and see if it displays properly. If it doesn't work, it suggests a problem getting MT dynamic publishing to work. Try this and let me know if it works.
Other than that, you your web server logs (access and/or error) contain any error messages when the fastsearch pages try to load?
Posted by Mark Carey
|
November 12, 2006 5:33 PM
Posted on November 12, 2006 17:33
Sorry, new server is 2.9004 (old server worked fine with FS1.0 and mySQL 2.0419) - I must have looked wrong. Still not 3.23 - So, first thing to do is Rackspace to upgrade. I am building everything static except Fast Search.
Testing now - back soon. Thanks - I think I tipped you on the old version - but my wife just came in to remind me to make sure I remember for 1.53 -
Thanks
Posted by Jim
|
November 12, 2006 5:41 PM
Posted on November 12, 2006 17:41