1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Bought XF & its awesome so far.. but

Discussion in 'Troubleshooting and Problems' started by ennovations, Jul 8, 2012.

  1. ennovations

    ennovations New Member

    Hey there guys! Nice to own such an awesome piece of software. Been playing with it since last 2 days & have customized many things already.

    I want to know how can I remove the 'member's drop down list altogether & shift the "Recent Activity' option to 'Forums' so that my 'Forums' submenu reads :

    Mark Forums Read > Search Forums > Watched Threads > What's New? > Recent Activity

    Any inputs appreciated :)
  2. Jake Bunce

    Jake Bunce XenForo Moderator Staff Member

    You can hide the members tab with CSS:

    Admin CP -> Appearance -> Templates -> EXTRA.css

    Add this code:

    	display: none;
    Then you need to change the tab assignment for Recent Activity. You have two options for this:

    1) Edit this file:


    Change members to forums:

    class XenForo_Route_Prefix_RecentActivity implements XenForo_Route_Interface
    	 * Match a specific route for an already matched prefix.
    	 * @see XenForo_Route_Interface::match()
    	public function match($routePath, Zend_Controller_Request_Http $request, XenForo_Router $router)
    		return $router->getRouteMatch('XenForo_ControllerPublic_RecentActivity', 'index', 'members');
    2) Or use the Nodes As Tabs addon as described in this recent update (#3):


    This is an advanced application of the Nodes As Tabs addon, but it should work well in this instance, and it has the advantage of not requiring file edits.


    In either case (#1 or #2) you need to add the Recent Activity link to the Forums tab by editing this template:

    Admin CP -> Appearance -> Templates -> navigation

    Add the red code:

    		<!-- forums -->
    		<xen:if is="{$tabs.forums}">
    			<li class="navTab forums {xen:if $tabs.forums.selected, 'selected', 'Popup PopupControl PopupClosed'}">
    				<a href="{$tabs.forums.href}" class="navLink">{$tabs.forums.title}</a>
    				<a href="{$tabs.forums.href}" class="SplitCtrl" rel="Menu"></a>
    				<div class="{xen:if {$tabs.forums.selected}, 'tabLinks', 'Menu JsOnly tabMenu'}">
    					<div class="primaryContent menuHeader">
    						<div class="muted">{xen:phrase quick_links}</div>
    					<ul class="secondaryContent blockLinksList">
    					<xen:hook name="navigation_tabs_forums">
    						<xen:if is="{$visitor.user_id}"><li><a href="{xen:link 'forums/-/mark-read', $forum, 'date={$serverTime}'}" class="OverlayTrigger">{xen:phrase mark_forums_read}</a></li></xen:if>
    						<xen:if is="{$canSearch}"><li><a href="{xen:link search, '', 'type=post'}">{xen:phrase search_forums}</a></li></xen:if>
    						<xen:if is="{$visitor.user_id}"><li><a href="{xen:link 'watched/threads'}">{xen:phrase watched_threads}</a></li></xen:if>
    						<li><a href="{xen:link 'find-new/threads'}">{xen:phrase whats_new}</a></li>
    						<xen:if is="{$xenOptions.enableNewsFeed}"><li><a href="{xen:link recent-activity}">{xen:phrase recent_activity}</a></li></xen:if>
    You will note there is a convenient template hook you can use instead of this template edit (if you are comfortable with PHP code). Here is a code example for a template hook if you want to go this route:

    Digital Doctor, Shelley and Walter like this.
  3. ennovations

    ennovations New Member

    AWESOME Jake!

    Love the detailed explanation. I got it up & running within 5 minutes!
  4. craigiri

    craigiri Well-Known Member

    This looks like what I want to do....so let me get it straight.....

    1. I need to update my existing Nodes as Tabs to the newest version?
    (do I need to do anything there...add anything?)

    2. I need to make that code change
    (is this code change going to break during XF updates?).

  5. Jake Bunce

    Jake Bunce XenForo Moderator Staff Member

    1) Correct. Just upgrade to the latest version and do like in #3:


    That will save you a file edit for the tab selection. Normally you would have to edit the route file to change the tab selection for a specific page. But the latest update to the Nodes As Tabs addon lets you do this with link-forums. It's a slightly tricky thing to do but I have made it as easy as possible. And this solution is preferable to a file edit.

    2) The template edit, yes. Nodes As Tabs handles the tab selection. The template edit adds the actual link underneath the tab.

    Template edits survive upgrades. Though sometimes you need to revert outdated templates. It's a minor inconvenience at most.
  6. craigiri

    craigiri Well-Known Member

    Ok, I am close but no cigar!
    I easily created a link forum - as in the older version - and it shows up in the top darker bar.

    I added the template code in Red in the last example, and nothing changed.

    I must be misunderstanding how to get it to show up in the bottom line of tabs........some screen shots enclosed. I want it on the lighter lower bar as the arrow indicates....

    Update - I tried specifying "forums" as the tab, as that seems to be the group the bottom line of links is in, and that didn't do anything. It seems both the top and bottom lines are part of the forums ID.

    Update #2 - I did it. For whatever reason, the template edit didn't take the first time...must have hit the wrong button!
    Screen shot 2012-07-17 at 11.55.21 AM.png wantitthere.jpg
  7. Jake Bunce

    Jake Bunce XenForo Moderator Staff Member

    Assuming you want to do like the OP (put Recent Activity in the Forums tab) then you don't need to create a new tab (uncheck Display As Tab). Rather you need to use the option at the very bottom to assign it to an existing tab:

    Screen shot 2012-07-17 at 8.21.59 PM.png

Share This Page