mod_search - Ausgabe des Rubriktitels statt des Rubriknamens

Diskussion zu nicht so umfangreichen Modulen und Start-Up für neue Module. Ansonsten bitte die speziellen Kategorien benutzen!
Antworten
Benutzeravatar
Mr. Magpie
ConPresso-Profi
Beiträge: 1004
Registriert: 01.01.1970 01:00
Wohnort: Wuppertal
Hat sich bedankt: 274 Mal
Danksagung erhalten: 59 Mal

mod_search - Ausgabe des Rubriktitels statt des Rubriknamens

Beitrag von Mr. Magpie »

Ist es möglich - wenn ja, wie? - mod_search so anzupassen, dass in der Suchergebnisliste der Frontendsuche der Platzhalter <-- SEARCH_RUBRIC --> nicht den Rubriknamen ausgibt, sondern den Rubriktitel?
Ich denke, dass es nicht nur bei uns so gehandelt wird, dass der Rubrikname nur eine Kurzbezeichnung ist und nur in der URL verwendelt wird, bspw. "faq", während der Rubriktitel eine längere Beschreibung sein kann, hier bspw. "Die häufigsten Fragen (und Antworten)".
Benutzeravatar
Matthias V
Modul-Entwickler
Beiträge: 1251
Registriert: 01.01.1970 01:00
Wohnort: Sondershausen
Hat sich bedankt: 54 Mal
Danksagung erhalten: 147 Mal
Kontaktdaten:

Beitrag von Matthias V »

Hallo,

suche mal in mod_search/includes/parser.inc.php nach

Code: Alles auswählen

$rubrics[$v['rubric_id']]['name'], // 7
und ersetze es testweise durch

Code: Alles auswählen

$rubrics[$v['rubric_id']]['settings']['title'], // 7
Ist nicht getestet, sollte aber funktionieren.
Du kannst ja mal schreiben, ob es so funktioniert.

Gruß Matthias V
mod_Guestbook 4.1.0

Features:
- Einträge als ConPresso-Artikel
- benutzt Templates, Rubriken, ...
- Captcha
- BB-Code + Smilies + Zitieren
- Badwords
- Anonymisierung
Benutzeravatar
Mr. Magpie
ConPresso-Profi
Beiträge: 1004
Registriert: 01.01.1970 01:00
Wohnort: Wuppertal
Hat sich bedankt: 274 Mal
Danksagung erhalten: 59 Mal

Beitrag von Mr. Magpie »

Danke, dass du dich darum kümmerst. Leider hat das nicht geklappt, ich bekomme anstelle des Rubriknamens bzw. -titels bei jeder aufgelisteten Fundstelle ein "a" angezeigt!
Benutzeravatar
Matthias V
Modul-Entwickler
Beiträge: 1251
Registriert: 01.01.1970 01:00
Wohnort: Sondershausen
Hat sich bedankt: 54 Mal
Danksagung erhalten: 147 Mal
Kontaktdaten:

Beitrag von Matthias V »

Gut, dann kannst du es durch:

Code: Alles auswählen

$rubric_settings['title'], //$rubrics[$v['rubric_id']]['name'], // 7
ersetzen, das funktioniert so.
Ich habe es getestet.

Gruß Matthias V
mod_Guestbook 4.1.0

Features:
- Einträge als ConPresso-Artikel
- benutzt Templates, Rubriken, ...
- Captcha
- BB-Code + Smilies + Zitieren
- Badwords
- Anonymisierung
Benutzeravatar
Mr. Magpie
ConPresso-Profi
Beiträge: 1004
Registriert: 01.01.1970 01:00
Wohnort: Wuppertal
Hat sich bedankt: 274 Mal
Danksagung erhalten: 59 Mal

Beitrag von Mr. Magpie »

:D :D :D Spitzenmäßig!! Superschneller Support! :D :D :D
Benutzeravatar
Mr. Magpie
ConPresso-Profi
Beiträge: 1004
Registriert: 01.01.1970 01:00
Wohnort: Wuppertal
Hat sich bedankt: 274 Mal
Danksagung erhalten: 59 Mal

Beitrag von Mr. Magpie »

Das bringt mich jetzt sogleich zur folgenden Nachfrage: Kann ich einfach über einen weiteren (17.) Eintrag in diesem Array und den darauf folgenden replace-Anweisungen einen weiteren Platzhalter kreieren? Bspw. wäre es doch ganz interessant, diesem Rubriktitel den Platzhalter

Code: Alles auswählen

<!-- SEARCH_RUBRICTITLE -->
zuzuordnen. Dann kann man

Code: Alles auswählen

<!-- SEARCH_RUBRIC -->
für etwaige andere Verwendungen belassen.
Benutzeravatar
Matthias V
Modul-Entwickler
Beiträge: 1251
Registriert: 01.01.1970 01:00
Wohnort: Sondershausen
Hat sich bedankt: 54 Mal
Danksagung erhalten: 147 Mal
Kontaktdaten:

Beitrag von Matthias V »

Teste das doch selber mal.
Dazu müsstest du dir die Zeile 162 und die Zeile 182 dieser Datei anschauen.
Es sollte kein Problem sein und auch gut funktionieren.
In der Zeile 162 darfst du nicht vergessen ein Komma anzuhängen, wenn du ein neues Array-Element in eine neue Zeile hängst.
mod_Guestbook 4.1.0

Features:
- Einträge als ConPresso-Artikel
- benutzt Templates, Rubriken, ...
- Captcha
- BB-Code + Smilies + Zitieren
- Badwords
- Anonymisierung
Benutzeravatar
Mr. Magpie
ConPresso-Profi
Beiträge: 1004
Registriert: 01.01.1970 01:00
Wohnort: Wuppertal
Hat sich bedankt: 274 Mal
Danksagung erhalten: 59 Mal

Beitrag von Mr. Magpie »

ich hab's einfach ausprobiert - klappt wunderbar!

hier der Code von parser.inc.php:

Zeilen 162 und 163:

Code: Alles auswählen

        $rubrics[$v['rubric_id']]['directory'],// 16
        $rubric_settings['title'] // 17
und die neu angefügte Zeile der darauffolgende $replace_array[]-Anweisungen:

Code: Alles auswählen

$replace_array[] = array ('<!-- SEARCH_RUBRIC_TITLE -->','17');
Jetzt muss man nur noch bei den Conpresso-Updates in Zukunft immer daran denken, dass hier etwas in Eigenregie angepasst wurde! Es sei denn, die Conpresso-Entwickler übernehmen dies 1:1 in künftige CPO-Versionen.
Zuletzt geändert von Mr. Magpie am 19.02.2007 11:34, insgesamt 1-mal geändert.
Benutzeravatar
Mr. Magpie
ConPresso-Profi
Beiträge: 1004
Registriert: 01.01.1970 01:00
Wohnort: Wuppertal
Hat sich bedankt: 274 Mal
Danksagung erhalten: 59 Mal

Beitrag von Mr. Magpie »

oops, hatte gar nicht gemerkt, dass du inzwischen ebenfalls zum Selberprobieren geraten hattest!
Benutzeravatar
Mr. Magpie
ConPresso-Profi
Beiträge: 1004
Registriert: 01.01.1970 01:00
Wohnort: Wuppertal
Hat sich bedankt: 274 Mal
Danksagung erhalten: 59 Mal

Beitrag von Mr. Magpie »

Funktioniert leider nicht immer problemlos: Es passiert (zu oft), dass ein falscher Rubriktitel ausgegeben wird.

EDIT: Demo/Testcase entfernt, da Problem gelöst
Zuletzt geändert von Mr. Magpie am 18.04.2011 10:47, insgesamt 1-mal geändert.
Günther Ludwig
Benutzeravatar
balu
ConPresso-Entwickler
Beiträge: 1748
Registriert: 01.01.1970 01:00
Hat sich bedankt: 81 Mal
Danksagung erhalten: 133 Mal

Beitrag von balu »

Hi,

versuch mal oben hinter

Code: Alles auswählen

<?php
$rubrics[$v['rubric_id']] = $db->record();
$rubric_settings = unserialize($rubrics[$v['rubric_id']]['settings']);
?>
(<?php am Anfang und ?> am Ende bitte ignorieren ;)

die folgende Zeile einzufügen:

Code: Alles auswählen

<?php
$rubrics[$v['rubric_id']]['settings'] = unserialize($rubrics[$v['rubric_id']]['settings']);
?>
Und unten dann nicht

Code: Alles auswählen

<?php
$rubric_settings['title'] // 17
?>
sondern

Code: Alles auswählen

<?php
$rubrics[$v['rubric_id']]['settings']['title'] // 17
?>
Und wenn das geht (habe ich jetzt so im Kopf geschrieben, ohne es zu testen, hätte ich gerne die komplette Datei von Dir ;-).

Balu
Bartels.Schöne
ConPresso Support & Development
Benutzeravatar
Mr. Magpie
ConPresso-Profi
Beiträge: 1004
Registriert: 01.01.1970 01:00
Wohnort: Wuppertal
Hat sich bedankt: 274 Mal
Danksagung erhalten: 59 Mal

Beitrag von Mr. Magpie »

Hallo Balu,

das hat wunderbar geklappt! Vielen Dank!

Anbei nun die geänderte parser.inc.php, die noch eine weitere (dokumentierte) Modifikation enthält.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Günther Ludwig
Antworten