Files
wc-bootstrap/templates/single-product/related.html.twig
magdev 6ee95f4a2f
All checks were successful
Create Release Package / PHP Lint (push) Successful in 57s
Create Release Package / Build Release (push) Successful in 1m11s
Fix template quirks and bump version to 0.1.0
Audit and fix 14 Twig templates for escaping bugs, CSS conflicts,
and missing Bootstrap styling:
- Fix nl2br/esc_html filter order in order details
- Add WC gallery modifier classes for zoom/photoswipe JS init
- Fix HTML entity double-encoding in headings (up-sells, cross-sells, related)
- Remove wrong 'is defined' guards on function calls
- Remove duplicate deprecated hooks in dashboard
- Add |raw to brand description HTML filter chain
- Add role="alert" for accessibility, |esc_attr on notification types
- Style mini-cart remove button as Bootstrap btn
- Make shipping form-check class conditional
- Add shop_table CSS reset and gallery opacity fallback

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 18:50:19 +01:00

33 lines
961 B
Twig

{#
# Related Products (Bootstrap 5 Override)
#
# Renders the related products section below the single product.
#
# Expected context:
# related_products - Array of WC_Product objects
# columns - Number of columns for the grid
# heading - Section heading text (filtered)
#
# WooCommerce PHP equivalent: single-product/related.php
#
# @package WcBootstrap
# @since 0.1.0
#}
{% if related_products is defined and related_products|length > 0 %}
<section class="related products mt-5">
{% set heading = heading|default(__('Related products')) %}
{% if heading %}
<h2 class="h4 mb-4">{{ heading|raw }}</h2>
{% endif %}
{{ woocommerce_product_loop_start() }}
{% for product in related_products %}
{% include 'content-product.html.twig' with { product: product } %}
{% endfor %}
{{ woocommerce_product_loop_end() }}
</section>
{% endif %}