I installed Wikibase which solved a lot of the problems on my MediaWiki site. Now, however, search suggest is no longer working. Results normally popped up as letters were typed into the search bar but now the only thing that pops up is a spinning wheel and nothing being found (it only shows the current typed text, italicized). Any help on getting Search working again is much appreciated! Thank you!
Topic on Talk:Wikibase/Flow
If you turn your local wiki into a Wikibase repository, the search box in the upper right will be replaced with an entity search. There is currently no way to turn this of. You can hack the code and remove the line $out->addModules( 'wikibase.ui.entitysearch' );
in the file repo/Wikibase.hooks.php just to see if it works.
I have been playing around with various things but to no avail. Removing the line you listed removes the spinning wheel that searches for "items" rather than pages. I had made a sample item once and the search box showed that one with no problem. I have been playing with different variables in LocalSettings.php, such as $wgUseAjax, $wgEnableOpenSearchSuggest, $wgVectorUseSimpleSearch and $wgEnableMWSuggest and can get them to show, but only once (if you use them they don't appear at all after that) but they appear in a results list which appear atop the "other" results list. Going to the search page itself which bring up suggested results with no problem. Any ideas?
I don't understand what you want to do. I assume you want the top-right search box to suggest both items (by their label) as well as page names in other namespaces. Such a feature does not exist.
That is indeed what I want. The search box on the Special:Search page does indeed search for suggested results when letters are typed (but doesn't search for entities). Is there a way to swap the primary search box (which got replaced with entity search) with the one used on the Special:Search page? Search suggest works there! Or is there any extension I can get? I know MediaWiki and Wikipedia both use CirrusSearch but I cannot complete installation because my current hosting plan doesn't offer Java and apparently you need Java to get Elasticsearch to work. Is there a workaround or possibly another extension, or can I just change the primary box with the one on Special:Search? Thanks again!
Is there perhaps something I can edit in the file /extensions/Wikibase/repo/resources/wikibase.ui.entitysearch.js? I've found two lines: Updates the suggestion list special item that triggers a full-text search. and Removes the native search box suggestion list. Can I edit anything on the page to change it back? I feel like I'm so close! Thanks!
I put it back but removing the lines
function removeSuggestionContext( input ) { var context = $.data( input, 'suggestionsContext' ); if ( context ) { // Native fetch() updates/re-sets the data attribute with the suggestion context. context.config.fetch = function() {}; $.removeData( input, 'suggestionsContext' ); } }
does indeed add search suggestion capabilities back the box. However, the "other" search list still appears under this one. I can try removing the lines below the aforementioned section of code, which look like they would add the spinner and entity search features. I really do hope there's a way! Suggested search is so, so nice.
Okay, so I removed the above, and all lines below it, up to // Default form submit action: Imitate full-text search. I went ahead and ran $php maintenance/update.php and everything seems to be working great again. I haven't ran into any inherent problems, and that "other" search box doesn't appear anymore. Only search suggestions, same as it always has. I hope there won't be any problems caused by doing that. Granted I won't be able to search for "items" anymore, but it's okay, I don't have any anyway. I merely added the feature for "future expansion". If you know of any possible problems that will come from having eliminated that code, please let me know!!
The first time, I setup the client only. After reading some of the comments here, I setup both the repository and the client. In both cases, as soon as I enable Wikibase in Localsettings.php, the search function breaks. Normally, the search will return matches almost as soon as you start typing. Once Wikibase is enabled, I get the dreaded circling lines while typing. When I stop typing, I get a message "No match was found". Nothing every appears in the search box. If I click on the magnifying glass, I get results below. This behavior is repeatable.
My setup: FreeBSD 10.3, PHP 7.1.10, MediaWiki 1.29.1
I feel like I'm missing a step, but I've read and reread the docs.
@Bttfvgo, are you saying removing that function fixes the problem? It doesn't sound like it.
Sorry for the late reply. Removing those lines did indeed make it so that I could use regular search again. I've since reupdated so I'll have to do something different. Right now it searches for items only (search for any aliases listed for the item). If you go to Special:Search, however, the native search features still work great. I want native search. I want people to start to type and a long list of results pop up. When you only have a few items it defeats the purpose. I know Commons (which have their own Wikibase) have phenomenal search features that do indeed seem to incorporate everything. And that's what I want!
But at the time, Txantimedia, removing those lines removed the entity search feature of Wikibase, thus forcing the site to once again rely fully on its good ol' suggested search search box. There should be a way to have regular search at the top and item search at the bottom.
Just tried it and can confirm removing that code still removes entity search and re-enables native search. I would really like to use entity search but I only have a few items thus far. Therefore, I'd really like to be able to just use regular search. One day when I create an item for each page and can properly link my pages from each data item (it only lets me like to Wikipedia) I might re-enable entity search - I do like Commons and how they add pictures to the search! I want to be able to do all that also!
A request to simply disable Wikibase search box customizations was added to Phabricator.
I see that the option to disable the entitySearchUI has now been added. But how exactly do I implement this switch? Do I have to set it to false in extensions/Wikibase/repo/config/Wikibase.default.php ? Or is there a way of setting it to false from the LocalSettings.php? I have currently set it to false in the Wikibase.default.php and this is working well, is this the way I should be doing it?
You should set something like this in your LocalSettings.php
, after loading Wikibase:
$wgWBRepoSettings['enableEntitySearchUI'] = false;