Searching content in custom module of Orchard CMS doesn't work - orchardcms

I wrote my own module for Orchard CMS. Module have some widgets, for example,one of widgets is a news widget. In Admin menu(Content->Content Type) I checked Index this content type for search, but when I try to search anything in my widget, nothing found. For searching I use standart widget, which part of Orchard CMS. I know that Orchard use Lucene.net, and there are my questions:
How Lucene.net index content of all pages ?
What I need to implement in my module(widgets) for searching ?

A widget is not routable, so it can't appear in search results.

Related

How to create Layout Based on Layer in Orchard

I am trying to create a different layout for a sub-section of my website using Orchard.
Let's say I wanted to give www.site.com/Shop a different layout from the rest of the website; how would I go about doing this?
I have tried looking for a way to do this using layers but have got stuck.
There are several ways to achieve different layout, since I don't know your specific needs I'll throw in some extra possible routes
Use url shape alternate (I guess you need this one)
You have to enable Url Alternates module and it lets you create shape alternates based on url. For example if your page is www.site.com/shop you can then create view under your theme Layout-url-Shop.cshtml and it will be used instead of default Layout.cshtml on your shop.
Orchard documentantion: URL and Widget Alternates
Use 1.x or wait for 1.9
There you can define dynamically different layout per content item aka page. But I find it good only for content not the base layout which is present in layout.cshtml
Create minisite
How to create a minisite inside your Orchard website

Orchard CMS 100% unthemed html page

We have a requirement to use the content zone of Orchard CMS to enter in html for a full screen landing page. We managed to get an unthemed page type using the Downplay.Orchard.Layout selector. The problem is that in using the content zone orchard automatically wraps html, head and body tags around it. We want to remove this content so we essentially have a blank page to start off with and then we can create our own html to display on the landing page. Is this possible to do for a single page and if so what would be the best way to do this?
You can have a URL alternate or you can use the new Disable Template part (1.8, i think)
I have done lots of URL alternates in the past. Pretty easy.
Just remembered, a question like this: Using Alternatives for Document.cshtml in Orchard CMS
removing the Wrapper (Document.cshtml) from your (Layout-url-...) and adding a new one, should do the trick.
And it might be better to use the placement.info, but thats my opinion...
Suppressing Wrappers and Placement.info

Orchard CMS - injecting css classes into navigation / editing navigation HTML

I have a site laid out in HTML/CSS - based on Twitter Bootstrap.
I have created a new template in a new orchard instance.
I have a navigation that requires some classes from bootstrap applied to the .
The Orchard Layout uses this for navigation:
#Display(Model.Navigation)
How can I edit the HTML it outputs - and / or add some classes to the ul that's rendered in the navigation by Orchard?
Thanks.
That line in Layout.cshtml is showing the navigation zone, which is one of the widget zones.
In a standard Orchard setup a Menu Widget gets placed in that zone. You can check on the Widgets page in the admin. This doesn't directly show the menu widget though. This is done by another template.
In most cases the easiest way to find out which templates are being used is to use the Shape Tracing tool, which is part of the Orchard Designer Tools. There's an intro to Shape Tracing in the Orchard Documentation.
There are several layers of menu templates and it is a bit tricky to find these in the shape tracing tool.
The templates relevant to menus that you may need to include in your theme are:
MenuItemLink.cshtml
MenuItemLink-ContentMenuItem.cshtml
MenuItem.cshtml
If you can't find them in the shape tracing tool, then do a file search in your solution and copy these files to your theme.
One option could be to use Vandelay.Classy module and add classes to your content item http://orchardproject.net/gallery/List/Modules/Orchard.Module.Vandelay.Industries
Other could be to create a alternate template for Navigation Shape. you can designer tools to create alternate.
http://orchardproject.net/gallery/List/Modules/Orchard.Module.Vandelay.Industries

How to Group Sub Pages in Orchard CMS

I'm wondering if there's a way in Orchard or a plugin/module that anybody knows of that will let you create subpages in Orchard such that when I go to content -> pages I'm not looking at a huge list of pages; I want to see a list of main pages with their sub pages grouped under them?
Is this possible?
On a related note...when you're working with a navigation widget (that uses a menu) I want to highlight the main item as a current nav item when I'm on a "subpage".
For example, my Company page has a separate leadership page that I would want to highlight the company nav bar item (since leadership is a subpage) when you're on it.
Any recommendations would be very helpful. Thanks!
There are many ways you could achieve this in Orchard:
You could use blogs and blog posts:
Blogs are parent pages
Blog Posts are child pages
Blog posts can have URL that consists of blog's URL which you can use to create your menu.
You could also use Orchard.Lists module which enables you to add Containable and Container parts to get the functionality similar to blogs, but for other content types. You can check the tutorial on how to do it here
You could use Orchard.Taxonomies module to create a hierarchy of pages and use taxonomies for your menu
Lastly, you can do this manually by using ordinary pages and giving them hierarchically named slugs (for example parent page could have URL /parent and child page could have slug /parent/child). You could then manually create a menu that is hierarchical and consists of pages you created and use slugs to highlight your parent pages in menus..

Orchard breadcrumbs not working with Taxonomies

I'm using Orchard 1.6 and I'm trying to get my breadcrumb widget working for all pages and taxonomies.
For the pages, when a page is selected, the breadcrumbs work as expected:
Home > My Page > My Sub Page
However, as part of this menu (the main menu, as set up by the 'Default' Orchard recipe), I have added some Taxonomy terms (by adding the 'Menu' part to my taxonomy term content type).
When I view the term page (front end), the breadcrumbs don't render as breadcrumbs, but the full menu instead.
What I would like to know is: How do I make the breadcrumbs recognise the taxonomies and render correctly?
Is there a part I need to add to a specific content type?
For now I need to use the dirty, dirty work-around of using a HTML widget; naturally I would prefer an actual solution.
Thanks in advance!

Resources