[TYPO3-Solr] tt_news, multiple single-pids and other problems

Jigal van Hemert jigal.van.hemert at typo3.org
Sun Jun 23 08:42:59 CEST 2013


Hi,

On 22-6-2013 21:06, Joerg Sauskat wrote:
> First:
> The result-items for tt_news don't show the rich (real)url, only
> "www.mydomain.ch" and not for example
> "www.mydomain.ch/seite1/thema/detail/news/irgendwas.html"

If this happens it's usually that definition of the url in de 
index.queue configuration is somehow wrong. You have your configuration 
below, so let's take a look there.

> Second:
> If i use the facet-option "news" to show only the news entrys, i get "Es
> tut uns leid. Ihre Suchanfrage konnte nicht verarbeitet werden."

If this happens take a look at the devlog immediately afterwards. There 
is probably an error logged. You can expand the details by clicking the 
[+] in the right column. In those details it will mention the URL that 
was requested from the solr server. If you perform that action yourself 
you can see the response of the solr server. Maybe there is an error 
message and you can investigate further.

> This is my configuration:
>
> - Apache Solr for Typo3 2.8.2
> - PHP 5.3.5
> - Typo3 4.5.27
> - Apache Solr: 3.6.2 (3.6.2.2012.12.18.19.52.27)
> - schema.xml: tx_solr-2-8-0--20120925
> - solrconfig.xml: tx_solr-2-8-0--20120925
>
> I've got four news categories with each single-Pid to show the news
> depending the categories.

This is not supported in the configuration that is shipped with Solr. 
You have to adjust the configuration to use that single Pid.

> News stored in an sysfolder inside the root. The categories stored in
> another sysfolder inside the root.
>
> My constants (tt_news single-Pids):
> (...)
> plugin.tt_news.useBidirectionalRelations = 1
> plugin.tt_news.singlePid = 3078

You'll find that only this singlePid is used in the solr configuration.

> plugin.tx_solr.index.queue {
>      tt_news = 1
>      tt_news {
>          fields {
[...]
>              categoryMain_stringS = TEXT
>              categoryMain_stringS {
>                  cObject = SOLR_RELATION
>                  cObject {
>                      localField = category
>                      relationTableSortingField = sorting
>                      singleValueGlue = ,
>                  }
>
>                  split {
>                      token = ,
>                      returnKey = 0
>                  }
>              }

You've already figured out how to retrieve the main category. With the 
foreignLabelField you can retrieve the single pid field for that category.

>              url = TEXT
>              url {
>                  typolink.parameter = {$plugin.tt_news.singlePid}

Now the default single pid setting from tt_news is used. In your case 
the single pid is defined by the setting in the category. Here you'll 
have to lookup the single pid for the category and use that as value for 
the typolink.parameter property.

-- 
Jigal van Hemert
TYPO3 CMS Active Contributor

TYPO3 .... inspiring people to share!
Get involved: typo3.org


More information about the TYPO3-project-solr mailing list