Produktgruppen - Paginierung bei den Produkten?

Hier findest du alle Fragen zu besonderen Anpassungen an den Templates oder Wordpress selber

Moderatoren: maennchen1.de, wpShopGermany Moderator

Antworten
MKJ
Beiträge: 3073
Registriert: 25.08.2010, 16:11

Produktgruppen - Paginierung bei den Produkten?

Beitrag von MKJ »

Hallo,

für ein Projekt musste ich mal wieder das Modul Produktgruppen auskramen, weil es für die Produktartikel leider keine automatische Übersichtsseite für alle Shopkategorien gibt (Shop > alle Kategorien > alle Produkte einer Kategorie > Produkt). Ich habe die Templates etwas aufgemotzt, so dass ich mit der Ansicht gut leben kann:

Übersicht aller Produktgruppen:
pgruppe1.jpg
Übersicht aller Artikel einer Produktgruppe:
pgruppe2.jpg
Es scheint aber keine Paginierung zu geben. Das heißt, dass ALLE Produkte einer Gruppe angezeigt werden. Habt Ihr eine Idee, wie man das angehen könnte? Mit dieser Funktion wäre das Modul wieder sehr gut einsetzbar, zumal es mit zugeordneten WP-Artikeln ebenso gut funktioniert wie mit Produktartikeln.

Danke und Gruß, Mike
Tipps und Tricks rund um wpShopGermany: www.my-blog-shop.de
Benutzeravatar
maennchen1.de
Administrator
Beiträge: 17868
Registriert: 14.08.2003, 16:55
Lizenz: wpShopGermany Enterprise
Wohnort: Thüringen, Ellersleben
Kontaktdaten:

Re: Produktgruppen - Paginierung bei den Produkten?

Beitrag von maennchen1.de »

Hallo!
Mit dem Modul Produktübersichten wird eine Paginierung mitgeliefert. Auch für Produktgruppen. Hast du das schon einmal ausprobiert?
Kein Support per PN! Alle Fragen beantworten wir hier im Forum. Per PN bitte nur Passwörter, Namen und URLs - sofern notwendig.
Bitte vor dem posten lesen:
Wie poste ich eine Frage zu einem Problem?
FAQ / häufig gestellte Fragen
Anzeige-Fehler / Funktionsfehler in wpShopGermany erkennen und selbst beheben
PHTML-Dateien richtig verwenden (für eigene Anpassungen)
MKJ
Beiträge: 3073
Registriert: 25.08.2010, 16:11

Re: Produktgruppen - Paginierung bei den Produkten?

Beitrag von MKJ »

Hallo,

ja, die kenne ich. Finde ich auch gut. Oft wird aber eine Seite benötigt, die eine Übersicht zu allen Gruppen zeigt und von dort zu den einzelnen Gruppen navigiert und automatisch aktualisiert wird. Das kann nur das Modul Produktgruppen. Es fehlt eigentlich nur die Paginierung. Eine Verbindung beider Module funktioniert meines Wissens nicht. Leider ist es für die meisten Kunden kaum möglich, die Übersicht zu den Gruppen (oder Kategorien) manuell anzulegen. Die schaffen es gerade noch, eine Seite mit der Produktübersicht zu verknüpfen. Oft ist aber eine Seite nötig, die wiederum eine Übersicht der Übersichten zeigt. Das ist zur Zeit, wenn ich nicht irre, nur mit Produktgruppen möglich. Zur Verdeutlichung:

Modul Produktgruppen: Alle Gruppen (auto) > Einzelne Gruppe (auto, ohne Paginierung) > Produkt.

Modul Produktübersichten: Artikelvorschau (auto, mit Paginierung) > Produkt = keine automatische Übersicht aller Gruppen

Modul Produktartikel: Alle Artikel einer Kategorie (auto, mit Paginierung) > Produkt = keine automatische Übersicht aller Kategorien

Wenn die Produktgruppen die Paginierung könnten, ließe sich die Struktur perfekt und automatisch abbilden. Der Kunde muss nur Produkt einpflegen, den Rest macht das System. Ich könnte das Template natürlich um eine Paginierung erweitern. Wäre halt schöner, wenn das schon out-of-the-box ginge.
Tipps und Tricks rund um wpShopGermany: www.my-blog-shop.de
Benutzeravatar
maennchen1.de
Administrator
Beiträge: 17868
Registriert: 14.08.2003, 16:55
Lizenz: wpShopGermany Enterprise
Wohnort: Thüringen, Ellersleben
Kontaktdaten:

Re: Produktgruppen - Paginierung bei den Produkten?

Beitrag von maennchen1.de »

MKJ hat geschrieben:Ich könnte das Template natürlich um eine Paginierung erweitern.
Wäre klasse. Wenn das dann noch andere haben wollen, bauen wir es mit ein.
Kein Support per PN! Alle Fragen beantworten wir hier im Forum. Per PN bitte nur Passwörter, Namen und URLs - sofern notwendig.
Bitte vor dem posten lesen:
Wie poste ich eine Frage zu einem Problem?
FAQ / häufig gestellte Fragen
Anzeige-Fehler / Funktionsfehler in wpShopGermany erkennen und selbst beheben
PHTML-Dateien richtig verwenden (für eigene Anpassungen)
MKJ
Beiträge: 3073
Registriert: 25.08.2010, 16:11

Re: Produktgruppen - Paginierung bei den Produkten?

Beitrag von MKJ »

OK, etwas Hilfe wäre dann von Euch allerdings schön. Ich habe hier eine Rohversion, die grundsätzlich funktioniert:

Code: Alles auswählen

<?php
$nb_elem_per_page = 3;
$page = isset($_GET['seite'])?intval($_GET['seite']-1):0;
$data = (array)$this->view['data']['produkte'];
$number_of_pages = intval(count($data)/$nb_elem_per_page)+2;
$queryString = $_SERVER['QUERY_STRING'];
$url = get_permalink()."?".$queryString;

foreach (array_slice($data, $page*$nb_elem_per_page, $nb_elem_per_page) as $p) { ?>
		hier steht HTML etc.
		<?php } ?>
        
<ul id='paginator'>
<?php
for($i=1;$i<$number_of_pages;$i++){?>
<li><a href='<?php echo $url."&seite="; ?><?=$i?>'><?php echo $i ?></a></li>
<?php } ?>
</ul>
Der einzige Haken ist dabei, dass sich die Query Strings addieren:

Code: Alles auswählen

http://domain.com/produktgruppen/?show=12&seite=2&seite=1&seite=3
Es funktioniert zwar, ist aber nicht elegant. Ich kann das abfangen, indem ich bei der Übersicht der Produkgruppen den Link etwas modifiziere:

Code: Alles auswählen

<?php echo WPSG_URL_WP ?>?page_id=<?php echo get_the_ID(); ?>&show=<?php echo $k ?>&seite=1
Anschließend kann ich auf der Seite mit der Paginierung alle angehängten Query Strings entfernern:

Code: Alles auswählen

$url2 = strstr($url, '&', true);
Funktioniert, ist aber ziemlich von hinten durch das Auge. Vielleicht sieht Daschmi hier sofort eine bessere Lösung.
Tipps und Tricks rund um wpShopGermany: www.my-blog-shop.de
Benutzeravatar
daschmi
m1.Mitarbeiter
Beiträge: 2595
Registriert: 04.12.2007, 17:23
Lizenz: keine
Kontaktdaten:

Re: Produktgruppen - Paginierung bei den Produkten?

Beitrag von daschmi »

Hi,

Warum baust du die URL nicht direkt zusammen?

Code: Alles auswählen

...
<li><a href='<?php echo get_permalink(); ?>?show=<?php echo $_REQUEST['show']; ?>&seite=".$i; ?>'><?php echo $i ?></a></li>
...
Viele Grüße

Daschmi
MKJ
Beiträge: 3073
Registriert: 25.08.2010, 16:11

Re: Produktgruppen - Paginierung bei den Produkten?

Beitrag von MKJ »

daschmi hat geschrieben:Warum baust du die URL nicht direkt zusammen?
Dann hättest Du ja gar nichts mehr zu tun! :-D

War noch ein kleiner Fehler drin, aber so passt es wunderbar:

Code: Alles auswählen

<li><a href="<?php echo get_permalink(); ?>?show=<?php echo $_REQUEST['show']; ?>&seite=<?=$i?>"><?php echo $i ?></a></li>
Ich habe jetzt bei der jeweils aktuellen Seite den Link entfernt:

Code: Alles auswählen

$page_no = $_REQUEST['seite'];

Code: Alles auswählen

<ul id='paginator'>
<?php
for($i=1;$i<$number_of_pages;$i++){
if ($i == $page_no) {?>

<li><?php echo $i ?></li>
<?php }
else { ?>
	<li><a href="<?php echo get_permalink(); ?>?show=<?php echo $_REQUEST['show']; ?>&seite=<?=$i?>"><?php echo $i ?></a></li>
<?php	}
} ?>
</ul>
pagination.jpg
Gruß, Mike
Tipps und Tricks rund um wpShopGermany: www.my-blog-shop.de
Antworten