[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
sortierung nach priorität - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
steri
Beiträge: 364
Registriert: 12. Jul 2007, 14:59

sortierung nach priorität

11. Jun 2008, 16:54

hallo,

ich würde auch gerne die artikel mit dem modul multilist nach Priorität sortieren lassen.
(siehe dazu hier: http://forum.redaxo.de/ftopic8088.html)
ich finde aber den umstand, dass man den cache löschen muss wenn sich in der Prioritätenreihenfolge etwas ändert, sehr umständlich.

gibts da ev. eine bessere lösung. mit actions lässt sich ja da leider auch nix machen, weil ja nur die priorität des artikels geändert wird und nicht der artikel selbst.

mir scheint als wäre dies ein problem was eher den kern von redaxo betrifft.
oder liege ich da komplett falsch?
hat jemand eine idee wie man dies eleganter lösen könnte?
das betrifft ja nicht nur das modul multilist sondern alles was mit prioritäten sortierung zu tun hat.

netmanix

11. Nov 2008, 11:19

Gibt es schon einen Fix?

Benutzeravatar
Markus.Staab
Entwickler
Beiträge: 9634
Registriert: 29. Jan 2005, 15:50
Wohnort: Aschaffenburg/Germany
Kontaktdaten: ICQ Website

11. Nov 2008, 15:28

Hi,

man könnte das ganze via Extension Point ART_UPDATED und einer Extension lösen.

Grüße,
Markus

netmanix

11. Nov 2008, 15:51

Interessant,
und wie?

Benutzeravatar
Markus.Staab
Entwickler
Beiträge: 9634
Registriert: 29. Jan 2005, 15:50
Wohnort: Aschaffenburg/Germany
Kontaktdaten: ICQ Website

5. Feb 2009, 20:22

Hi,

dazu in der Doku mal nachlesen:
http://www.redaxo.de/309-0-4-1-extension-points.html

Gruß,
Markus

tmarx
Beiträge: 68
Registriert: 9. Dez 2005, 23:21
Wohnort: Meßkirch

Lösung?

19. Okt 2009, 22:16

Hallo zusammen,
hat hier schon jemand eine Lösung für Redaxo 4.1 parat. Ich möchte dem Kunden auf keinen Fall den Tab "System" freischalten. Auch das manuelle löschen des Caches ist ja nicht die feine Art. Hat jemand dieses Problem schon mit einem Extension Point gelöst? Wenn ja, wie?

Vielen Dank schon im Voraus für euere Antworten
Thorsten

tmarx
Beiträge: 68
Registriert: 9. Dez 2005, 23:21
Wohnort: Meßkirch

27. Okt 2009, 16:45

Hat hier wirklich keiner eine Lösung parat. Mir fällt einfach nichts ein.

Danke
Thorsten
--
Thorsten Marx
Hafnarstraeti 81
600 Akureyri
Iceland
Phone: +354 7720911
Internet: http://www.marx-solutions.com

Thomas.Skerbis
Beiträge: 1371
Registriert: 4. Aug 2006, 14:06
Wohnort: Rheinberg
Kontaktdaten: Website Twitter

27. Okt 2009, 16:55

Ich habe dafür einen Cron-Job angelegt, der den Cache in regelmäßigen Abständen löscht.
Falls Du keine Cron-Jobs anlegen kannst, solltest Du deinen Hoster fragen.

Ein solcher Job sieht beispielsweise so aus:

Code: Alles auswählen

<?php 

//Ordnername festlegen in dem die zu löschenden Files liegen
$ordnername = "redaxo/include/generated/articles/";
//überprüfen ob das Verzeichnis überhaupt existiert
if (is_dir($ordnername)) {
//Ordner öffnen zur weiteren Bearbeitung
if ($dh = opendir($ordnername)) {
//Schleife, bis alle Files im Verzeichnis ausgelesen wurden
while (($file = readdir($dh)) !== false) {
//Oft werden auch die Standardordner . und .. ausgelesen, diese sollen ignoriert werden
if ($file!="." AND $file !="..") {
//Files vom Server entfernen
echo $file;
unlink("redaxo/include/generated/articles/$file");
}
}
//geöffnetes Verzeichnis wieder schließen
closedir($dh);
}
}
?>
Die Verwendung von Extension_Points hört sich ja gut an.
Aber wie sie verwendet werden ist mir schleierhaft.
Da fehlt mir noch ein Tutorial zu.

Benutzeravatar
darwin
Beiträge: 1725
Registriert: 2. Jan 2007, 17:10
Wohnort: LA

9. Sep 2010, 09:59

*push* ...
sry fürs pushen. @Markus, könntest du evtl doch noch ein Beispiel
posten wie man den EP mit einbringt damit das Sortieren der Artikel auch ohne Cache "leeren/neu anlegen" funktioniert ...

Danke im voraus.
mfg Chris

PS: EP sind für mich (leider) immer noch fremd ... :oops:

Benutzeravatar
darwin
Beiträge: 1725
Registriert: 2. Jan 2007, 17:10
Wohnort: LA

9. Sep 2010, 10:56

so...
habs jetzt in einer redaxo 4.1 Version mal so gelöst:

in der structure.inc.php an 3 Positionen ein rex_generateAll();
hinzugefügt (evtl. würde auch rex_deleteCacheArticle($article_id) reichen)
Zeile 331:

Code: Alles auswählen

if($EA->update())
    {
      $message = $I18N->msg('article_status_updated');
      rex_generateArticle($article_id);
      rex_generateAll();
Zeile 410:

Code: Alles auswählen

rex_generateArticle($id);
rex_generateAll();
Zeile 447:

Code: Alles auswählen

// ----- PRIOR
    rex_newArtPrio($category_id, $clang, $Position_Article, $thisArt->getValue('prior'));
    rex_generateArticle($article_id);
    rex_generateAll();
... s funkt nun...
nur leider hab ichs wieder nicht mit EPs gelöst :cry:

grz. Chris

Benutzeravatar
darwin
Beiträge: 1725
Registriert: 2. Jan 2007, 17:10
Wohnort: LA

Re: sortierung nach priorität

7. Jun 2011, 11:35

... Ab der 4.3.2 könnte man das über den Extension Point "ART_CONTENT_UPDATED"
lösen und das Ganze über einen Cronjob (z.B. alle 30 tage) ausführen:

Code: Alles auswählen

rex_register_extension('ART_CONTENT_UPDATED', 'rex_generateAll');
grz. Chris

lci
Beiträge: 239
Registriert: 18. Aug 2006, 10:47

Re: sortierung nach priorität

23. Aug 2012, 16:34

Gibt es auch eine Lösung für Redaxo 4.4.0 - die entscprechenden Zeilen (sh. oben) sind so nicht mehr in der structure.inc.php vorhanden. Ich möchte das auch nicht mit Cronjob lösen bzw. dem Redakteur den System Tab freigeben. Ist doch auch eigentlich logisch das nach einer Änderung der PRIO der Redakteur im FE eine geänderte Sortierung sehen möchte, oder?

Vielen Dank
P.

lci
Beiträge: 239
Registriert: 18. Aug 2006, 10:47

Re: sortierung nach priorität

24. Aug 2012, 15:43

Habs gefunden.
Unter Zeile 625 ein "rex_generateAll();" einfügen.

Code: Alles auswählen

$template_select->setSelected($sql->getValue('template_id'));
rex_generateAll();


Benutzeravatar
Gregor.Harlan
Entwickler
Beiträge: 1130
Registriert: 4. Jun 2007, 10:35
Wohnort: Frankfurt am Main

Re: sortierung nach priorität

24. Aug 2012, 16:01

Es wird eigentlich schon der Cache soweit gelöscht, wie notwendig (kein allgemeines rex_generateAll()). Bei mir ist ein manuellen Löschen nicht notwendig, die Änderung wirkt sich sofort aus.

Gruß, Gregor
Friends Of REDAXO: Gemeinsame REDAXO-Entwicklung!

lci
Beiträge: 239
Registriert: 18. Aug 2006, 10:47

Re: sortierung nach priorität

24. Aug 2012, 17:34

Dann hast Du wohl eine "besondere" Redxo Version erwischt. :)

Benutzeravatar
Gregor.Harlan
Entwickler
Beiträge: 1130
Registriert: 4. Jun 2007, 10:35
Wohnort: Frankfurt am Main

Re: sortierung nach priorität

24. Aug 2012, 19:26

Nein, habe ich nicht. Daher wäre es interessant, unter welchen genauen Umständen das Problem entsteht, damit es gefixt werden kann. Denn so prinzipiell scheint es ja zu funktionieren, weil zum einen hab ich es vorhin getestet, und zum anderen gäbe sonst sicherlich deutlich mehr Meldungen diesbezüglich.

Also noch mal zum Verständnis: Du änderst die Reihenfolge von Artikeln, und danach erhältst du trotzdem noch die alte Reihenfolge bei der Abfrage, richtig? Wie genau sieht die entsprechende Abfrage der Artikel aus?
Und welche PHP-Version verwendest du?
Friends Of REDAXO: Gemeinsame REDAXO-Entwicklung!

lci
Beiträge: 239
Registriert: 18. Aug 2006, 10:47

Re: sortierung nach priorität

24. Aug 2012, 21:09

Also REDAXO Version ist 4.4.0 - PHP: 5.3.3-7+squeeze14

Ich ändere im BE die Reihenfolge (Prio) und erhalte im FE eine "falsche" Reihenfolge, bis ich unter
"System" den Cache neu generiere.

Für das FE sortieren

Code: Alles auswählen

// Sortieren nach Priorität
// siehe http://wiki.redaxo.de/index.php?n=R3.Sortierm%f6glichkeiten
if (!function_exists('sortArticlesByPrio')) { function sortArticlesByPrio( $artA, $artB) { $prioA = $artA->getPriority(); $prioB = $artB->getPriority(); if ( $prioA == $prioB) { return 0; } return $prioA > $prioB ? -1 : 1; } }

Viele Gruesse
P.

Zurück zu „Allgemeines [R4]“