Suche FAQ plugin / in search of FAQ plugin

Third Party Plugins to CMSimple - how to install, use and create plugins

Moderator: Tata

lck
Posts: 2963
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: Suche FAQ plugin / in search of FAQ plugin

Post by lck » Wed Feb 23, 2022 12:17 pm

cmb wrote:
Wed Feb 23, 2022 12:11 pm
Ja, das ist leider bei vielen alten Plugins unklar.
Danke, dann lassen wir das mal lieber.

Kannst du diese admin.php von Svarres FAQ mal anschauen. Da sollte normal, so wie ich das lesen kann, die faq_*.txt Datei erscheinen. Erscheint aber nicht, stattdessen nur
FAQ Plugin

Edit your FAQ file : entries are sepetated by ;

Code: Select all

<?php
/*
CMSimple - FAQ Plugin - version 0.1
*/
// initvar('faq'); // lck
// if ($faq) { // lck
if (XH_wantsPluginAdministration('faq')) { // lck
    global $sn, $sv, $sl, $pth, $plugin;
	//$pluginloader_tx['menu']['tab_main'] = 'Plugin-Editor'; // lck
	$tx['menu']['tab_main'] = 'Plugin-Editor';

    $plugin = basename(dirname(__FILE__), "/");
    $admin = isset($_GET['admin']) ? $_GET['admin'] : '';
    $admin .= isset($_POST['admin']) ? $_POST['admin'] : '';

    $faq_file = $pth['folder']['plugins'] . $plugin . "/content/faq_" . $sl . ".txt";
    if (!is_file($faq_file)) {
        $handle = fopen($faq_file, "w");
        fclose($handle);
    } 

    $o .= print_plugin_admin('on');

    if ($admin <> 'plugin_main') {
        $o .= plugin_admin_common($action, $admin, $plugin);
    } 

    if ($admin == 'plugin_main') {
        $pth['file']['plugin_main'] = $pth['folder']['plugins'] . $plugin . "/content/faq_" . $sl . ".txt";
        $o .= "<h1>FAQ Plugin</h1><br>Edit your FAQ file : entries are sepetated by ;<br>";
        $o .= plugin_admin_common($action, $admin, $plugin);
    } 

    if ($admin == '')$o .= "<br>FAQ plugin ver 0.1 by <a href='http://cmsimpleplugins.svarrer.dk'>cmsimpleplugins.svarrer.dk</a>";
} 

?>
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

hillschmidt
Posts: 29
Joined: Fri Nov 08, 2019 11:22 am

Re: Suche FAQ plugin / in search of FAQ plugin

Post by hillschmidt » Wed Feb 23, 2022 12:31 pm

lck wrote:
Wed Feb 23, 2022 11:55 am
@hillschmidt

Svarrer's FAQ Plugin:
In der help_de.htm steht
Die Fragen und Antworten können mit dem Editor des Plugins eingegeben werden. Der Editor versteckt sich unter dem Knopf "Plugin-Einstellungen" oder "Plugin-Editor" (falls die alte admin.php Datei mit der modifizierten ausgetauscht worden ist) in der Konfiguration des Plugins.
Hast du diese modifizierte admin.php? In der downloadbaren Version ist anscheinend die nicht modifizierte Version.
Nein, da fehlt mir wohl was, denn FAQ will nicht in den Plugin-Einstellungen:

Code: Select all

FAQ Plugin
Edit your FAQ file : entries are sepetated by ;
sehe ich nur ... (habe keinen Screenshot gespeichert und irgendwohin geladen ...)
Es grüßt Andreas aus Rheinhessen
https://digibos.org

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Suche FAQ plugin / in search of FAQ plugin

Post by cmb » Wed Feb 23, 2022 1:51 pm

lck wrote:
Wed Feb 23, 2022 12:17 pm
Kannst du diese admin.php von Svarres FAQ mal anschauen. Da sollte normal, so wie ich das lesen kann, die faq_*.txt Datei erscheinen. Erscheint aber nicht, stattdessen nur
FAQ Plugin

Edit your FAQ file : entries are sepetated by ;
Das Editieren der Dateien per Backend ist offensichtlich noch nicht implementiert. Und wenn ich mir plugins/faq/content/faq_en.txt anschaue, dann ist der Sepetator[sic] wohl ein Doppelpunkt (kein Strichpunkt). Also zumindest für jetzt müssten die Dateien manuell bearbeitet werden.
Christoph M. Becker – Plugins for CMSimple_XH

Holger
Site Admin
Posts: 3470
Joined: Mon May 19, 2008 7:10 pm
Location: Hessen, Germany

Re: Suche FAQ plugin / in search of FAQ plugin

Post by Holger » Thu Feb 24, 2022 9:16 am

lck wrote:
Tue Feb 22, 2022 8:46 pm
Eventuell reicht ja auch ein reines CSS Akkordeon, wie z.B. Beispiel hier.
Am Rande, ohne den Thread zu kapern: Das hätte ich gerne für ein Projekt als Plugin :). Allerdings hat es beim Einsatz für eine FAQ einen entscheidenden Nachteil: bei der Suche wird das Ergebnis nicht sichtbar angezeigt. Einfachste Lösung wäre, das Accordeon bei einer Suchanfrage (ähnlich wie bei &print) komplett geöffnet anzuzeigen. Noch besser wäre natürlich, wenn nur die betreffenden Bereiche, es können ja mehrere sein, geöffnet angezeigt werden. Ganz offen sollte simpel sein. Die zweite Idee wird wohl nicht gehen :? .

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Suche FAQ plugin / in search of FAQ plugin

Post by cmb » Thu Feb 24, 2022 10:37 am

Holger wrote:
Thu Feb 24, 2022 9:16 am
lck wrote:
Tue Feb 22, 2022 8:46 pm
Eventuell reicht ja auch ein reines CSS Akkordeon, wie z.B. Beispiel hier.
Am Rande, ohne den Thread zu kapern: Das hätte ich gerne für ein Projekt als Plugin :). Allerdings hat es beim Einsatz für eine FAQ einen entscheidenden Nachteil: bei der Suche wird das Ergebnis nicht sichtbar angezeigt. Einfachste Lösung wäre, das Accordeon bei einer Suchanfrage (ähnlich wie bei &print) komplett geöffnet anzuzeigen. Noch besser wäre natürlich, wenn nur die betreffenden Bereiche, es können ja mehrere sein, geöffnet angezeigt werden. Ganz offen sollte simpel sein. Die zweite Idee wird wohl nicht gehen :? .
Ich denke nach wie vor, dass wir nicht umhin kommen, eine Such-API für Plugins einzuführen. Plugins sollten in der Lage sein, Links zu Fünden bereitzustellen, und damit sollte es auch möglich sein, nur die relevanten FAQ-Einträge anzuzeigen.
Christoph M. Becker – Plugins for CMSimple_XH

lck
Posts: 2963
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: Suche FAQ plugin / in search of FAQ plugin

Post by lck » Thu Feb 24, 2022 12:45 pm

Holger wrote:
Thu Feb 24, 2022 9:16 am
Am Rande, ohne den Thread zu kapern: Das hätte ich gerne für ein Projekt als Plugin . Allerdings hat es beim Einsatz für eine FAQ einen entscheidenden Nachteil: bei der Suche wird das Ergebnis nicht sichtbar angezeigt. Einfachste Lösung wäre, das Accordeon bei einer Suchanfrage (ähnlich wie bei &print) komplett geöffnet anzuzeigen. Noch besser wäre natürlich, wenn nur die betreffenden Bereiche, es können ja mehrere sein, geöffnet angezeigt werden. Ganz offen sollte simpel sein. Die zweite Idee wird wohl nicht gehen .
Als Plugin, von mir aus gerne. 👍🏻
Aber, um die betreffenden Bereiche in der Suche geöffnet anzuzeigen bedarf es Javascript, per CSS ist das nicht möglich, zumindest sehe ich momentan keine. Außer, die Suche setzt im body-Tag auch eine Klasse wie bei &print.

Die Suchbegriffe werden ja mit einer Klasse erweitert,

Code: Select all

class="xh_find"
per JS könnte man dann das/die Elternelement/e ansprechen und somit geöffnet anzeigen. Gottseidank bist du ein JS-Guru, bestimmt ein leichtes für dich, für mich nur mit Hilfe des Webs umsetzbar.

*Nachtrag: Hast du dir genizFAQ auch angeschaut?
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

lck
Posts: 2963
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: Suche FAQ plugin / in search of FAQ plugin

Post by lck » Fri Feb 25, 2022 5:08 pm

Holger wrote:
Thu Feb 24, 2022 9:16 am
Das hätte ich gerne für ein Projekt als Plugin :) .
Du hast damit aber nicht gemeint, dass ich daraus ein Plugin mache :? :) .
Holger wrote:
Thu Feb 24, 2022 9:16 am
Einfachste Lösung wäre, das Accordeon bei einer Suchanfrage (ähnlich wie bei &print) komplett geöffnet anzuzeigen. Noch besser wäre natürlich, wenn nur die betreffenden Bereiche, es können ja mehrere sein, geöffnet angezeigt werden.
Per jQuery leicht umsetzbar, mit reinem JS tu ich mich schwer.

Code: Select all

<script>
$('.lck_accordion [id^="acc-"]:has(span.xh_find)').addClass('xh_find_parent');
</script>
CSS erweitern:

Code: Select all

.lck_accordion [id^="acc-"]:target,
.lck_accordion [id^="acc-"].xh_find_parent { /* Ergänzung */
	max-height: 300px;
	opacity: 1;
	overflow-y: auto;
	transition: all 0.3s ease-in-out 0.3s;
}
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

lck
Posts: 2963
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: Suche FAQ plugin / in search of FAQ plugin

Post by lck » Sun Feb 27, 2022 12:11 pm

lck wrote:
Fri Feb 25, 2022 5:08 pm
Per jQuery leicht umsetzbar, mit reinem JS tu ich mich schwer.
Na ja, geht doch, mit Hilfe von stackoverflow.com.
Reines Javascript:

Code: Select all

<script>
const parents = document.querySelectorAll('[id^="acc-"]');

parents.forEach(item => {
const childHasClass = item.querySelector('.xh_find'); // <- yield 'null' if no children with that class

if (childHasClass) {
item.classList.add('xh_find_parent');
}
})
</script>
Oder auch:

Code: Select all

<script>
const needle = 'xh_find', classToAdd = 'xh_find_parent';
document.querySelectorAll(`.lck_accordion .${needle}`).forEach((el) => el.closest('[id]').classList.add(classToAdd));
</script>
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

Post Reply