WordPress.org

Ready to get started?Download WordPress

Forums

Event Calendar 3 for PHP 5.3
diferent calendar in different categories pages (10 posts)

  1. ilBento
    Member
    Posted 2 years ago #

    Hi, I got the calendar and works fine!
    I need only a thing, I want to show different events in differents pages, where categories make the difference.

    if I have a page named rock (where rock is also a cathegory), and some events with the rock cathegory, can I show only them in the calendar while I am in the rock page, instead of all events as in the home page, for example?

    http://wordpress.org/extend/plugins/event-calendar-3-for-php-53/

  2. Sebastian
    Member
    Posted 2 years ago #

    Did you manage that problem? Because I have the same.

  3. danapaige
    Member
    Posted 2 years ago #

    Anyone figure this out? I need this too. I tried a couple of things, but no results.

    Let me elaborate on this in the hopes that someone can find a solution:

    I have a set of regional categories, ex. Coastal. I want to put a calendar on each region page, and I want that calendar to only show events from that region.

    How can I limit the calendar to only show posts associated with a region? Or better yet, to only show posts from the category archive the calendar is displayed on?

    This is the code you can add to a template file to call the calendar in, but there is no documentation on the plugin site to explain how to add to or alter this code to different purposes:

    <?php ec3_get_calendar();?>

  4. Sebastian
    Member
    Posted 2 years ago #

    I'm in a hurry at the moment, so I cant explain much. I dont fully understand it myself. You have to make custom method (look at the get_calendar method, to see how it works) inside your functions.php and make a query similar to this. Hope that helps at least a bit.

    // Find the upcoming events.
    $calendar_entries = $wpdb->get_results(
    "SELECT
    p.id AS id,
    post_title,
    start,end,
    u.$ec3->wp_user_nicename AS author,
    allday
    FROM $ec3->schedule s
    LEFT JOIN $wpdb->posts p ON s.post_id=p.id
    LEFT JOIN $wpdb->users u ON p.post_author = u.id

    LEFT JOIN $wpdb->term_relationships ON (p.ID = $wpdb->term_relationships.object_id)
    LEFT JOIN $wpdb->term_taxonomy ON ($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id)

    WHERE p.post_status='publish'
    AND end>='$ec3->today' $and_before
    AND $wpdb->term_taxonomy.taxonomy = 'category'
    AND $wpdb->term_taxonomy.term_id IN($cat)
    ORDER BY start $limit_month"
    );

  5. danapaige
    Member
    Posted 2 years ago #

    I think your response is a little over my head. Can I just copy and paste that code into my functions.php?

  6. Sebastian
    Member
    Posted 2 years ago #

    No, but I will give you the whole function, maybe that will help you. You can paste it into functions and maybe you can change it for your purpose. Notice, that it probably isn't completely correct!

    The code I posted the last time, is where the function gets the data from the database. That is the essential part:

    WHERE p.post_status='publish'
           AND end>='$ec3->today' $and_before
    	   AND $wpdb->term_taxonomy.taxonomy = 'category'
    	   AND $wpdb->term_taxonomy.term_id IN($cat)
         ORDER BY start $limit_month"

    Heres the whole function:

    [Code moderated as per the Forum Rules. The maximum number of lines of code that you can post in these forums is ten lines. Please use the pastebin]

    And thats how you call it in the loop:

    ec3_get_eventList(200, $cat, "<a class='url' href='%LINK%'> %TITLE%</a>", '%DATE%', 'j. F', '%MONTH%', 'F');

    If you have any specific questions, just ask. I will try to help you.

  7. danapaige
    Member
    Posted 2 years ago #

    Looking at this I really just have no idea where to start. I can't really comprehend what the function is doing, and so I don't know how to edit it for my purposes.

    Then the part to call it into the loop,
    ec3_get_eventList(200, $cat, "<a class='url' href='%LINK%'> %TITLE%</a>", '%DATE%', 'j. F', '%MONTH%', 'F');
    I don't understand what the '200' is for or what the link is that's being called in.

    This is all just way over my head.

    So the "whole function" you posted. (Even though it was moderated out I have a copy of it that was sent to my email.) Is that already in my functions.php somewhere? Or am I adding that?

    Sorry I am so useless. Thanks a lot for your help.

  8. Sebastian
    Member
    Posted 2 years ago #

    Im very sorry, but Im currently finalizing the project for my master-degree and therefore I am in a hurry. Everything I could do for you at the moment is posting the code again (Didnt know of this restriction). If you remind me of this after the 23th of July, I try to figure it out with you. My Email is Lord_Mord(├Ąt)gmx.de

    And here is the code again:

    http://pastebin.com/xRvsxdqP

  9. danapaige
    Member
    Posted 2 years ago #

    Hi Lord_Mord,

    I just emailed you, please get back to me. I need some more help if you have the time!

    Thanks,
    Dana

  10. Sebastian
    Member
    Posted 2 years ago #

    Hi. First of all: My English is very creative, also I dont always use correct terminology, sorry for that.

    You will have to add a custom function in your functions.php. When I created mine (get_event_list), I changed the get_events function that comes with event calendar as default. I didnt now what I did, that means I'm not completely shure if everything is correct. Maybe theres code left that isnt needed.

    What the code above does (the WHERE-Thing) is to scan for a given category and only return posts from that category. If you want to do as less as possible, you can just add that part to your copy of get_events. At the top of the function youll have to modify the part whith the variables, so that you can tell the function which category to display. In your template file you can use $cat to query your current category.

    If you like, you can try changing the rest of the function, to display your calendar another way. I did that, it was a litt bit of try and error.

    I forgot what the 200 is for. I think something like how many posts should be displayed. It is not neccesary for what you are trying to do, just leave it there.

    What get_events and the other functions do, is looking in the database for calendar dates and wrapping them in HMTL-Code. When you call the function inside your loop you can tell the function, how exactly the dates should be wrapped (Thats what the link is for). If you need it to display in a very special manner, you will have to modify the function itself. (The ec3 documentation would be useful, but its currently offline).

    If you have to know more, you will have to be more specific with your questions, I dont think my english is good enough to write an understandable tutorial for this.

Topic Closed

This topic has been closed to new replies.

About this Plugin

About this Topic