DEV Community

Cover image for Building a Lightweight Bilingual WordPress Website Without Too Many Plugins
Muhammad Medhat
Muhammad Medhat

Posted on

Building a Lightweight Bilingual WordPress Website Without Too Many Plugins

How I used Advanced Custom Fields (ACF) and a lightweight custom-developed theme to build a QR restaurant menu.

WordPress is a powerful content management system with an extensive ecosystem of themes and plugins. This flexibility makes it possible to build many different types of websites, but it also raises an important question: Do we always need multiple plugins to build a professional WordPress website?

In my latest project, I worked on a QR restaurant menu that supports two languages. Instead of relying on a large collection of plugins, I used a lightweight custom-developed theme and Advanced Custom Fields (ACF) to manage the menu content.

This project gave me an opportunity to apply a simple development principle: use the tools that match the actual requirements of the website.

1. Why Consider a Lightweight WordPress Approach?

Plugins are one of the reasons WordPress is so flexible. They allow developers to add functionality without building everything from scratch.

However, installing plugins for every small requirement can introduce unnecessary complexity. Each additional plugin may bring its own assets, settings, updates, and compatibility considerations.

When developing a website, I consider several factors:

  • Performance: Avoid loading unnecessary resources and functionality.
  • Maintainability: Keep the codebase organized and easier to maintain.
  • Flexibility: Have control over the website's design and functionality.
  • Security: Use reliable, maintained plugins and avoid unnecessary dependencies.
  • Development efficiency: Choose custom development when it is practical and appropriate.

This doesn't mean that using many plugins is always wrong. Plugins can save development time and provide reliable, established functionality.

The goal is not to eliminate plugins. It is to avoid unnecessary dependencies and choose the right solution for each project.

2. My Approach: A Lightweight Custom-Developed Theme

For my latest QR restaurant menu project, I chose to develop a lightweight WordPress theme tailored to the website's needs.

Rather than depending on a multipurpose theme and several additional plugins, I focused on creating the required layout and functionality within the theme itself.

The project included:

  • A custom-developed, lightweight WordPress theme.
  • A structured restaurant menu managed using ACF.
  • Support for two languages.
  • A responsive interface designed for visitors accessing the menu through a QR code.
  • A focused content structure based on the restaurant's requirements.

Developing a theme around the actual project requirements gave me more control over the website's structure, styling, and content presentation.

It also helped me think carefully about which functionality needed a plugin and which could be implemented directly in the theme.

3. Using Advanced Custom Fields (ACF) for Menu Content

One of the main tools I used in the project was Advanced Custom Fields (ACF).

ACF allows developers to create structured custom fields in WordPress, making it easier to manage content through the WordPress administration area.

For a restaurant menu, each item can have several properties, such as:

  • Name
  • Description
  • Price
  • Category
  • Image

Instead of managing every item through a page builder, I used custom fields to organize the menu content in a consistent way.

This approach helps separate the content from its presentation. The restaurant's menu information can be managed in WordPress, while the custom theme determines how visitors see it.

Why ACF?

I chose ACF because it provided the structured content management capabilities needed for the project without requiring a more complex implementation.

It allowed me to design the content fields according to the restaurant menu's requirements and then display that information through custom theme templates.

For projects with structured content, tools like ACF can be a practical way to extend WordPress while keeping the development approach focused.

4. Managing Two Languages Without a Dedicated Translation Plugin

One of the specific requirements of the project was supporting two languages for the restaurant menu.

Instead of using a dedicated translation plugin, I managed the multilingual content through separate ACF fields for each language.

For example, a menu item could include the following fields:

Field Purpose
name_en English menu item name
name_ar Arabic menu item name
description_en English description
description_ar Arabic description

The custom theme then displays the appropriate fields based on the language selected by the visitor.

Why I chose this approach

The restaurant menu had a relatively straightforward content structure, so I could design a multilingual solution around its specific requirements.

Using separate fields for each language gave me control over how the content was stored and displayed. It also allowed me to avoid introducing a dedicated translation plugin for this particular project.

However, this approach is not necessarily suitable for every multilingual website.

Larger websites with many languages, complex translation workflows, frequent content updates, or multiple content types may benefit from a dedicated multilingual plugin or a different content architecture.

The important lesson is that the multilingual implementation should be selected based on the project's scope, requirements, and future maintenance needs.

5. Developing Functionality Instead of Adding More Plugins

During WordPress development, it can be tempting to search for a plugin whenever a new requirement appears.

Sometimes, using a plugin is the most efficient and reliable solution. In other situations, the required functionality is simple enough to implement within a custom theme.

For my QR restaurant menu, I considered the functionality that the website actually needed and focused on developing a tailored solution.

Before adding a plugin, I usually consider questions such as:

  1. Is this functionality essential to the project?
  2. Can it be implemented simply and safely?
  3. Does an existing plugin offer meaningful benefits?
  4. Will the solution be maintainable in the future?
  5. Does the feature require a mature, established system?

For example, custom menu layouts and menu-specific presentation can be handled by the theme. On the other hand, complex functionality such as payments, reservations, or advanced translation management may justify using an established plugin.

The goal is to make informed technical decisions rather than automatically choosing either plugins or custom development.

6. Performance and Maintainability

A lightweight theme can help reduce unnecessary assets and simplify the website's structure, provided that it is developed efficiently.

In WordPress projects, I pay attention to several areas that can affect performance and maintainability:

  • Loading only the CSS and JavaScript required by the website.
  • Keeping the theme structure organized.
  • Avoiding unnecessary dependencies.
  • Using reusable template components.
  • Managing structured content through appropriate fields.
  • Considering the mobile experience from the beginning.

For a QR restaurant menu, mobile usability is particularly important because visitors commonly access the website through their smartphones.

However, a website's performance depends on more than its plugin count. Hosting, image optimization, caching, database queries, and the quality of the theme code all contribute to the overall experience.

Therefore, using fewer plugins does not automatically guarantee a faster website. Efficient development, appropriate architecture, and performance testing are more important than simply counting plugins.

7. What I Learned from the Project

Building the bilingual QR restaurant menu reinforced my interest in developing WordPress websites that are tailored to specific business needs.

The project brought together several aspects of WordPress development:

  • Creating a lightweight custom-developed theme.
  • Using ACF to manage structured menu content.
  • Implementing bilingual content through separate language fields.
  • Designing a website for mobile visitors.
  • Making plugin decisions based on project requirements.

It also reminded me that WordPress development involves more than installing themes and plugins.

A developer needs to think about how content is organized, how functionality is implemented, how users interact with the website, and how the solution can be maintained over time.

Even a relatively simple website can benefit from thoughtful planning and a clear development approach.

Conclusion

You don't always need many plugins to build a professional WordPress website.

In my latest project, I used Advanced Custom Fields (ACF) and a lightweight custom-developed theme to build a bilingual QR restaurant menu.

By managing the two languages through separate custom fields and developing the required functionality around the project's needs, I was able to create a focused solution without relying on a dedicated translation plugin.

This approach is not a universal replacement for plugins. Instead, it demonstrates the value of choosing an appropriate balance between custom development and existing tools.

The best WordPress solution is not necessarily the one with the fewest plugins or the most custom code. It is the one that meets the project's requirements while maintaining a practical balance of performance, flexibility, maintainability, and development effort.

As a WordPress developer, I believe that understanding when to use a plugin and when to develop a tailored solution is an important part of building better websites.

Top comments (0)