Brings the EN site to 34 live pages, completing the original sitemap from PDF Strategie & Contenu Partie C.1. Editorial section (5 pages, page-editorial-detail.php template) - /why-asterion/, /about/, /customers/, /trust/, /partners/ - inc/editorial-data.php centralizes the copy from D.18-D.21, D.28 - Reuses the industry-detail partial (same section schema) Conversion section (4 pages, page-conversion-form.php template) - /request-demo/, /request-te-kit/, /request-quote/, /contact/ - inc/forms-data.php declares fields per page (text/email/select/textarea) - template-parts/conversion-form.php renders two-column layout (form left, promise right), eligibility list (T&E), FAQ (Demo) - inc/form-handler.php: nonce-protected POST handler with honeypot, per-field sanitizer, wp_mail to AV_LEADS_RECIPIENT (defaults to jerome.foucher@asterionvr.com, override via wp-config.php define), redirect-back-with-status pattern. Insights & Resources (page-insights-hub.php, page-resources.php) - /insights/ queries `post`, falls back to placeholder when empty - /resources/ lists 4 resource groups (datasheets, whitepapers, videos, brochures) per D.23 Legal (page-legal.php template, parent + 4 children) - /legal/, /legal/privacy/, /legal/terms/, /legal/cookies/, /legal/notice/ - Renders page content if filled, falls back to slug-driven section skeleton (per D.29) for counsel to draft against. All 16 new URLs verified HTTP 200, sizes 49-66 KB each. Mu-plugin asterion-seed-rest.php in LocalWP self-deleted after seeding. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
93 lines
3.7 KiB
PHP
93 lines
3.7 KiB
PHP
<?php
|
|
/**
|
|
* Template Name: Legal
|
|
*
|
|
* /legal/privacy/, /legal/terms/, /legal/cookies/, /legal/notice/.
|
|
* Renders the WP page content (filled in by counsel) inside the standard
|
|
* narrow container with a clean editorial hero.
|
|
*
|
|
* @package AsterionBricks
|
|
*/
|
|
defined('ABSPATH') || exit;
|
|
|
|
get_header();
|
|
?>
|
|
|
|
<section class="av-section">
|
|
<div class="av-container av-container--narrow">
|
|
|
|
<header class="av-section__head">
|
|
<span class="av-eyebrow"><?php esc_html_e('Legal', 'asterion-bricks'); ?></span>
|
|
<h1 class="av-section__title"><?php the_title(); ?></h1>
|
|
<p class="av-section__lead">
|
|
<?php esc_html_e('Last updated:', 'asterion-bricks'); ?>
|
|
<?php echo esc_html(get_the_modified_date()); ?>
|
|
</p>
|
|
</header>
|
|
|
|
<div class="av-prose" style="font-size:var(--text-body-md);line-height:var(--leading-body-md);color:var(--color-text-secondary);">
|
|
<?php
|
|
if (have_posts()) :
|
|
while (have_posts()) : the_post();
|
|
the_content();
|
|
endwhile;
|
|
endif;
|
|
|
|
// Default skeleton when the page content is empty — populated by counsel later.
|
|
$content = get_post_field('post_content', get_queried_object_id());
|
|
if (trim($content) === '') :
|
|
?>
|
|
<p style="padding:var(--space-6);background:var(--color-bg-subtle);border-left:3px solid var(--color-warning);border-radius:var(--radius-sm);">
|
|
<strong><?php esc_html_e('Placeholder.', 'asterion-bricks'); ?></strong>
|
|
<?php esc_html_e('This page is to be drafted with legal counsel. The structure below outlines the sections expected.', 'asterion-bricks'); ?>
|
|
</p>
|
|
|
|
<?php
|
|
// Slug-driven placeholder sections.
|
|
$slug = get_post_field('post_name', get_queried_object_id());
|
|
$skeletons = [
|
|
'privacy' => [
|
|
'Data controller (Asterion VR), contact, DPO if relevant',
|
|
'Data collected (form submissions, cookie identifiers, IP, etc.)',
|
|
'Purpose of processing (sales follow-up, newsletter, analytics)',
|
|
'Legal basis (consent, contract, legitimate interest)',
|
|
'Retention periods',
|
|
'Data sharing (subcontractors, hosts)',
|
|
'Data subject rights (access, rectification, deletion, portability, objection)',
|
|
'Complaint procedure (CNIL link)',
|
|
],
|
|
'terms' => [
|
|
'Site usage conditions',
|
|
'Intellectual property',
|
|
'Liability limitations',
|
|
'Applicable law and jurisdiction',
|
|
],
|
|
'cookies' => [
|
|
'List of cookies (functional, analytics, marketing)',
|
|
'Cookie purpose, retention, third parties',
|
|
'Consent management procedure',
|
|
],
|
|
'notice' => [
|
|
'Asterion VR — RCS 821 520 970 Rennes — NAF 6201Z — SIRET 821 520 970 00012',
|
|
'Adresse, téléphone, e-mail, directeur de la publication',
|
|
'Hébergeur',
|
|
],
|
|
];
|
|
|
|
if (isset($skeletons[$slug])) :
|
|
?>
|
|
<h2 style="font-family:var(--font-display);font-size:var(--text-h3);margin-top:var(--space-10);margin-bottom:var(--space-4);"><?php esc_html_e('Sections to include', 'asterion-bricks'); ?></h2>
|
|
<ul style="display:flex;flex-direction:column;gap:var(--space-2);padding-left:var(--space-6);">
|
|
<?php foreach ($skeletons[$slug] as $line) : ?>
|
|
<li style="list-style:disc;"><?php echo esc_html($line); ?></li>
|
|
<?php endforeach; ?>
|
|
</ul>
|
|
<?php endif; ?>
|
|
<?php endif; ?>
|
|
</div>
|
|
|
|
</div>
|
|
</section>
|
|
|
|
<?php get_footer(); ?>
|