Dev Log · Advanced Themer 13

Header Glow-Up, Mobile Fixes & a Little Rocket

Today was a big one for Advanced Themer 13. We rebuilt how the header is put together so it can carry a real logo, gave the phone number a proper home, got everything behaving on phones, and added a floating admin launcher for editing on the fly. Oh, and we upgraded to the newest WordPress the same afternoon. No pressure.

October 6, 2026  ·  WordPress 7.1.2  ·  Astra 4.13  ·  SolarBluSeth

 
+1
Header logo slot
 
Fixed
Phone placement
 
3 bugs
Squashed on mobile
 
7 links
In the Advt Admin menu
 
7.1.2
WordPress, still compatible

A real logo, right before the title

Header Options now has a Logo field with a Media Library picker and a height slider, plus a live preview at the top of the settings page. Rather than squeezing an extra <img> into the markup, we feed the logo into the theme's own logo slot. That way Astra handles placement, it stays accessible, and it doesn't break on the next theme update.

The trick is that WordPress lets you filter any theme mod on the way out. Here's the general pattern (simplified):

// Point the theme's custom_logo at an image chosen in our own settings.
add_filter( 'theme_mod_custom_logo', function ( $value ) {
    $url = get_option( 'my_plugin_logo' );
    return $url ? attachment_url_to_postid( $url ) : $value;
} );

Docs: theme_mod_{$name} · attachment_url_to_postid() · get_custom_logo

 

Lesson of the day: "Why won't it save?!"

The first version of the logo field showed up fine but quietly refused to save. The culprit: the new option was registered in an older copy of a settings file that the plugin doesn't actually load anymore. When you post to options.php, WordPress only saves options it knows about through register_setting(). Anything else is dropped without an error. Moral: when a field won't stick, check where it's registered, not just whether it is.

The phone number found its seat

The phone number used to live in a separate row under the menu, where it ended up stranded with odd spacing. Funny thing: adding it to the menu by hand always looked right. So we did the same thing in code. The plugin now adds the phone (and the CTA button) to the end of the primary menu, so it sits in its own slot at the far right with a subtle divider.

add_filter( 'wp_nav_menu_items', function ( $items, $args ) {
    if ( 'primary' !== $args->theme_location ) return $items;
    return $items . '<li class="menu-item my-phone">…</li>';
}, 10, 2 );

Docs: wp_nav_menu_items. It still pulls from the Header Options settings, so editing the number updates desktop and mobile at once.

Mobile: three gremlins, three fixes

 

The invisible hamburger

CSS

The menu toggle was there the whole time, just drawn in the theme's default blue on top of a dark banner. It now uses the header text and hover colors, so it shows up on any banner.

 

The "every page ever" menu

MenusFallback

Astra's mobile header uses its own menu location. With nothing assigned there, WordPress fell back to listing every single page on the site, test pages included. Now, if the mobile slot is empty, it mirrors the primary menu automatically, CTA and phone included.

 

Client Logo

Responsive

A big logo plus a 34px title on a 375px screen meant the site name wrapped one syllable per line. On smaller screens the logo and title now scale down so they fit neatly beside the toggle.

 

Debugging tip: if a theme seems to ignore your wp_nav_menu_args filter, it may be skipping wp_nav_menu() entirely and calling the fallback itself when has_nav_menu() comes back false. A quick temporary log of the arguments tells you which path you're on. That's what pointed us to the fix.

Meet "Advt Admin"

New this round is a little rocket button pinned to the bottom-right corner of the front end. Tap it and a menu pops up with everything we reach for most:

 

Edit in place

  • Edit this page, with the page ID shown right in the label
  • Edit with Composer (Visual Composer / WPBakery)
  • Edit with Elementor

 

Create something new

  • Add new media
  • Add new page
  • Add new post

 

Polite by design

  • Only logged-in editors ever see it
  • Each link checks current_user_can()
  • Hides inside page-builder previews
  • Everything opens in a new tab, and Esc closes the menu

It hooks into wp_footer, so it works with any theme, not just Astra. It also politely moves the theme's scroll-to-top arrow out of its way.

Upgrade day: WordPress 7.1.2

We also moved the dev site to the latest WordPress today, mid-sprint, because why not. Advanced Themer 13 loaded cleanly, settings saved, and the header, menus and admin launcher all behaved. We'll keep watching it over the next few days, but so far so good.

 

WordPress 7.1.2Updated today · running clean

 

Astra 4.13Header builder · desktop + mobile

 

Advanced Themer 13Compatible · no errors

 

Keeping an eye on itReal-world testing continues

Today at a glance

Step 1

Logo field: Media Library picker, height control, live preview, wired into the theme's logo slot.

Step 2

Save bug: tracked down to an option registered in a file that isn't loaded. Moved it to the right place.

Step 3

Phone number: moved from its own row into the menu, in its own slot on the right.

Step 4

Full-width containers: the header and content can now use the whole width of the screen.

Step 5

Mobile: a visible toggle, the real menu, and a title that fits.

Step 6

Advt Admin: the rocket launcher, with Composer and Elementor shortcuts.

Step 7

WordPress 7.1.2: upgraded, tested, still compatible.


More soon. Advanced Themer keeps getting better one dev log at a time.
Built with , WordPress hooks, and stubbornness by SolarBluSeth.
SolarBlu
Scroll to Top