Question

Le projet est développé avec CakePHP.

La page est d'un article de fil d'actualité.

La pagination est simple lorsque vous souhaitez renvoyer (x) nombre d'enregistrements par page ou (x) nombre d'images par page, ou même limiter le nombre de mots / paragraphes / caractères, mais que se passe-t-il si vous souhaitez paginer par longueur visuelle de la page?

Le problème a été soulevé car certains articles contiennent une grande quantité de texte et d’images. J'aimerais savoir comment vous allez développer la pagination lorsque le contenu est complètement dynamique. Je veux dire par là que cela pourrait être 100% texte, texte et 3 images, 10 images, etc.

Le code est apprécié mais même un concept serait bénéfique, merci!

Était-ce utile?

La solution

Je ne connais pas Cakephp, mais que diriez-vous de compter le nombre de caractères?

Supposons que l'article comporte 10 000 caractères et que vous décidiez que chaque page ne devrait pas contenir plus de 500 mots. Avec une longueur de mot moyenne de 5 caractères, vous passez au caractère 500 * 5 = 2500, recherchez le paragraphe suivant et prenez ce point comme point de repère de la page suivante. Vous pouvez utiliser le même concept avec des images, mais compte tenu de la hauteur des images ...

Ça sonne bien?

Autres conseils

Parce que nous connaissons la largeur de la page et la hauteur de l'image et que nous avons pu approximer la hauteur en pixels du texte.

Nous avons ensuite pris la hauteur des images, des espaces et du texte, et avons soustrait cette hauteur de la hauteur totale autorisée avec un certain pourcentage d'erreur, de manière à ne pas pousser une image sur la mauvaise page simplement parce que Les 10 dernières années dépassent la limite.

Nous avons également un moyen de forcer les éléments sur la page précédente dans le cas où une image ou une phrase serait poussée à la page suivante, ce qui ne donnerait pas l'apparence appropriée.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top