Ticket #14435 (closed task (blessed): fixed)
Network Admin
| Reported by: |
|
Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | 3.1 |
| Component: | Multisite | Version: | 3.0 |
| Severity: | normal | Keywords: | ongoing-project |
| Cc: | ran@…, pavelevap@…, me@…, Kawauso, steph@…, andrea_r, tim@… |
Description
Move the Super Admin menus and related pages out of the regular admin and into wp-admin/network/. /network should show only the network level admin pages. It should have its own menu.php and the ms-* admin pages should move in. Visiting wp-admin/network/ for any blog should redirect to wp-admin/network for the main site.
Attachments
Change History
comment:1
in reply to:
↑ description
markmcwilliams — 19 months ago
+1 Ryan :)
Gotta agree with you on that!
Screen shot of wp-admin/network/. Menus on the left are all network level admin pages. The header has the Network name rather than a blog name. Favorite actions is currently not shown for network admin, although we could populate it with some network specific favorites.
The regular blog admin no longer has a Super Admin menu.
Thinking about a "Network Admin" link in the header between Howdy and Log Out.
This looks great.
For the commits that do this, I'd like to see the ms-*.php files first moved into /network, then tweaked, that way we retain SVN history when following copies. Just so blame is easier.
I'm not sure if the redirect in ms-edit.php is enough. That's currently a form action handler akin to options.php. Moving it with a simple redirect may break some things, though maybe I'm not thinking it through.
With the plugins.php refactor, we can probably close #14170 as a duplicate. Or perhaps we can find ways to integrate network-level activation hooks, that'd be cool.
If the two choices were merge the network admin into the existing admin panel (eg. what was done with the super admin checkbox) and moving to a separate location, I'm +1 on the separate location.
Also, I'd like to toss in adding a network settings api similar to the settings api.
Patch adds a "Network Admin" link to the header and svn moves the ms-* files into the network directory to preserve history.
The redirects in the ms-* files probably should pass along query args. I don't plan to worry over POSTs though.
Patch adds network versions of user-edit.php and profile.php. This prevents jumping over into the blog user-edit.php, something that always bugged me before because it threw the active menus off.
'Grant this user super admin privileges for the Network.' is now shown only in the network admin. There are per blog options such as the role and personal options that should not be shown when in the network admin. Maybe listing the user's blogs somewhere in the network user-edit.php and linking each to an editor for the per-blog user info would be handy. We've long wanted to split up the personal per-blog preferences and the global bio stuff anyway.
Patch experiments with saving the blog ID for the last blog admin area visited and adding a link back to that blog admin area in the header.
comment:10
follow-up:
↓ 11
ryan — 19 months ago
For multisite installs, I'm thinking the Grand Unified Updater should be shown only in the Network Admin. It can take the "Update" top-level menu and we can work in the network upgrader in there somehow.
comment:11
in reply to:
↑ 10
scribu — 19 months ago
- Milestone changed from Awaiting Review to 3.1
Replying to ryan:
For multisite installs, I'm thinking the Grand Unified Updater should be shown only in the Network Admin.
The same goes for the plugin and theme install screens. Currently, you have to switch back and forth between the network admin and the regular admin.
PS: I think is_admin_network() would be a slightly less confusing name than is_network_admin(), because the later is too similar with is_super_admin().
Sounds like a great idea, +1 for giving multisite it's own admin.
However, having context-sensitive tools for network admins in each blog's Dashboard can prevent unnecessary complexity and save a lot of time.
An approach where the multisite has it's own admin, but each blog's Dashboard also has an always present toolbox that only shows up for network admins would be perfect. This toolbox can have links to areas of the multisite admin that will already be populated with data about the referring blog, or have shortcuts for common actions such as "Mark as Spam" or "Add user".
To prevent confusion and in keeping with the general idea of separating multisite admin from blog admin, this toolbox can hide in some popup outside of the main menu, so it'll be readily accessible but still easily identified as external to the particular blog's dashboard.
comment:14
follow-up:
↓ 15
pavelevap — 19 months ago
- Cc pavelevap@… added
Due to this change, many string went from ms-locale.pot to normal locale.pot file. There should be also change in generating pot files?
comment:15
in reply to:
↑ 14
nacin — 19 months ago
Replying to pavelevap:
Due to this change, many string went from ms-locale.pot to normal locale.pot file. There should be also change in generating pot files?
Indeed... I recall Nikolay saying it was looking for files with the ms prefix. We'll also need to check the network directory now.
comment:16
follow-up:
↓ 17
ryan — 19 months ago
How about is_network_admin_screen() to avoid confusion? Too long?
comment:17
in reply to:
↑ 16
RanYanivHartstein — 19 months ago
Replying to ryan:
How about is_network_admin_screen() to avoid confusion? Too long?
How about is_ms_admin_screen()?
comment:18
ryan — 19 months ago
comment:19
ryan — 19 months ago
comment:20
ryan — 19 months ago
comment:21
Viper007Bond — 19 months ago
Sub'ing
comment:23
Kawauso — 18 months ago
- Cc Kawauso added
Adding a plugin submenu with the 'network_admin_menu' hook results in a 'Cannot load [myplugin]' error (in this case to network/plugins.php).
add_submenu_page() adds the hook correctly as 'plugins_page_[myplugin]' but on load, get_plugin_page_hookname() causes the hook to be incorrectly identified as 'admin_page_[myplugin]'.
A little FYI on trying, and testing out all this new stuff, when in /wp-admin/network/ and you click on the 'stay updated' link in the footer, it links to /wp-admin/network/update-core.php however that returns a 404 error!
Plus while we're here, all these Update links in the menu(s) are starting to get quite confusing, although after a little hunt Andrew Nacin has already opened up a ticket (semi-)relating to that ... #14554 - However, with a Network, I'd like to see 1 Update button and 1 only? IE /wp-admin/network/update(-core).php
- Version set to 3.0
- Type changed from defect (bug) to enhancement
Not exactly a bug fix is it, more an enhancement to what we have already! :)
comment:26
follow-up:
↓ 31
kawauso — 18 months ago
Few more plugin issues:
Individual plugin 'Edit' link on Plugins section is broken, links to /wp-admin/network/plugin-editor.php.
Getting nonce pages when using individual Delete links, which fail to delete when 'Please try again' is clicked.
Plugins active on the main site (but not network activated) are displaying and being counted in Active view, but appear deactivated.
Update (single link and bulk option) is broken, uses /wp-admin/network/update.php
comment:27
sillybean — 18 months ago
- Cc steph@… added
- Version 3.0 deleted
Am I overlooking something, or is there no longer a way to promote someone to superadmin in the new user screens?
comment:29
scribu — 17 months ago
The Role dropdown should not be displayed in /network/user-edit.php since roles are per-blog.
Perhaps replace it with a Is Network Admin checkbox ?
comment:30
scribu — 17 months ago
Related: #14974
comment:31
in reply to:
↑ 26
moose123 — 17 months ago
Replying to kawauso:
Few more plugin issues:
Individual plugin 'Edit' link on Plugins section is broken, links to /wp-admin/network/plugin-editor.php.
Same here. This is for 3.1-alpha trunk version in the Site Admin section. I get a 'page not found error.' It seems to be looking for "wp-admin/network/plugin-editor.php."
http://wp.mysite.com/wp-admin/network/plugin-editor.php?file=akismet/akismet.php http://wp.mysite.com/wp-admin/network/plugin-editor.php?file=hello.php
comment:32
follow-up:
↓ 33
nacin — 17 months ago
I was going to wrap an admin_url() around the plugin-editor.php link, but I think the plugin and theme editors should instead be moved to wp-admin/network.
comment:33
in reply to:
↑ 32
moose123 — 17 months ago
Replying to nacin:
I was going to wrap an admin_url() around the plugin-editor.php link, but I think the plugin and theme editors should instead be moved to wp-admin/network.
I should add that the plugin edit link does work in the one individual network blog that I have running, opening up the plugin editor in this page:
http://wp.mysite.com/test1/wp-admin/plugin-editor.php?file=akismet/akismet.php
Thanks again.
comment:34
follow-up:
↓ 36
andrea_r — 17 months ago
Just confirming that right now there's no way to add another Super Admin. Or remove one.
Also noting that any existing plugins that hooked into the former Super Admin menu to form their own sub-menu are now cut loose and unavailable. The plugins run, you just can't access any of the menus they created. There are a few where the menus are now showing up under other random top-level menus.
So whatever hook they tapped into, it would be awesome if it could show up in here.
comment:36
in reply to:
↑ 34
scribu — 17 months ago
Replying to andrea_r:
Also noting that any existing plugins that hooked into the former Super Admin menu to form their own sub-menu are now cut loose and unavailable. The plugins run, you just can't access any of the menus they created. There are a few where the menus are now showing up under other random top-level menus.
So whatever hook they tapped into, it would be awesome if it could show up in here.
That's going to be a little tricky because previously all the items were submenus and now they are top-level menus.
Also, this would probably be easier to handle if we had an API for manipulating admin menus. See #12718
comment:37
nacin — 16 months ago
#15129 - move updates to network admin.
-
attachment
14435.6.diff
added
Adds plugin editor to the network admin screen.
-
attachment
14435.patch
added
Adds plugin and theme editor to the network admin screen.
comment:38
ryan — 16 months ago
comment:39
ryan — 16 months ago
Submenu highlight is off for those.
-
attachment
14435.7.diff
added
Fixed menu/submenu highlighting for network admin screen.
comment:40
ryan — 16 months ago
comment:41
kawauso — 16 months ago
Related: #15166
comment:42
nacin — 16 months ago
comment:43
nacin — 16 months ago
comment:44
nacin — 16 months ago
When on the main site of a network but installing a plugin through wp-admin/update.php, I get "Network Activate". That should only appear when at wp-admin/network/.
On the other hand, I shouldn't be able to "Add New" plugins except through wp-admin/network, huh?
comment:45
nacin — 16 months ago
comment:46
PeteMall — 16 months ago
I haven't removed any of the functionality from the site admin yet... Wanted to ensure everything is working in Network Admin before removing it. We need to remove Core Updates, Plugin/Theme Updates, Plugin Install and Theme Install from the Site Admin.
-
attachment
net-admin-edit-site.png
added
A glimpse at the current state of the network admin
comment:47
nacin — 16 months ago
comment:48
jane — 16 months ago
- Keywords ongoing-project added
- Type changed from enhancement to task (blessed)
comment:49
follow-ups:
↓ 50
↓ 52
scribu — 16 months ago
Network de/activation of a plugin redirects you to the regular admin.
comment:50
in reply to:
↑ 49
markmcwilliams — 16 months ago
Replying to scribu:
Network de/activation of a plugin redirects you to the regular admin.
On my install everything works as you'd expect, and no redirects to the regular admin.
comment:51
scribu — 16 months ago
comment:52
in reply to:
↑ 49
PeteMall — 16 months ago
Replying to scribu:
Network de/activation of a plugin redirects you to the regular admin.
self_admin_url() was accidentally reverted to admin_url() but it went back in today.
-
attachment
14435.10.diff
added
Remove extra bulk actions and delete plugins option.
-
attachment
14435.11.diff
added
Remove plugin update notification from site admin in multisite installs.
comment:53
nacin — 16 months ago
comment:54
nacin — 16 months ago
comment:55
PeteMall — 16 months ago
- Keywords ux-feedback added
Last commit removed from 'There is a new version of _ available. View version _ details.' from the site admin for multisite installs. Do we really need to show this message to site admins who can't update the plugin?
-
attachment
14435.13.diff
added
Remove theme update notification, core update from site admin.
Related: #14897
comment:57
PeteMall — 16 months ago
- Keywords ux-feedback removed
Jane said that we should show a prompt to contact the network admin. We had decided this at wcsf but it never made in to trunk.
comment:58
westi — 16 months ago
comment:59
follow-up:
↓ 60
caesarsgrunt — 16 months ago
Most links inside the WordPress admin are relative. This makes it trivial to change the path of the admin from /wp-admin/ to anything else, such as /admin/, using a simple htaccess rewriterule and a couple of constants in wp-config.php.
However, the link from the Site Admin to the Network Admin (and vice-versa) uses the full url, including wp-admin, even if the admin is being viewed from a different path.
Is there any reason for this, or can be changed to a relative path like (almost) everything else in the admin?
comment:60
in reply to:
↑ 59
;
follow-up:
↓ 61
westi — 16 months ago
Replying to caesarsgrunt:
Most links inside the WordPress admin are relative. This makes it trivial to change the path of the admin from /wp-admin/ to anything else, such as /admin/, using a simple htaccess rewriterule and a couple of constants in wp-config.php.
However, the link from the Site Admin to the Network Admin (and vice-versa) uses the full url, including wp-admin, even if the admin is being viewed from a different path.
Is there any reason for this, or can be changed to a relative path like (almost) everything else in the admin?
Links for js and css are hardcoded as well.
We don't support relocating wp-admin
comment:61
in reply to:
↑ 60
caesarsgrunt — 16 months ago
Links for js and css are hardcoded as well.
That doesn't really matter, because these URLs aren't user-visible.
We don't support relocating wp-admin
I realise that. But surely a simple thing like this, which has no affect on the standard setup and makes it easier for those who do want to use a different path (even if not 'supported') to access the admin, makes sense?
Incidentally, why not support use of a different path to access wp-admin? (I'm not talking about renaming the directory, just using htaccess or an alias.) For some clients it is required, and for all users it makes life easier. wp-admin isn't as logical/intuitive (to the end user) or as easy to remember as admin. A constant in wp-config to set the path to be used in admin links would be trivial to implement, assuming relative links couldn't be used throughout.
Ignoring my arguments above and assuming you don't want to officially 'support' the use of a different url to access the admin, is there any reason not to use relative links anyhow? Even if only for consistency with most other links within the admin?
comment:62
follow-up:
↓ 63
Viper007Bond — 16 months ago
If you think work should be done to allow wp-admin to be moved/renamed, that's a discussion for another ticket, not this one. ;)
comment:63
in reply to:
↑ 62
caesarsgrunt — 16 months ago
Replying to Viper007Bond:
If you think work should be done to allow wp-admin to be moved/renamed, that's a discussion for another ticket, not this one. ;)
You're absolutely right Alex, sorry for the slightly offtopic part there and thanks for keeping the ticket focused.
That said, my original comment was specifically about the urls in the admin bar (ie this ticket).
So let me précis my reply to westi, including only the parts directly relevant to this ticket :
Whilst I realise that, as westi pointed out, use of a different url to access the admin is not officially supported, I see no reason not to make minor changes to make it easier for those of us who have to use 'unsupported' urls nonetheless, since the change in question has zero impact on standard installations which do use the 'supported' path to access the admin.
Assuming that (as seems probable) it is decided not to use relative links instead of absolute ones, I would be interested to know the reasoning behind the decision. Purely for my own education; since I can see no reason not to use relative links myself. :)
comment:64
caesarsgrunt — 16 months ago
My first paragraph there is a little ambiguous - to be absolutely clear: the "minor changes" I'm talking about in relation to this ticket are changing the urls in the "Network Admin" and "Site Admin" links.
Also, my reference to the admin bar was incorrect, sorry. The links I am referring to are in the admin header area at the right-hand side.
Just goes to show that I shouldn't be posting at 2 am, I guess.
comment:65
scribu — 15 months ago
is_network_admin() always returns false on AJAX requests: #15269
Maybe we should have a wp-admin/network/admin-ajax.php ?
comment:66
ryan — 15 months ago
comment:67
ryan — 15 months ago
-
attachment
14435.16.diff
added
Use submit_button() and use create_sites. see [16103]
comment:68
westi — 15 months ago
-
attachment
14435.17.diff
added
Remove role selector from network admin user-edit.
comment:69
ryan — 15 months ago
comment:70
follow-up:
↓ 71
alexrabe — 15 months ago
As freeze is near... I'm wondering, is there already any way to use add_submenu_page() or add_menu_page() for the new network menu or is this part still ongoing ?
comment:71
in reply to:
↑ 70
nacin — 15 months ago
Replying to alexrabe:
As freeze is near... I'm wondering, is there already any way to use add_submenu_page() or add_menu_page() for the new network menu or is this part still ongoing ?
Yes. You'd just attach to the network_admin_menu hook instead of admin_menu.
comment:72
alexrabe — 15 months ago
Uhh, yes now I see. Thanks, sorry looks obviously
comment:73
ryan — 15 months ago
comment:74
ryan — 15 months ago
comment:75
ryan — 15 months ago
comment:76
ryan — 15 months ago
comment:78
nacin — 15 months ago
comment:79
nacin — 15 months ago
comment:80
scribu — 15 months ago
comment:81
scribu — 15 months ago
comment:82
nacin — 15 months ago
comment:83
scribu — 15 months ago
Related: #15469
comment:84
follow-up:
↓ 85
markmcwilliams — 15 months ago
I noticed today that when I delete a site it's throwing up the "You do not have permission to delete that site." message after I have deleted the site, with the confirmation message, but I can't see straight away where/why?!
comment:85
in reply to:
↑ 84
markmcwilliams — 15 months ago
comment:86
PeteMall — 15 months ago
Network Admin > User Edit breaks when updating a user because we removed the role selector but we still check for $_POST[ 'role' ] in user-edit.php.
comment:87
PeteMall — 15 months ago
-
attachment
14435.18.diff
added
Add theme update notification to net admin menus.
comment:88
follow-up:
↓ 89
andrea_r — 15 months ago
network Admin -> Edit Site -> Users is currently borked.
comment:89
in reply to:
↑ 88
andrea_r — 15 months ago
Replying to andrea_r:
network Admin -> Edit Site -> Users is currently borked.
Crap, nevermind, that was me & my diff. revert, revert! :)
-
attachment
14435.19.diff
added
Remove plugin-install from site admin for is_multisite().
comment:90
PeteMall — 14 months ago
comment:91
follow-up:
↓ 92
nacin — 14 months ago
- Status changed from new to closed
- Resolution set to fixed
Open new tickets for new issues.
markmcwilliams, if that's still a problem, please open a ticket.
