{"action":"created","issue":{"url":"https://api.github.com/repos/johnjamesjacoby/wp-term-order/issues/1","labels_url":"https://api.github.com/repos/johnjamesjacoby/wp-term-order/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/johnjamesjacoby/wp-term-order/issues/1/comments","events_url":"https://api.github.com/repos/johnjamesjacoby/wp-term-order/issues/1/events","html_url":"https://github.com/johnjamesjacoby/wp-term-order/issues/1","id":100886249,"number":1,"title":"Inconsistent ordering of get_terms() results","user":{"login":"johnjamesjacoby","id":88951,"avatar_url":"https://avatars.githubusercontent.com/u/88951?v=3","gravatar_id":"","url":"https://api.github.com/users/johnjamesjacoby","html_url":"https://github.com/johnjamesjacoby","followers_url":"https://api.github.com/users/johnjamesjacoby/followers","following_url":"https://api.github.com/users/johnjamesjacoby/following{/other_user}","gists_url":"https://api.github.com/users/johnjamesjacoby/gists{/gist_id}","starred_url":"https://api.github.com/users/johnjamesjacoby/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/johnjamesjacoby/subscriptions","organizations_url":"https://api.github.com/users/johnjamesjacoby/orgs","repos_url":"https://api.github.com/users/johnjamesjacoby/repos","events_url":"https://api.github.com/users/johnjamesjacoby/events{/privacy}","received_events_url":"https://api.github.com/users/johnjamesjacoby/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-08-13T22:48:23Z","updated_at":"2015-08-13T22:51:27Z","closed_at":null,"body":"When using `get_terms()` to get a bunch of taxonomy terms, the order of the results isn't always by `order`.\r\n\r\nI suppose it shouldn't be when `id` or `name` or some other value is explicitly passed, but right now some WordPress core functions (like `wp_dropdown_categories()`) are not behaving properly."},"comment":{"url":"https://api.github.com/repos/johnjamesjacoby/wp-term-order/issues/comments/130871194","html_url":"https://github.com/johnjamesjacoby/wp-term-order/issues/1#issuecomment-130871194","issue_url":"https://api.github.com/repos/johnjamesjacoby/wp-term-order/issues/1","id":130871194,"user":{"login":"johnjamesjacoby","id":88951,"avatar_url":"https://avatars.githubusercontent.com/u/88951?v=3","gravatar_id":"","url":"https://api.github.com/users/johnjamesjacoby","html_url":"https://github.com/johnjamesjacoby","followers_url":"https://api.github.com/users/johnjamesjacoby/followers","following_url":"https://api.github.com/users/johnjamesjacoby/following{/other_user}","gists_url":"https://api.github.com/users/johnjamesjacoby/gists{/gist_id}","starred_url":"https://api.github.com/users/johnjamesjacoby/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/johnjamesjacoby/subscriptions","organizations_url":"https://api.github.com/users/johnjamesjacoby/orgs","repos_url":"https://api.github.com/users/johnjamesjacoby/repos","events_url":"https://api.github.com/users/johnjamesjacoby/events{/privacy}","received_events_url":"https://api.github.com/users/johnjamesjacoby/received_events","type":"User","site_admin":false},"created_at":"2015-08-13T22:51:27Z","updated_at":"2015-08-13T22:51:27Z","body":"I think this is due to limitations in the way `get_terms()` parses it's arguments. Namely:\r\n```\r\n$args = wp_parse_args( $args, $defaults );\r\n```\r\nBecause the original `$args` variable is overwritten by the results of `wp_parse_args()` there is no way to discern the difference between the default values and what was passed in. This is problematic also because:\r\n\r\n```\r\n'orderby' => 'name'\r\n```\r\nis the default `orderby` value, meaning there's never a chance to intelligently intercept this value."}}