docs: replace WP readme.html with site documentation README.md
Covers architecture, Polylang setup, MU-plugin features, page IDs, timeline structure, media library, common operations, and git history. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
192
README.md
Normal file
192
README.md
Normal file
@@ -0,0 +1,192 @@
|
|||||||
|
# ACRIB — Asociación Casa Românească de las Islas Baleares
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
**Website:** [acrib.es](https://acrib.es)
|
||||||
|
**Stack:** WordPress 6.9.4 · PHP 8.5 · Kadence theme (free) · Polylang 3.8.4 · Contact Form 7 · WP Super Cache
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
ACRIB is the association of Romanian entrepreneurs and professionals in the Balearic Islands. The site is trilingual (Spanish, Romanian, English) and serves as the public face of the association — presenting its history, benefits, events, and a membership contact form.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Architecture
|
||||||
|
|
||||||
|
| Layer | Detail |
|
||||||
|
|---|---|
|
||||||
|
| Hosting | aaPanel / BT-Panel, Nginx, PHP 8.5 FPM |
|
||||||
|
| Server access | Tailscale VPN → `root@maagar` |
|
||||||
|
| WP root | `/www/wwwroot/acrib.es/` |
|
||||||
|
| WP-CLI | `/usr/local/bin/wp --allow-root` |
|
||||||
|
| Cache | WP Super Cache — purge: `rm -rf wp-content/cache/supercache/` |
|
||||||
|
| Git remote | SSH key at `/root/.ssh/id_ed25519` |
|
||||||
|
|
||||||
|
### Polylang language setup
|
||||||
|
|
||||||
|
| Language | Slug | Front page ID | About page ID | Nav menu ID |
|
||||||
|
|---|---|---|---|---|
|
||||||
|
| Spanish (es) | `/` | 5 | 29 | Primary (default) |
|
||||||
|
| Romanian (ro) | `/ro/` | 33 | 69 | Nav RO (ID 16) |
|
||||||
|
| English (en) | `/en/` | 34 | 70 | Nav EN (ID 17) |
|
||||||
|
|
||||||
|
Language switcher: flags-only, injected as a custom nav menu item in each menu.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## MU-Plugin: `acrib-core.php`
|
||||||
|
|
||||||
|
Location: `wp-content/mu-plugins/acrib-core.php` — always-on, no activation required.
|
||||||
|
|
||||||
|
**Current version:** 1.4
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
- **Transparent header on homepage + translations** — `body_class` filter at priority 999 removes Kadence's `non-transparent-header` class and adds `transparent-header` / `mobile-transparent-header`. Detects Polylang-translated front pages via `pll_get_post_translations()`.
|
||||||
|
- **Full-width / title-hide CSS** — reads `_kadence_post_layout` post meta and injects page-specific CSS to hide the Kadence title section and remove content padding (Kadence free workaround).
|
||||||
|
- **Homepage critical CSS** — injected via `wp_head` for all front-page variants (ES/RO/EN). Positions header absolutely over the hero, removes Kadence content margins.
|
||||||
|
- **Custom footer** — replaces Kadence's default copyright footer with ACRIB branding, legal links (Aviso Legal, Privacidad, Cookies), Facebook icon link, and "Hosted by Cloud Host" credit.
|
||||||
|
- **Security hardening** — `X-Frame-Options`, `X-Content-Type-Options`, `Referrer-Policy`, `Permissions-Policy` headers; XML-RPC disabled; REST API user enumeration blocked; generator tag removed.
|
||||||
|
- **Performance** — emoji scripts removed (~20 KB saving); post revisions capped at 3.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Pages
|
||||||
|
|
||||||
|
| ID | Slug | Language | Description |
|
||||||
|
|---|---|---|---|
|
||||||
|
| 5 | `/` | ES | Spanish homepage (hero, sections, CF7 form) |
|
||||||
|
| 33 | `/ro/` | RO | Romanian homepage |
|
||||||
|
| 34 | `/en/` | EN | English homepage |
|
||||||
|
| 29 | `/sobre-acrib/` | ES | History timeline (10 milestones) |
|
||||||
|
| 69 | `/ro/despre-acrib/` | RO | Romanian timeline translation |
|
||||||
|
| 70 | `/en/about-acrib/` | EN | English timeline translation |
|
||||||
|
|
||||||
|
### Homepage sections (all three languages)
|
||||||
|
|
||||||
|
1. **Hero** — full-viewport cover block with transparent header overlay
|
||||||
|
2. **La Asociación / Asociația / The Association** — mission statement
|
||||||
|
3. **Pilares / Piloni / Pillars** — three-column values
|
||||||
|
4. **Beneficios / Beneficii / Benefits** — membership advantages
|
||||||
|
5. **Eventos / Evenimente / Events** — upcoming events placeholder
|
||||||
|
6. **Miembros / Membri / Members** — founding member logos
|
||||||
|
7. **Hazte Socio / Devino Membru / Join** — CTA with membership tiers
|
||||||
|
8. **Contacto / Contact / Contact** — Contact Form 7 shortcode
|
||||||
|
|
||||||
|
Contact forms: ES form ID 6 (`acrib-contact`), RO form ID 61 (`acrib-contact-ro`), EN form ID 62 (`acrib-contact-en`).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## History Timeline (`/sobre-acrib/`)
|
||||||
|
|
||||||
|
The timeline is embedded as a `<!-- wp:html -->` block with self-contained CSS and a vanilla-JS lightbox. All three language versions share identical HTML structure.
|
||||||
|
|
||||||
|
### CSS layout
|
||||||
|
|
||||||
|
- Alternating left/right cards, 40% wide, 10% margin each side
|
||||||
|
- Center timeline line with gradient (navy → gold → burgundy)
|
||||||
|
- Cards: flex layout — thumbnail (130×110 px, `object-fit:cover`) + text
|
||||||
|
- Odd items (left-side cards): `flex-direction:row-reverse` → thumbnail on the right (toward timeline), text on the left
|
||||||
|
- Even items: thumbnail left, text right
|
||||||
|
- Thumbnails are clickable (lightbox via `#acrib-lb` overlay)
|
||||||
|
- Mobile (≤640px): single-column, full-width images
|
||||||
|
|
||||||
|
### Lightbox
|
||||||
|
|
||||||
|
Vanilla JS, no dependencies. Overlay div `#acrib-lb` injected into each timeline page's `wp:html` block. Opens on thumbnail click, closes on overlay click or `Escape` key. Locks body scroll while open.
|
||||||
|
|
||||||
|
### Timeline milestones (ES, newest → oldest)
|
||||||
|
|
||||||
|
| Date | Event |
|
||||||
|
|---|---|
|
||||||
|
| Jan–Mar 2026 | Tres Primeros Eventos del Club |
|
||||||
|
| 3 Dec 2025 | Proyección de Cine Rumano (ICR Madrid) |
|
||||||
|
| Nov 2025 | Bandera Rumana en el Paseo Sagrera |
|
||||||
|
| Autumn 2025 | Seminario Emil Racoviță — Cuevas del Drach |
|
||||||
|
| Oct 2025 | El Atlas de la Belleza — Mihaela Noroc |
|
||||||
|
| 2025 | Evento Nostalgia |
|
||||||
|
| Dec 2024–2025 | Constitución Oficial de ACRIB |
|
||||||
|
| 29 Nov–2 Dec 2024 | La Bandera Rumana Ondea en Mallorca |
|
||||||
|
| 26 Mar 2024 | **La Semilla de ACRIB** — Jornada en la Cambra de Comerç *(founding event — burgundy dot)* |
|
||||||
|
| 2023–2024 | Los Primeros Pasos (meetings with PIMEM, Palma Activa) |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Media Library
|
||||||
|
|
||||||
|
Key uploaded images (all in `wp-content/uploads/2026/05/`):
|
||||||
|
|
||||||
|
| File | WP ID | Used in |
|
||||||
|
|---|---|---|
|
||||||
|
| `nostalgia-acrib.jpg` | 65 | Timeline: Nostalgia event |
|
||||||
|
| `atlas-belleza-acrib.jpg` | 66 | Timeline: Atlas de la Belleza |
|
||||||
|
| `racovita-acrib.jpg` | 67 | Timeline: Emil Racoviță seminar |
|
||||||
|
| `bandera-acrib.jpg` | 75 | Timeline: Bandera Nov 2024 + Nov 2025 Paseo Sagrera |
|
||||||
|
| `palma-activa-acrib.jpg` | 76 | Timeline: Primeros Pasos |
|
||||||
|
| `cambra-acrib.png` | 77 | Timeline: La Semilla / Cambra de Comerç |
|
||||||
|
| `eventos-2026-acrib.jpg` | 78 | Timeline: Tres Primeros Eventos 2026 |
|
||||||
|
| `cine-acrib.jpg` | 79 | Timeline: Proyección Cine Rumano |
|
||||||
|
| `constitucion-acrib.jpg` | 80 | Timeline: Constitución Oficial |
|
||||||
|
|
||||||
|
> **Note:** Facebook CDN URLs expire (the `oe=` parameter is a Unix timestamp). Always download Facebook images to the server and upload to WP Media Library before using them in content.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Common Operations
|
||||||
|
|
||||||
|
### Deploy a PHP script to WordPress
|
||||||
|
```bash
|
||||||
|
scp -i /root/.ssh/id_ed25519 script.php root@maagar:/tmp/
|
||||||
|
ssh -i /root/.ssh/id_ed25519 root@maagar \
|
||||||
|
"/usr/local/bin/wp --path=/www/wwwroot/acrib.es --allow-root eval-file /tmp/script.php"
|
||||||
|
```
|
||||||
|
|
||||||
|
> **Tip:** Do not embed large strings (CSS, JS, HTML) directly in scripts run via `eval-file`. PHP's `eval()` silently fails on large single-quoted strings. Use `file_get_contents('/tmp/file.txt')` instead.
|
||||||
|
|
||||||
|
### Purge cache
|
||||||
|
```bash
|
||||||
|
ssh root@maagar "rm -rf /www/wwwroot/acrib.es/wp-content/cache/supercache/"
|
||||||
|
```
|
||||||
|
|
||||||
|
### WP-CLI examples
|
||||||
|
```bash
|
||||||
|
# Get post content
|
||||||
|
wp --path=/www/wwwroot/acrib.es --allow-root post get 29 --field=post_content
|
||||||
|
|
||||||
|
# Update post
|
||||||
|
wp --path=/www/wwwroot/acrib.es --allow-root post update 29 --post_content="$(cat file.html)"
|
||||||
|
|
||||||
|
# Run arbitrary PHP
|
||||||
|
wp --path=/www/wwwroot/acrib.es --allow-root eval 'echo get_bloginfo("url");'
|
||||||
|
```
|
||||||
|
|
||||||
|
### Update MU-plugin
|
||||||
|
```bash
|
||||||
|
scp -i /root/.ssh/id_ed25519 acrib-core.php \
|
||||||
|
root@maagar:/www/wwwroot/acrib.es/wp-content/mu-plugins/acrib-core.php
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Git History
|
||||||
|
|
||||||
|
| Commit | Description |
|
||||||
|
|---|---|
|
||||||
|
| `1473d34` | fix: timeline full-width single-column layout + RO language files |
|
||||||
|
| `b235608` | feat: RO/EN timeline translations, Facebook page link, real ACRIB history |
|
||||||
|
| `34714e9` | feat: multilingual support — RO/EN translations and menu fixes |
|
||||||
|
| `0e03636` | fix: extend Kadence title-section hide to all pages with title:hide meta |
|
||||||
|
| `430defd` | feat: hero fix, Kadence footer removal, Sobre ACRIB timeline, Novedades blog, Polylang |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Facebook
|
||||||
|
|
||||||
|
ACRIB Facebook page: [facebook.com/profile.php?id=61583585888787](https://www.facebook.com/profile.php?id=61583585888787)
|
||||||
|
Linked in the site footer via SVG icon (injected by MU-plugin `wp_footer` action).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Site built and maintained by [Cloud Host](https://cloudhost.es)*
|
||||||
98
readme.html
98
readme.html
@@ -1,98 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta name="viewport" content="width=device-width" />
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
||||||
<meta name="robots" content="noindex,nofollow" />
|
|
||||||
<title>WordPress › ReadMe</title>
|
|
||||||
<link rel="stylesheet" href="wp-admin/css/install.css?ver=20100228" type="text/css" />
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<h1 id="logo">
|
|
||||||
<a href="https://wordpress.org/"><img alt="WordPress" src="wp-admin/images/wordpress-logo.png" /></a>
|
|
||||||
</h1>
|
|
||||||
<p style="text-align: center">Semantic Personal Publishing Platform</p>
|
|
||||||
|
|
||||||
<h2>First Things First</h2>
|
|
||||||
<p>Welcome. WordPress is a very special project to me. Every developer and contributor adds something unique to the mix, and together we create something beautiful that I am proud to be a part of. Thousands of hours have gone into WordPress, and we are dedicated to making it better every day. Thank you for making it part of your world.</p>
|
|
||||||
<p style="text-align: right">— Matt Mullenweg</p>
|
|
||||||
|
|
||||||
<h2>Installation: Famous 5-minute install</h2>
|
|
||||||
<ol>
|
|
||||||
<li>Unzip the package in an empty directory and upload everything.</li>
|
|
||||||
<li>Open <span class="file"><a href="wp-admin/install.php">wp-admin/install.php</a></span> in your browser. It will take you through the process to set up a <code>wp-config.php</code> file with your database connection details.
|
|
||||||
<ol>
|
|
||||||
<li>If for some reason this does not work, do not worry. It may not work on all web hosts. Open up <code>wp-config-sample.php</code> with a text editor like WordPad or similar and fill in your database connection details.</li>
|
|
||||||
<li>Save the file as <code>wp-config.php</code> and upload it.</li>
|
|
||||||
<li>Open <span class="file"><a href="wp-admin/install.php">wp-admin/install.php</a></span> in your browser.</li>
|
|
||||||
</ol>
|
|
||||||
</li>
|
|
||||||
<li>Once the configuration file is set up, the installer will set up the tables needed for your site. If there is an error, double check your <code>wp-config.php</code> file, and try again. If it fails again, please go to the <a href="https://wordpress.org/support/forums/">WordPress support forums</a> with as much data as you can gather.</li>
|
|
||||||
<li><strong>If you did not enter a password, note the password given to you.</strong> If you did not provide a username, it will be <code>admin</code>.</li>
|
|
||||||
<li>The installer should then send you to the <a href="wp-login.php">login page</a>. Sign in with the username and password you chose during the installation. If a password was generated for you, you can then click on “Profile” to change the password.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<h2>Updating</h2>
|
|
||||||
<h3>Using the Automatic Updater</h3>
|
|
||||||
<ol>
|
|
||||||
<li>Open <span class="file"><a href="wp-admin/update-core.php">wp-admin/update-core.php</a></span> in your browser and follow the instructions.</li>
|
|
||||||
<li>You wanted more, perhaps? That’s it!</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<h3>Updating Manually</h3>
|
|
||||||
<ol>
|
|
||||||
<li>Before you update anything, make sure you have backup copies of any files you may have modified such as <code>index.php</code>.</li>
|
|
||||||
<li>Delete your old WordPress files, saving ones you’ve modified.</li>
|
|
||||||
<li>Upload the new files.</li>
|
|
||||||
<li>Point your browser to <span class="file"><a href="wp-admin/upgrade.php">/wp-admin/upgrade.php</a>.</span></li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<h2>Migrating from other systems</h2>
|
|
||||||
<p>WordPress can <a href="https://developer.wordpress.org/advanced-administration/wordpress/import/">import from a number of systems</a>. First you need to get WordPress installed and working as described above, before using <a href="wp-admin/import.php">our import tools</a>.</p>
|
|
||||||
|
|
||||||
<h2>System Requirements</h2>
|
|
||||||
<ul>
|
|
||||||
<li><a href="https://www.php.net/">PHP</a> version <strong>7.2.24</strong> or greater.</li>
|
|
||||||
<li><a href="https://www.mysql.com/">MySQL</a> version <strong>5.5.5</strong> or greater.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3>Recommendations</h3>
|
|
||||||
<ul>
|
|
||||||
<li><a href="https://www.php.net/">PHP</a> version <strong>8.3</strong> or greater.</li>
|
|
||||||
<li><a href="https://www.mysql.com/">MySQL</a> version <strong>8.0</strong> or greater OR <a href="https://mariadb.org/">MariaDB</a> version <strong>10.6</strong> or greater.</li>
|
|
||||||
<li>The <a href="https://httpd.apache.org/docs/2.2/mod/mod_rewrite.html">mod_rewrite</a> Apache module.</li>
|
|
||||||
<li><a href="https://wordpress.org/news/2016/12/moving-toward-ssl/">HTTPS</a> support.</li>
|
|
||||||
<li>A link to <a href="https://wordpress.org/">wordpress.org</a> on your site.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2>Online Resources</h2>
|
|
||||||
<p>If you have any questions that are not addressed in this document, please take advantage of WordPress’ numerous online resources:</p>
|
|
||||||
<dl>
|
|
||||||
<dt><a href="https://wordpress.org/documentation/">HelpHub</a></dt>
|
|
||||||
<dd>HelpHub is the encyclopedia of all things WordPress. It is the most comprehensive source of information for WordPress available.</dd>
|
|
||||||
<dt><a href="https://wordpress.org/news/">The WordPress Blog</a></dt>
|
|
||||||
<dd>This is where you’ll find the latest updates and news related to WordPress. Recent WordPress news appears in your administrative dashboard by default.</dd>
|
|
||||||
<dt><a href="https://planet.wordpress.org/">WordPress Planet</a></dt>
|
|
||||||
<dd>The WordPress Planet is a news aggregator that brings together posts from WordPress blogs around the web.</dd>
|
|
||||||
<dt><a href="https://wordpress.org/support/forums/">WordPress Support Forums</a></dt>
|
|
||||||
<dd>If you’ve looked everywhere and still cannot find an answer, the support forums are very active and have a large community ready to help. To help them help you be sure to use a descriptive thread title and describe your question in as much detail as possible.</dd>
|
|
||||||
<dt><a href="https://make.wordpress.org/support/handbook/appendix/other-support-locations/introduction-to-irc/">WordPress <abbr>IRC</abbr> (Internet Relay Chat) Channel</a></dt>
|
|
||||||
<dd>There is an online chat channel that is used for discussion among people who use WordPress and occasionally support topics. The above wiki page should point you in the right direction. (<a href="https://web.libera.chat/#wordpress">irc.libera.chat #wordpress</a>)</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<h2>Final Notes</h2>
|
|
||||||
<ul>
|
|
||||||
<li>If you have any suggestions, ideas, or comments, or if you (gasp!) found a bug, join us in the <a href="https://wordpress.org/support/forums/">Support Forums</a>.</li>
|
|
||||||
<li>WordPress has a robust plugin <abbr>API</abbr> (Application Programming Interface) that makes extending the code easy. If you are a developer interested in utilizing this, see the <a href="https://developer.wordpress.org/plugins/">Plugin Developer Handbook</a>. You shouldn’t modify any of the core code.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2>Share the Love</h2>
|
|
||||||
<p>WordPress has no multi-million dollar marketing campaign or celebrity sponsors, but we do have something even better—you. If you enjoy WordPress please consider telling a friend, setting it up for someone less knowledgeable than yourself, or writing the author of a media article that overlooks us.</p>
|
|
||||||
|
|
||||||
<p>WordPress is the official continuation of b2/cafélog, which came from Michel V. The work has been continued by the <a href="https://wordpress.org/about/">WordPress developers</a>. If you would like to support WordPress, please consider <a href="https://wordpress.org/donate/">donating</a>.</p>
|
|
||||||
|
|
||||||
<h2>License</h2>
|
|
||||||
<p>WordPress is free software, and is released under the terms of the <abbr>GPL</abbr> (GNU General Public License) version 2 or (at your option) any later version. See <a href="license.txt">license.txt</a>.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
Reference in New Issue
Block a user