SerhiiNadolskyi
Hire me

MDN Group · DE · 2023–2026

MDN Group: responsive rework, PHP 8.2 and a site restructure

Since 2023 I've been the only developer on an M&A advisory firm's WordPress sites: one responsive theme, PHP 8.2, a plugin audit and a new site structure.

Together
3+years

Since January 2023. The client came back in 2024 and again in 2026.

Projects
4projects

A responsive rework, a PHP 8.2 check, a plugin audit and a restructure in 2026.

Sites
2sites

The firm's site and the client's nonprofit site, both with me as the only developer.

MDN Group is an independent investment-banking advisory firm: M&A, corporate finance and strategic advice. Its site runs on a custom WordPress theme another developer wrote years ago.

The client first hired me on Upwork in 2023 for a responsive rework, came back in 2024 for PHP 8.2 and again in 2026 for the restructure. Since then I’ve been the only developer on the firm’s site and on the client’s second site, a nonprofit information site.

Projects

  1. 2023

    Responsive rework of a legacy WordPress theme

    The old theme guessed the device on the server and sent either a desktop or a mobile stylesheet. I turned it into one responsive theme and removed qTranslate and Contact Form 7.

    First I wrote up four ways to get to a responsive site and what each would mean. I recommended removing the device check, because the quick way left an iPad in split screen stuck with mobile styles. So I removed the check, merged the two stylesheets into one and added breakpoints for the widths in between. qTranslate and Contact Form 7 went too, together with the language switcher and the old forms left in the theme and the pages.

    After one round of changes the client approved it: the client cards went back to the original design, the fonts became one set, and the active menu marker came back. I handed the finished site over as a migration package.

    Stack: WordPress, PHP, CSS

  2. 2024

    PHP 8.2 compatibility check for a Genesis site

    The client’s second site, a nonprofit information site on Genesis with the AgentPress Pro child theme, stopped with a critical error on PHP 8.2.

    I restored a backup on a separate staging host, switched it to PHP 8.2 and left production alone. Then I collected every PHP error and sorted them by source: ACF Pro deprecations and early translation notices from Genesis, AgentPress and Ninja Forms. The critical error came from the listings plugin, and once I cleared it on staging, the home page and the center search worked again.

    I reproduced one Genesis notice on a clean WordPress install with the original Genesis theme, which showed the notice lives in Genesis itself. A patch to the parent theme would be gone with the next update, so with the client’s agreement I hid the debug output on production instead. I fixed a problem on the live home page through temporary admin access.

    The client got a clear list of what breaks on PHP 8.2 and where each problem comes from, and the theme stayed clean for future updates.

    Stack: WordPress, PHP, Genesis, ACF Pro

  3. 2024–2025

    Plugin audit, PHP 8.2 upgrade and template fixes

    For the firm’s English site I audited the plugins on a staging copy, moved it to PHP 8.2 and fixed the templates.

    • I ran a full copy on a separate staging host on PHP 8.2, updated every plugin and theme and removed the unused ones.
    • We went through the Wordfence scan data together. Four active plugins had been pulled from wordpress.org, so by agreement I removed or replaced them, and wrote a short note for each plugin that stayed, including the ones a line in .htaccess could replace.
    • Some bugs came from the theme code, and I fixed them there: Russian system messages on an English site from locale branches, a hard-coded old favicon, and a 404 on page two of Publications caused by the code that hid the category base.
    • I fixed the heading order and the blog typography, gave Publications its own address and pagination, and added a maintenance page for update windows.
    • Then the live site started answering 503. I checked the copy for malware first, and the real cause was a hosting plan without enough memory for two sites. The client upgraded the plan.
    • In 2025 we set up Yoast and Search Console together and removed junk pages from the index.

    The updated copy passed Site Health with no errors and no warnings, and by April 2025 the live site ran on PHP 8.2.

    Stack: WordPress, PHP, CSS, Yoast SEO

  4. 2026

    Site restructure on a legacy WordPress theme

    Four sections of the firm’s site only redirected to blocks on the home page. The client wanted them as real pages, in the existing design.

    Before touching anything I backed up production, set up a staging copy on a separate host and put the theme under Git. All the work happened on staging.

    • I removed the redirects and rebuilt Team, Industries and Services as pages of their own, with new Services child pages listed automatically. Contacts, one long page with anchors, became a page per country.
    • The client page became one card with navigation by year. Three near-identical templates turned into one Section Template for five sections, with options per page for columns, the sidebar slider, visibility and the URL.
    • A sitemap hook hides the client-year terms and keeps the publications listed.
    • Intro paragraphs set as h2 only got smaller below 320 px, so I fixed the mobile typography in the theme itself.

    On release I moved staging to production and checked every page. The client had been editing content on staging meanwhile, and all of it came across intact. Team, Industries, Services, the country contacts, the client card and About Us now each open at their own address, with no redirect.

    Stack: WordPress, PHP, CSS, Git

Contact

Have something similar?

Use the form or message me on LinkedIn.

Already working with me on Upwork? Write there.