Answers.Body: <p>I agree that a Webform is the best solution if you are using Drupal, but to answer the exact question that was asked:</p>
  
  <p>CiviCRM profiles do not currently have a UI to alter the display of groups on a form. Doing so would require a little bit of custom code.</p>
  
  <ul>
  <li>If you are more comfortable with PHP, use <a href="http://wiki.civicrm.org/confluence/display/CRMDOC/hook_civicrm_buildForm" rel="noreferrer">hook_civicrm_buildForm</a> to modify the options in that form element.</li>
  <li>If you prefer javascript, use jQuery to modify the order of checkboxes.</li>
  <li>If you simply need to hide some options, the easiest was is to use css to set <code>display:none</code>.</li>
  </ul>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-04-18T15:38:17.637Z
Answers.LastActivityDate: 2015-04-18T15:38:17.637Z
Answers.UserDisplayName: Coleman
Answers.Body: <p>For anyone not using Drupal and relying on the standard /civicrm/mailing/subscribe page, you can also just add a number to the front of your group name to order them as you want. So </p>
  
  <ul>
  <li>Event updates</li>
  <li>General newsletter</li>
  <li>Service news</li>
  </ul>
  
  <p>becomes ...</p>
  
  <ol>
  <li>General newsletter</li>
  <li>Service news</li>
  <li>Event updates</li>
  </ol>
  
  <p>No coding skills required! :)</p>
  
  <p>Heather O.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-05-01T19:39:55.523Z
Answers.Text: Thanks, Heather O.  This is a good "user" level workaround for those of us who are not up for the technical challenge of coding solutions.
Answers.UserDisplayName: Daniel Ando Scholnick
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-04-23T10:29:44.540Z
Answers.LastActivityDate: 2015-04-23T10:29:44.540Z
Answers.UserDisplayName: Heather O.
Answers.Body: <p>To extend on peterdnz answer:</p>
  
  <p>On drupal, you can install webform and webform_civicrm modules and build the form you want.</p>
  
  <p>Once you have enabled civicrm on that form, you can choose the various fields existing in civicrm (first or last name, email... and groups)</p>
  
  <p>For the list of groups, you can then chose which one(s) you want to display and in which order. You can even change the name of each group (on that form) without having to change the name of the group, so you can use shortcuts as you might call the group differently within the team and with your visitors.</p>
  
  <p>It's fairly intuitive once you get into the logic of having to take the fields as available in civicrm and add them to the form (conceptually similar to profiles, but the interface is IMO clearer)</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-04-16T13:47:58.100Z
Answers.Text: Beautiful – thank you for the responses, Xavier and Peterdnz.  I'd up-vote this answer, but my reputation is only 6, as this is my first question :).  We will get to work on installing webform in Drupal.
Answers.UserDisplayName: Daniel Ando Scholnick
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-04-19T01:10:37.957Z
Answers.Text: Fair enough!  I did not know that was part of the process.  Wish I could "accept" both answers, since they are both excellent, though different, approaches.
Answers.UserDisplayName: Daniel Ando Scholnick
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-04-16T13:15:56.900Z
Answers.LastActivityDate: 2015-04-16T13:15:56.900Z
Answers.UserDisplayName: Xavier
Body: <p>I would like to change the order of the set of groups that are displayed to a user.  In my case, I'm working with Mailing List groups, and all five are set to "Public Pages" visibility.  If they are shown on a profile using the "Group(s)" field, they come up in alphabetical order.  </p>
  
  <p>The same ordering default is exhibited on the Mailing List Subscription page, /civicrm/mailing/subscribe.</p>
  
  <p>My goal here is to create a mailing list preferences profile that users would get to through a checksum placed in emails sent to them by CiviMail.  In my case, the default alphabetized order creates an awkward presentation for how my organization wants to relate to our community.</p>
  
  <p>I'm currently running CiviCRM version 4.5.4 on Drupal 7.</p>
  
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2015-04-15T19:35:26.053Z
Comments.Text: Can you let us know the CMS involved. I.e. if it is Drupal, then Webform_CiviCRM would provide what you need.
Comments.UserDisplayName: petednz - fuzion
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2015-04-15T20:15:26.993Z
Comments.Text: We're using Drupal 7.  Have not set up webforms, but it sounds like you're saying that there is an elegant solution to be found there?
Comments.UserDisplayName: Daniel Ando Scholnick
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2015-04-15T23:08:04.520Z
Comments.Text: @petednz want to turn that into a full answer? :)
Comments.UserDisplayName: Coleman
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2015-04-16T10:45:16.757Z
Comments.Text: Petednz and the rest of the community, I agree with Coleman, if this is the only answer to the question, then it would be helpful to others to show this as Answered.  Also, tips you can provide about "how" Webform_CiviCRM solves this problem would be useful.  Thanks!
Comments.UserDisplayName: Daniel Ando Scholnick
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2015-04-16T20:46:33.063Z
Comments.Text: looks like x beat me to it/saved me the effort. still not sure why SE takes so long to update me about updates
Comments.UserDisplayName: petednz - fuzion
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2015-04-18T02:28:06.577Z
Comments.Text: petednz, you can change your notification settings in SE by clicking to your profile –> "edit profile and settings", and then under "Preferences" there is a setting "Email me my unread inbox messages" which defaults to Daily, but you can set to "Every three hours".
Comments.UserDisplayName: Daniel Ando Scholnick
Tags: <civimail><profile><groups>
Title: Can one change the order of Groups shown on a profile?
ThreadText: # Can one change the order of Groups shown on a profile?
  
  (Asked by: username_0 on 2015-04-15)
  
  I would like to change the order of the set of groups that are displayed to a user. In my case, I'm working with Mailing List groups, and all five are set to "Public Pages" visibility. If they are shown on a profile using the "Group(s)" field, they come up in alphabetical order.
  
  The same ordering default is exhibited on the Mailing List Subscription page, /civicrm/mailing/subscribe.
  
  My goal here is to create a mailing list preferences profile that users would get to through a checksum placed in emails sent to them by CiviMail. In my case, the default alphabetized order creates an awkward presentation for how my organization wants to relate to our community.
  
  I'm currently running CiviCRM version 4.5.4 on Drupal 7.
  
  **Tags:** civimail, profile, groups
  
  > **Comments:**
  > **username_1**: Can you let us know the CMS involved. I.e. if it is Drupal, then Webform_CiviCRM would provide what you need.  
  > **username_0**: We're using Drupal 7.  Have not set up webforms, but it sounds like you're saying that there is an elegant solution to be found there?  
  > **username_2**: @username_1 want to turn that into a full answer? :)  
  > **username_0**: username_1 and the rest of the community, I agree with username_2, if this is the only answer to the question, then it would be helpful to others to show this as Answered.  Also, tips you can provide about "how" Webform_CiviCRM solves this problem would be useful.  Thanks!  
  > **username_1**: looks like x beat me to it/saved me the effort. still not sure why SE takes so long to update me about updates  
  > **username_0**: username_1, you can change your notification settings in SE by clicking to your profile –> "edit profile and settings", and then under "Preferences" there is a setting "Email me my unread inbox messages" which defaults to Daily, but you can set to "Every three hours".  
  
  ---
  
  ## 3 answers
  
  ### Answer by username_4 on 2015-04-16. Score: 7 | Accepted answer
  
  To extend on peterdnz answer:
  
  On drupal, you can install webform and webform\_civicrm modules and build the form you want.
  
  Once you have enabled civicrm on that form, you can choose the various fields existing in civicrm (first or last name, email... and groups)
  
  For the list of groups, you can then chose which one(s) you want to display and in which order. You can even change the name of each group (on that form) without having to change the name of the group, so you can use shortcuts as you might call the group differently within the team and with your visitors.
  
  It's fairly intuitive once you get into the logic of having to take the fields as available in civicrm and add them to the form (conceptually similar to profiles, but the interface is IMO clearer)
  
  > **Comments:**
  > **username_0**: Beautiful – thank you for the responses, username_4 and Peterdnz.  I'd up-vote this answer, but my reputation is only 6, as this is my first question :).  We will get to work on installing webform in Drupal.  
  > **username_0**: Fair enough!  I did not know that was part of the process.  Wish I could "accept" both answers, since they are both excellent, though different, approaches.  
  
  ---
  
  ### Answer by username_2 on 2015-04-18. Score: 6
  
  I agree that a Webform is the best solution if you are using Drupal, but to answer the exact question that was asked:
  
  CiviCRM profiles do not currently have a UI to alter the display of groups on a form. Doing so would require a little bit of custom code.
  
  * If you are more comfortable with PHP, use [hook\_civicrm\_buildForm](http://wiki.civicrm.org/confluence/display/CRMDOC/hook_civicrm_buildForm) to modify the options in that form element.
  * If you prefer javascript, use jQuery to modify the order of checkboxes.
  * If you simply need to hide some options, the easiest was is to use css to set `display:none`.
  
  
  ---
  
  ### Answer by username_3 on 2015-04-23. Score: 6
  
  For anyone not using Drupal and relying on the standard /civicrm/mailing/subscribe page, you can also just add a number to the front of your group name to order them as you want. So
  
  * Event updates
  * General newsletter
  * Service news
  
  becomes ...
  
  1. General newsletter
  2. Service news
  3. Event updates
  
  No coding skills required! :)
  
  username_3 O.
  
  > **Comments:**
  > **username_0**: Thanks, username_3 O.  This is a good "user" level workaround for those of us who are not up for the technical challenge of coding solutions.  
  
  ---
  
  