WordPress.org

Ready to get started?Download WordPress

Forums

[closed] Admin bar 'My Sites' path is wrong (17 posts)

  1. Norm Sash
    Member
    Posted 1 year ago #

    Hi... I have wpms installed with sub-folders (migrated from a wp installed in a folder.)

    I've been able to overcome most issues, but this one I just have no clue...

    When I'm logged in my admin bar shows "My Sites". But clicking on it - or any of the sub menu items - results in page not found. What I figured out is that the My Sites menu doesn't point to the sub-folder installation for the blog.

    However, if I manually type in the path to network administration it works, and once I'm there then clicking on any of the items in the Dashboard work also.

    For example, if I click on My Sites > Network Admin > Sites I get a page not found.

    But manually entering the path to the network admin dashboard then clicking Dashboard > Sites works just find and the link on hover looks good to.

    Path that shows on admin bar hover:
    //nerdmans.com/wpadmin/network

    Path that shows on Dashboard hover:
    //nerdmans.com/blogsite/wpadmin/network

    Is the problem that the path is not being rewritten for the admin bar with the wp install folder?

    wp-config settings:
    /* Multisite */
    define('WP_ALLOW_MULTISITE', true);

    define('MULTISITE', true);
    define('SUBDOMAIN_INSTALL', false);
    define('DOMAIN_CURRENT_SITE', 'nerdmans.com');
    define('PATH_CURRENT_SITE', '/');
    define('SITE_ID_CURRENT_SITE', 1);
    define('BLOG_ID_CURRENT_SITE', 1);

    /* That's all, stop editing! Happy blogging. */

    /** Absolute path to the WordPress directory. */
    if ( !defined('ABSPATH') )
    define('ABSPATH', dirname(__FILE__) . '/blogsite/');

    htaccess settings:

    # BEGIN WordPress
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]

    # add a trailing slash to /wp-admin
    RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^ - [L]
    RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) blogsite/$2 [L]
    RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ blogsite/$2 [L]
    RewriteRule . index.php [L]
    # END WordPress

  2. addy75
    Member
    Posted 1 year ago #

    I posted the exact same problem 5 days ago on 2 different sites and haven't received any assistance yet. I'm not supposed to post my problem in someone else's post according to the forum guidelines so I'll keep my eyes on both of our posts and if I eventually get it resolved before you do, I will fill you in.

  3. Norm Sash
    Member
    Posted 1 year ago #

    @addy75.... Thanks. I'm glad that I'm not alone on this (although I'm not saying I'm glad you have the problem :)) I know that they don't like posting in someone else's problem, and I'm sure there are reasons, but I really don't like it. I wish they would allow posting similar problems / symptoms together.

    I've been pounding my head on this problem and still can't figure it out, so if you do hear something I really would appreciate being filled in. Maybe there is some field in the db that needs to be edited?

    Norm
    Nerdmans.com

  4. Hi... I have wpms installed with sub-folders (migrated from a wp installed in a folder.)

    Migrated?

  5. Norm Sash
    Member
    Posted 1 year ago #

    What I meant by "migrated" is that the site was a functional single wp installation in a sub-folder. I took that site and "migrated" it to multisite by enabling multisite and editing the wp-config and .htaccess files.

  6. The word you're looking for is 'activated' ;) You activated Multisite.

    Okay, you had single WP in domain.com/blogsite (let's say) and it was running out of domain.com - This was working.

    Then you activated Multisite and set up subfolders.

    Try this .htaccess:

    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    
    # add a trailing slash to /wp-admin
    RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
    
    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^ - [L]
    RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) blogsite/$2 [L]
    RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ blogsite/$2 [L]
    RewriteRule . index.php [L]

    By the way, if blogsite is NOT the name of your folder, use the real name instead.

  7. Norm Sash
    Member
    Posted 1 year ago #

    Thanks Mika... I'm scanning through the .htaccess that you provided, and either I'm missing something or it is the same as the .htaccess that I put in my original post. Am I just missing the change?

  8. addy75
    Member
    Posted 1 year ago #

    Hey Norm. I don't know if this helps but I just fixed my issue. Assuming we both followed the same directions from codex on giving wordpress it's own directory, we have 2 .htacces files: one in the root and a copy in the sub. My problem was that I kept on modifying the .htaccess file in the sub. I just modified the .htaccess file in the root with the same configs you have above and it's working now. I feel stupid. I hope this is your situation also so you can move on. I've been stuck on this for 2 weeks.

  9. Norm, you're not, btu I'm hoping that there's something we were BOTH missing.

    Or maybe you had addy's problem...

  10. Norm Sash
    Member
    Posted 1 year ago #

    Thanks for the pointers addy and mika... looks like this is heading in the right direction.

    @addy... I think you are onto some thing with the location of the .htaccess file. I've definitely had some luck with this problem by moving the .htaccess file to the site root. But in trying different things I think that I've now locked myself out.

    There are some readings that I've done that say .htaccess has to be in the site folder, and other information says that it has to be in the blog sub-folder. Some things (like w3tc) appear to fail if there is no .htaccess in the blog folder.

    And so far I haven't found a definitive guide on where the .htaccess file should be. I thought that the rules were inherited from the parent folder... is that right? If so, then I would think just having an htaccess file in the site folder would work. However, like I mentioned, I think I locked myself out by doing that and some functionality seems to fail if there is no htaccess in the blog folder.

  11. addy75
    Member
    Posted 1 year ago #

    Hey Norm,

    This is what I followed from the start to get my .htaccess situated:

    http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory

  12. Norm Sash
    Member
    Posted 1 year ago #

    Thanks @addy... I'm going to have to reset things because I've locked myself out of login. Everything seemed to be OK until I logged out, and now I can't log back in.

  13. The .htaccess goes where the URL should be.

    So if you installed wp in /home/username/public_html/wp/ then .htaccess is in /home/username/public_html/

    This is 100% the SAME as it is for any install of WP in it's own directory.

  14. Norm Sash
    Member
    Posted 1 year ago #

    Thanks Mika... your instructions are the same as what my "logical" understanding is. But maybe you can give me a better understanding...

    The instructions at http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory

    that addy provided state to copy - do not move - the htaccess file into the site root. But that means there are two htaccess files; one in the site root and one in the wp install folder. Which one has to be there? If I delete the htaccess in the wp folder things somewhat work, but if I install some plugins (e.g. w3 total cache) it writes to the htaccess in the wp folder, not in the root folder. If I consolidate the settings into the one root htaccess then w3 total cache fails.

    Do we have to somehow maintain exact copies of htaccess in both the root and wp install folders?

    Looking for some clarity here as I can't seem to get any combination of htaccess that works for the different scenarios.

    Thanks! -Norm

  15. that addy provided state to copy - do not move - the htaccess file into the site root. But that means there are two htaccess files; one in the site root and one in the wp install folder. Which one has to be there?

    The one in site root HAS to be there.

    some plugins (e.g. w3 total cache) it writes to the htaccess in the wp folder, not in the root folder. If I consolidate the settings into the one root htaccess then w3 total cache fails.

    That would be a bug in THAT plugin then :)

  16. jacobuid
    Member
    Posted 11 months ago #

    ok, this is actually a bug in the WordPress Core files... but i dont have time to file a bug and get it fixed...

    you need to go to "/wp-includes/link-template.php" search for "network_admin_url"

    here is the block of code you are looking for:

    [Moderated]

    the problem is that the path of the network is staticly set as "wp-admin/network/" this has to be changed to allow for the custom sub-folder that you installed your WP files.

    the fix is inside the code below... replace the above code with the code below:(this new code uses the admin_url() function to set the path relative the the custom sub-folder you instaled WP in)

    [Moderated]

  17. esmi
    Forum Moderator
    Posted 11 months ago #

    @jacobuid: This topic is referencing an old copy of WordPress. The current version of 3.6. And please do not encourage people to edit WordPress core files. It would actually have taken you less time to file a proper Trac ticket than it would have taken to post your "fix".

Topic Closed

This topic has been closed to new replies.

About this Topic