BnB Became the First Real Addon

June 24, 2026 Lubinik Journal

The BnB addon was not born because I wanted to invent an addon system for fun. It was born because the alternative was bad reuse.

After the first parent theme and plugin split, the plugin still carried too much BnB-specific behavior. That was fine as long as the only real project was a BnB site. But the next site was not going to be another BnB. It was going to be a shelter site.

That changed the question completely.

A shelter site did not need accommodations, room amenities, food recommendations, or local attraction taxonomies. It needed animals, adoption-related data, wish lists, pet tips, forms, galleries, and a different editorial workflow. But it still needed many things the BnB project had forced me to build: shortcode infrastructure, template loading, admin conventions, galleries, calendars, filters, and shared settings.

The split became obvious

The reusable plugin-side systems had to stay in a core plugin. The accommodation-specific parts had to become one addon among others.

That was the first real addon split. BnB became the accommodation layer: lodgings, amenities, services, attractions, food, calendars, galleries, archive templates, and accommodation shortcodes. The core plugin became the place for shared infrastructure that future addons could use without copying BnB logic.

This is still the rule I try to follow: do not copy the core plugin into every project, and do not pretend project-specific content is generic just because it exists in the first site.

The BnB addon was the moment Lubinik stopped being one project and started becoming a pattern.