Documentation

General Instructions

The Rotary Theme is a WordPress theme for Rotary Clubs.   The membership plugin is required for the theme to work properly. In addition to the theme layout, the theme installs the following pages

  1. Home (the site front page)
  2. About
  3. Membership Information
  4. Posts (the site blog page)

We’ve created a step by step instruction manual to create what we consider a ‘best practice’ website for most medium-sized Rotary Clubs.

 

Theme

Installation

  1. Upload rotary.zip
  2. Activate theme
  3. Create Menu
    1. Include any pages you would like in the menu.
    2. Your menu can have any name you like
    3. Be sure to assign your new menu to the Primary Navigation area on the left.
    4. Save the menu
    5. Under Max mega Menu Settings, select the desired menu Theme.  ‘Rotary’ is the classic blue/yellow.  ‘Rotary White’ follows the style on the 2017 rotary.org website.
  4. Customize your theme
    1. In the dashboard, navigate to themes/customize
    2. Under Site and Tag Line, enter the title and tag line you will want for your site.
    3. Under Rotary fill in the following information:
      1. Club Name (this will show under the logo)
      2. Meeting Location (the address of your club)
      3. If you will not have a slideshow, uncheck the slideshow check box.
      4. If you do not want the home page widgets to show, uncheck the home page sidebar box
    4. Social Media
      1. Enter links for twitter, facebook and linkedin if you have them. These will show up in the footer.
    5. Static Front Page
      1. Select the page that members (logged-in users will see).  The slideshow is a simple built-in carousel that cycles through the ‘Slides’ custom post-type.  You must have at least one slide before this will show.  The sidebar is the Homepage sidebar that displays on the right.
      2. Select the page the visitors (non-logged in users will see).
      3. Select posts as your blog page
  5. Save your changes
  6. Widgets
    1. By default, the theme has default widgets installed for the home and blog pages. You may remove or change any widgets. You may also hide the home page widgets without removing them by following the instructions under “Customize Your Theme”.
    2. To have a menu in the footer, drag the custom menu widget to the Footer Navigation Widget Area. Select the menu you saved in the “Create Menu “ step. You can give the menu a title such as “navigation”.
    3. To include “about us” information in the footer, drag a text widget to the About Footer Widget Area. Give the widget a title and write some text.

Plugins

The theme uses  several plugins to enhance its functionality.  Additionally, based on our own experience and use of the theme, we’ve recommended several others.  The theme will prompt you to install these.

Required Plugins

  1. Gravity Forms
  2. Gravity Forms PayPal
  3. MailChimp Campaign
  4. Every Calendar
  5. Posts 2 Posts
  6. Members

Optional Plugins

  1. Rotary DaCDb
  2. Image Widget
  3. AutoChimp
  4. Max Mega Menu
  5. Max Mega Menu Pro
  6. Recent Facebook Posts
  7. TinyMCE Advanced

Setup

Home Page

 The slide show requires that:

  1. In the theme customization, under ’Static Front Page’, “Show Slideshow” is checked.
  2. There is at least one slide created, and in the published state

Membership

  1. To turn on DaCDb integration:
    1. Requires the optional ‘Rotary DCDb’ plugin  to be installed
    2. Got to Settings->General
    3. Scroll down to the ‘Rotary Options’ / Rotary Membership section
    4. Set the Radio button ‘Use DaCDb for membership?’ to YES
    5. Enter your district and club number
    6. Log out and log back in again.  Users are imported from DaCDb, and matched with any existing registered users through the email address.  The Admin user account will not be affected.
    7. ADVANCED: DaCDb membership information will be cached for one week before being refreshed.  You can force a refresh by adding the following line into wp-config (make sure you comment it out after you’ve logged out and logged back in, otherwise it will slow the site down for every user that logs in)  define( ‘WP_ROTARY_MEMBERS_FORCE_UPDATE’, true );
  2. Standalone mode using native WordPress registration
    1. Go to Settings->General
    2. Scroll down to the ‘Rotary Options’ / Rotary Membership section
    3. Set the Radio button ‘Use DaCDb for membership?’ to NO
    4. Enter your club name (there is a bug with the validation on this field at present – it won’t materially affect the behavior if you omit this field)
    5. Manually register members and fill in their contact details
    6. The very first user (id = 1) will not show up on the membership directory.  Use this first user for an Admin/Webmaster account, and create a second user id for yourself if you are a member of the club.
    7. REQUIRED INFORMATION – users need an Email, a ‘Member Since’ date, and the checkbox on ‘Member’

Gravity Forms

The registration key is 8011e27dbc8b385a5414df7bfa6dc219

Speaker Program

It is advised to take a backup of your installation before proceeding.

  1. Create a new page, give it any name, and give it the template ‘Speaker Archive’. Add this page to your menu structure. This page will automatically have two tabs on it ‘Archive’ and ‘Upcoming Speakers’. The ‘Archive’ tab contains a search dialog and a table of all your speakers.
  2. Add member’s names to the custom taxonomies for “Program Coordinator”, “Program Scribe” (the author), and “Program Editor”. When you create a new Speaker Program, these will be available to you as a drop-down.
  3. Speaker Programs use the same permissions as normal Posts, so make sure your authors, and program coordinator have appropriate roles, with contributor, author, editor or admin roles.
  4. Log in (to create or edit entries, you must be a contributor, author, editor or admin
  5. Using the New Speaker button on the ‘Upcoming Programs’ shortcode, or though the Dashboard menus, create a new speaker program, and enter all information.
  6. There are three full text boxes. The first is the Speaker Biography, which will appear on the right sidebar of the Speaker Program. The second is the text which will appear before the Speaker.
  7. Fill in the third text box only AFTER the speaker has spoken (the second box is over-ridden if there is any text in the third box)

Committees

  1. ADVANCED:  If you use DaCDb, committees can be imported from DaCDb.  Committee members are also imported.  Committees need to be reimported every year, because DaCDb changes its ID numbers every July.  DaCDb committees are not automatically refreshed.  Add the following line into wp-config.php (remove/comment it after you have logging out and back in once) define( ‘WP_ROTARY_COMMITTEES_FORCE_UPDATE’, true );
  2. If you don’t use DaCDb, committees can be created manually from the back-end.  You can add committee members by connecting users to the committees.

Projects

  1. Projects are designed to be associated with a committee (and so are created using the New Project button on the Committee pages (see above).
  2. They can also be created unconnected to any committee by using the back-end (they are a custom post-type).
  3. Projects can be set up to allow post updates (long-term projects).

Shortcodes

[directory]  Produces a table of users.  The table can be sorted by clicking the header column label.  Clicking a member’s name will bring up a profile for that member.

[boardmembers height=”1100″ width=”935″]  Produces a block of board members.  Board members are define as users whose Club Role is not blank, and is not set to “Member”.  Club Roles are set in the ‘Rotary Membership’  on each User’s Profile page.  If you are using DaCDb integration, then you can get a page directly from DaCDb itself, which is better because the officer order is controllable.  It takes optional parameters of height and width in pixels.

[featured_item header=”This Week’s Speaker” fetch=”next/last” length=500] Displays the details of the next or last speaker program.  The header can be customized.  The ‘last’ speaker program is the most recent program that post-program information has been entered.  “length” added in v4.34.  The default length of the abstract shown is 1024 characters (calculated across the HTML, so it will be less than that many actual text characters).

[speakers show=4 ]  Shows a grid of upcoming speaker programs (the number of programs to be displayed can be customized)

[announcements] Allows any logged in user to quickly add an announcement to a committee or project post. By default, announcements are displayed for 10 days, or until the ‘expiry date’ is reached.  Announcments can be for members (logged in users), non-members (non-logged in users), or both.  Announcements can be edited by the creator of the Announcement or an Administrator.  Unless you are synching with DaCdb (and have committees set up in DacDb), you will have to manually create the committees or projects before announcements can be created.

[sponsors show_title=”true” id=1] Displays sponsor’s icons in a panel.  The ‘show_title’ parameter turns on the category titles.  Since v4.34, the ‘id’ parameter refers to the ‘Sponsor List ID’ set on the sponsorship level taxonomy, and allow you to have several different events etc. with different sponsors.  It defaults to one.  Only a small  amount of styling has been defined for this shortcode.  Feel free to add border colors and font settings as you wish, to the Custom Style section of the theme.

[blogroll category=”Category1,Category2″ posts=6 type=”post,speaker,project”] Displays the blogroll, filtered by category.  Useful if you want to show recent blogs on the home page, because setting up the home page as ‘recent posts’ will break the theme.  Choose how many posts you want displayed.  Posts are displayed by date.  You can also include the speaker programs and projects in this blog roll, which makes it more powerful than the standard archives – but all post-types are styled the same way in this view.

[calendar] If you use the Events calendar that’s included (recommended because both the Speaker Program and any Projects you set up will automatically be added to it), then this will give you the large calendar.   There is a Page Template (dropdown when editing a page) called ‘Calendar Sidebar’ which will give you are page with the calendar sidebar widget, but you don’t need to use this.  Also, if you just directly include the calendar post in a menu, it will display the same way – with the calendar sidebar.

[eventlist starting=”-2 days” until=”+3 months”] Displays a listing of events.  Both the starting and until attributes are optional (the default is from today to 3 months from now.   There is also a Event Listings widget that displays event listings, if you want to do something in a sidebar or footer.

[button link=”http://example.com” text=”Got to Link” color=”blue/gold/white” size=”small/large”] Displays a button with the specified color and size.  The link is obligatory.  Defaults to a large blue button.

Example

Here is code to a member-centric page showing the speaker program and

<h1>Weekly Speaker Program</h1>
<div>[featured header=”This Week’s Speaker” fetch=”next”]</div>
<div></div>
<div>[speakers show=4]</div>
<h2>Announcements</h2>
<div>[announcements]</div>
<h1>Events</h1>
<div>[calendar]</div>
<div>[eventlist until=”+3 months”]</div>