WordPress.org

Ready to get started?Download WordPress

Forums

Events Manager
[resolved] Pagination styling (5 posts)

  1. jbx
    Member
    Posted 1 year ago #

    I wish to style the pagination of the event list. Basically put a couple of images for Next / Prev links and some other CSS styling, and remove the individual page numbers.

    I can't seem to find the proper documentation for how to do this here:
    http://wp-events-plugin.com/documentation/
    (I bet its there somewhere hiding from me).

    And when I search on Google I am just getting partial information like that I have to write a hook for em_paginate or em_events_output_pagination (not sure which is the correct one) without any example and I can't find the proper documentation of the signature of the pagination function and what parameters its getting.

    Is there a clear comprehensive example somewhere I can follow?

    http://wordpress.org/extend/plugins/events-manager/

  2. angelo
    NetWebLogic Support
    Posted 1 year ago #

  3. jbx
    Member
    Posted 1 year ago #

    thanks for your reply.

    Well that post isn't really solving the problem properly. Its just a hack to replace the < and > with 'Prev' and 'Next'. Its not really getting the links to enable you to manipulate them according to the template's styling requirements.

    For instance I need to put the Next on one side and Prev on the other side, replace them by links of a certain class (that have a background image), and eliminate the numbers.

    Is there any way to get the next link and prev link URLs similarly to how wordpress next_posts_link() and previous_posts_link() functions work? Maybe there are some internal functions used by em_paginate() which provide these for it to construct the string in the first place?

  4. Marcus
    NetWebLogic Support
    Plugin Author

    Posted 1 year ago #

    chances are what you want to do is override or modify the filter in our em_paginate function, which is in em-functions.php, first function.

    You can copy/edit this function elsewhere and it'll be used instead. I think by precedence you'd need to put it in an mu-plugins plugin instead of your functions.php as described here:

    http://wp-events-plugin.com/tutorials/how-to-safely-add-php-code-to-wordpress/

  5. jbx
    Member
    Posted 1 year ago #

    OK managed to do it properly, posting the info here so that its useful for anyone looking for it.

    One can write his own em_paginate() function following this signature and putting it in your theme's functions.php:

    function my_em_paginate($links, $link, $total, $limit, $page=1, $pagesToShow=10)
    {
      //your code here
      return $pagination_html;
    }

    Those parameters tell you how the default $links will be displayed, the $link syntax used to link to other event list pages, the $total number of events, the $limit of how many events should be displayed on each page, which $page is being displayed, and how many $pagesToShow in the event list page.

    After this it is very important that you put the following line:

    add_filter('em_events_output_pagination','my_em_paginate', 1, 6);

    Note the filter name em_events_output_pagination and the parameters 1 and 6, meaning high priority (lower number = earlier execution) and the number of arguments the function takes, which in our case is in fact 6.

    That worked for me and no need for messy function overriding.

Topic Closed

This topic has been closed to new replies.

About this Plugin

About this Topic