
Otziv.bg has a strong conceptual foundation and a partially compelling dark aesthetic, but it is currently operating well below its potential. Several critical structural, data-quality, and configuration issues must be resolved before this platform can credibly call itself premium. The backend shows signs of an accelerated, copy-paste setup without thorough cleanup, and the frontend's first impression is undermined by broken listing cards, missing content, and brand inconsistencies.
The Good The dark, textured hero background (#1a1a2e range) with the bold Cyrillic headline "Доверието започва с истински мнения" is conceptually the strongest design moment on the site. The crimson-red search button creates a powerful CTA contrast. The tabbed search form (Услуги / Събития / Хотели и настаняване) is a smart UX pattern.
The Bad
The stated brand identity is deep navy blue + polished gold + crimson red. The current implementation:
This is the single most damaging issue on the entire platform. Across every section of the homepage — Featured Listings, Hotels, and the Explore page — the overwhelming majority of listing cards display solid gray placeholder boxes where cover images should be. Out of the listings visible during the audit:
This is a two-part problem: (a) listing owners have not uploaded cover images, AND (b) the Preview Card template is set to "Alternate" with "Image" background but no fallback is configured. According to MyListing docs best practice, you must either (1) require a cover image in the submission form, (2) set a compelling category-specific fallback image in the Listing Type's "Default Cover Image" field, or (3) switch the Preview Card background to "Color" with a brand-appropriate gradient that looks intentional when no image exists.
| Section | Status | Issue |
|---|---|---|
| Hero with search | ✅ Functional | Dead space below, logo size |
| Category grid | ⚠️ Partial | Purple brand mismatch, EN strings, Blake quote filler |
| Featured Listings carousel | ❌ Broken visually | All gray cards, no images |
| Upcoming Events | ❌ Empty | "Няма обяви" shown on public homepage |
| Hotels / Accommodation | ❌ Broken | Both cards gray + broken link (404 on click) |
| Footer | ❌ Missing | No footer was visible — the page terminates after Hotels |
The absence of a footer is critical. A homepage without a footer lacks: privacy policy, terms, contact info, sitemap navigation, and trust signals — all of which are especially important for a review platform (GDPR compliance and legal coverage).
Every single admin page displays this error at the top:
This means LiteSpeed Cache (LSCWP) is partially configured but its object cache drop-in file is broken or missing. This can cause: inconsistent caching behavior, slow page loads, potential cache conflicts, and PHP errors in the log. This must be fixed immediately — either remove the object-cache.php file and reconfigure LSCWP, or restore it from the plugin package.
You have 6 listing types: Магазини, Фрийлансъри, Култура и развлечения, Услуги, Събития, Хотели и настаняване.
Architecture Problems Found:
The admin sidebar permanently displays: Custom Taxonomy: Car Brand, Custom Taxonomy: Vacancy type, Custom Taxonomy: Qualification, Custom Taxonomy: Salary. These taxonomies exist in the database and were clearly imported from incompatible listing type demos (automotive directory, job board). They have NO relevance to restaurants, hotels, shops, or services. They pollute the admin UI, confuse future editors, and may cause filtering bugs. These must be deleted via the Таксономии menu.
Both types contain:
These duplicates occurred when preset fields were added without removing the custom field versions created earlier. Delete the redundant entries.
In both Магазини and Услуги, the right-side Preset Fields panel still shows: Меню на ресторанта, Общ ретранслатор, Custom Taxonomy: Car Brand, Vacancy type, Qualification, Salary. These are visible to admins and suggest an uncleaned demo import. According to MyListing docs, unused preset fields that are based on deleted taxonomies create silent errors.
As observed in the Магазини Preview Card configuration, the card footer shows "(no footer sections added)." This means listing cards in the grid/list view show no rating stars, no category badge, no price indicator, and no location — just a title and description excerpt. A well-configured preview card per MyListing best practice should include at minimum: Star rating, Category, and one key attribute (price/distance/phone). This is why all cards look identical and sparse.
The Explore page shows the same generic filter panel (keyword + category + location + generic amenities) for ALL listing types. MyListing's Search Forms tab in each listing type allows you to build unique filter sets per type — Hotels should have: price range, room count, star rating, check-in dates; Restaurants should have: cuisine, price range, rating; Services should have: service category, availability. None of these have been configured. The current search UX is the same as having no type-specific filtering at all.
The Hotels & Accommodation listing type's Single Page is set to "Cover Image" background, which is correct. However, the "Default Cover Image" (fallback) field in the right sidebar is set to a generic office/street photo — not a hotel-appropriate image. This creates brand confusion.
For Магазини, both the Singular name and Plural name fields contain "Магазини." Per MyListing documentation, the Singular field should be "Магазин" (one shop) and Plural "Магазини" (many shops). This affects UI strings in listing submission forms and breadcrumbs.
The Маркер по подразиране на картата (default map marker) for the Услуги type is empty, while Магазини has a street photo set as the map marker. Map markers should be small icons or brand-colored pins, not full photographs — a photo as a map marker creates visual noise on the map view.
The Reviews configuration for Услуги is actually well set up: Star ratings enabled ✅, Gallery upload enabled ✅, Half-stars mode ✅, Four granular rating categories configured ✅ (Обща оценка, Обслужване, Качество на услугата, Съотношение цена-качество). This is genuinely good configuration. The problem is zero reviews exist across all listings, so this excellent setup is invisible to visitors.
WooCommerce is installed and active (visible in the admin sidebar with Продукти, Плащания sections). For a directory platform, WooCommerce is typically used for paid listing packages. This is appropriate. However, the presence of WooCommerce without confirming that all package pricing is configured and that checkout flows are tested adds maintenance overhead and potential performance cost.
| # | Issue | Severity | Location |
|---|---|---|---|
| 1 | 100% of listing cards missing cover images (gray boxes) | 🔴 Critical | Sitewide |
| 2 | "Upcoming Events" section empty on homepage | 🔴 Critical | Homepage |
| 3 | Hotel card links return 404 | 🔴 Critical | Homepage |
| 4 | No footer on the website | 🔴 Critical | Sitewide |
| 5 | Purple brand intrusion in category grid | 🟠 High | Homepage |
| 6 | "Filter by category" / "Discover events" in English | 🟠 High | Homepage |
| 7 | Gold brand color completely absent | 🟠 High | Sitewide |
| 8 | Logo unreadable at navbar scale | 🟠 High | Navbar |
| 9 | William Blake quote filler content | 🟡 Medium | Homepage |
| 10 | No breadcrumb navigation on listings | 🟡 Medium | Listing pages |
| 11 | Zero reviews on any listing (social proof = 0) | 🟠 High | Sitewide |
| 12 | Hero dead space / no scroll cue | 🟡 Medium | Homepage |
| # | Issue | Severity | Location |
|---|---|---|---|
| 1 | LSCWP object-cache.php broken | 🔴 Critical | Server |
| 2 | Ghost taxonomies (Car Brand, Vacancy, Salary) | 🔴 Critical | Admin sidebar |
| 3 | Duplicate fields (Социални мрежи ×2, Работно Време ×2) | 🟠 High | Услуги + Магазини types |
| 4 | Preview Card footer empty on all service/shop types | 🔴 Critical | Preview Cards |
| 5 | No type-specific Search Forms configured | 🟠 High | All Listing Types |
| 6 | Singular ≠ Plural name for Магазини | 🟡 Medium | Магазини type |
| 7 | Photo used as map marker instead of icon | 🟡 Medium | Услуги type |
| 8 | Default fallback images not set per listing type | 🟠 High | All types |
| 9 | 18 total listings — insufficient content mass | 🟠 High | Database |
| 10 | Theme Options inaccessible to current user role | 🟠 High | Admin |
Priority: Critical / Time: 15 minutes
SSH into your server (or use cPanel File Manager) and navigate to wp-content/. Delete the object-cache.php file. Then go to WordPress Admin → LiteSpeed Cache → Advanced → Object Cache and reconfigure it properly, or disable object caching entirely if you don't need it. This server error appears on every admin page and signals instability.
Priority: Critical / Time: 1–2 hours
"Къща за гости Ребека" and "Апартамент Ребека" return 404. Go to Admin → Обяви and either republish these listings with proper slug permalinks (run a permalink flush via Settings → Permalinks → Save), or remove them from the Elementor homepage widget and replace with real, live listings. Simultaneously, for every listing type, go to Видове обяви → [Type] → General → Default Cover Image (right sidebar) and set a high-quality, category-appropriate fallback photo so that listings without images never show a gray box.
Priority: Critical / Time: 30 minutes
For each of the 6 listing types, go to Видове обяви → [Type] → Preview Card → Preview Card tab and scroll to the "Footer sections" area. Add: (1) Star Ratings widget, (2) Category tag, (3) Location. For Услуги and Магазини, also add Телефонен номер as a quick-access footer element. This single change will transform the listing cards from empty gray boxes with a title into compelling, informative cards that convey trust.
Priority: Critical / Time: 45 minutes
Go to Admin → Обяви → Таксономии and permanently delete: Custom Taxonomy: Car Brand, Vacancy Type, Qualification, Salary. These are orphaned job-board/automotive demo remnants. Then for each listing type (Услуги, Магазини, others), go to Fields and delete the duplicate "Социални мрежи" Form Heading and the duplicate "Работно Време" Form Heading entries. Keep only the single preset-version of each. Test a listing submission form after cleanup.
Priority: High / Time: 2–3 hours
For each listing type, navigate to Видове обяви → [Type] → Search Forms and build a tailored filter set:
This is MyListing's most powerful competitive advantage and it is currently completely unused. Per the official docs (Listing Types → Search Forms), each type can have completely independent filter logic.
Priority: High / Time: 1 hour
In Elementor, locate the two purple category cards ("Разгледай Места" and "Discover events") on the homepage and replace their overlay/background colors with deep navy (#0a1628) or a gold-tinted dark tone (#1a1400). Next, identify 3–5 locations to introduce gold: the verified listing badge border, the star rating fill color, the "Featured" listing label, and the section heading underline decoration. The gold color creates the premium signal currently missing from the entire visual system.
Priority: High / Time: 30 minutes
Using Loco Translate (already installed in your admin), translate:
Also change the William Blake quote tile to a functional UI element — a "Добави своя бизнес" CTA card would be far more valuable in that grid position.
Priority: High / Time: 1–2 hours
The site has no footer. Build one in Elementor with three columns: (1) Brand column — logo, tagline, social media icons; (2) Navigation column — Начало, Разгледай, Добави Обява, Блог, За нас, Контакти; (3) Legal/Trust column — Политика за поверителност, Общи условия, GDPR cookie notice link, © 2026 Otziv.bg. This is not optional — a review platform without a Privacy Policy footer link is potentially non-GDPR-compliant.
Priority: Medium / Time: 10 minutes
In Видове обяви → Магазини → General: Change Singular name from "Магазини" to "Магазин." In the "Default Map Marker" field (right sidebar), remove the street photograph and either leave it blank (using the default pin) or upload a clean, small icon (a shopping bag silhouette on a crimson circle, ~40×40px PNG).
Priority: Strategic / Time: Ongoing
The platform's core value proposition — "Доверието започва с истински мнения" — is currently hollow because there are zero reviews on any listing. Before any marketing push, implement a review seeding strategy: (1) Email every listing owner and ask them to share their listing page with satisfied clients and request reviews; (2) Add a prominent "Остави отзив" prompt to the post-visit email if you have any automation; (3) Consider adding a "First Review" badge to listings that receive their first review, creating a gamification incentive. Also, ensure the review submission form is not requiring login (or make registration frictionless) — friction in the review submission flow is the #1 killer of review volume.
Otziv.bg has the right bones — a well-chosen theme, the right listing type architecture, solid review configuration, and a compelling headline proposition. However, it is currently operating as a framework without content or polish. The image-missing crisis, the ghost taxonomies, the broken links, the missing footer, and the absent gold brand color are not minor tweaks — they are the difference between a platform visitors trust and one they immediately close.
Execute the 10 steps above in order and you will transform this from a 4/10 rough draft to a 7.5/10 credible premium platform within a single focused work sprint. The path from 7.5 to 10 lies in content seeding, type-specific search refinement, and a purposeful brand redesign of the logo and category grid.