php mit aria-current
bearbeitet von Gunnar Bittersmann@@Lars
> Ich habe eine seperate datei (menu.php) und die integriere ich per `<?php include ("menu.php"); ?>` in die eigentliche seite. > Das hätte ich besser deutlicher erklärt 😏.
> Gibt es dann trotzdem eine Möglichkeit die aktuelle Seite bzw. den aktuellen Link zu makieren?
Wenn du was mit `include`{:.language-php} einbindest (was übrigens keine Funktion ist), dann wird das Include vom PHP-Interpreter geparst. (Wenn das Include nicht nach PHP geparst werden muss, bietet sich sonst `readfile()`{:.language-php} an.)
Das heißt: du kannst im Include PHP ausführen lassen. Also die aktuelle Seite, auf der das Include eingebunden wurde, ermitteln: `$_SERVER['REQUEST_URI']`{:.language-php} (mit möglicherweise im URL vorhandenem Query) bzw. `$_SERVER['PHP_SELF']`{:.language-php} (ohne Query).
~~~php
<nav>
<ul>
</li>
<a
<?php if ($_SERVER['PHP_SELF'] === '/alpha'): ?>
aria-current="page"
tabindex="0"
<?php else: ?>
href="/alpha"
<?php endif; ?>
>
Alpha
</a>
</li>
</li>
<a
<?php if ($_SERVER['PHP_SELF'] === '/omega'): ?>
aria-current="page"
tabindex="0"
<?php else: ?>
href="/omega"
<?php endif; ?>
>
Omega
</a>
</li>
</ul>
</nav>
~~~
LLAP 🖖
--
*„Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“* —Kurt Weidemann
php mit aria-current
bearbeitet von Gunnar Bittersmann@@Lars
> Ich habe eine seperate datei (menu.php) und die integriere ich per `<?php include ("menu.php"); ?>` in die eigentliche seite. > Das hätte ich besser deutlicher erklärt 😏.
> Gibt es dann trotzdem eine Möglichkeit die aktuelle Seite bzw. den aktuellen Link zu makieren?
Wenn du was mit `include()`{:.language-php} einbindest, dann wird das Include vom PHP-Interpreter geparst. (Wenn das Include nicht nach PHP geparst werden muss, bietet sich sonst `readfile()`{:.language-php} an.)
Das heißt: du kannst im Include PHP ausführen lassen. Also die aktuelle Seite, auf der das Include eingebunden wurde, ermitteln: `$_SERVER['REQUEST_URI']`{:.language-php} (mit möglicherweise im URL vorhandenem Query) bzw. `$_SERVER['PHP_SELF']`{:.language-php} (ohne Query).
~~~php
<nav>
<ul>
</li>
<a
<?php if ($_SERVER['PHP_SELF'] === '/alpha'): ?>
aria-current="page"
tabindex="0"
<?php else: ?>
href="/alpha"
<?php endif; ?>
>
Alpha
</a>
</li>
</li>
<a
<?php if ($_SERVER['PHP_SELF'] === '/omega'): ?>
aria-current="page"
tabindex="0"
<?php else: ?>
href="/omega"
<?php endif; ?>
>
Omega
</a>
</li>
</ul>
</nav>
~~~
LLAP 🖖
--
*„Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“* —Kurt Weidemann
php mit aria-current
bearbeitet von Matthias Apsel@@Lars
> Ich habe eine seperate datei (menu.php) und die integriere ich per `<?php include ("menu.php"); ?>` in die eigentliche seite. > Das hätte ich besser deutlicher erklärt 😏.
> Gibt es dann trotzdem eine Möglichkeit die aktuelle Seite bzw. den aktuellen Link zu makieren?
Wenn du was mit `include()`{.language-php} einbindest, dann wird das Include vom PHP-Interpreter geparst. (Wenn das Include nicht nach PHP geparst werden muss, bietet sich sonst `readfile()`{.language-php} an.)
Das heißt: du kannst im Include PHP ausführen lassen. Also die aktuelle Seite, auf der das Include eingebunden wurde, ermitteln: `$_SERVER['REQUEST_URI']`{.language-php} (mit möglicherweise im URL vorhandenem Query) bzw. `$_SERVER['PHP_SELF']`{.language-php} (ohne Query).
~~~php
<nav>
<ul>
</li>
<a
<?php if ($_SERVER['PHP_SELF'] === '/alpha'): ?>
aria-current="page"
tabindex="0"
<?php else: ?>
href="/alpha"
<?php endif; ?>
>
Alpha
</a>
</li>
</li>
<a
<?php if ($_SERVER['PHP_SELF'] === '/omega'): ?>
aria-current="page"
tabindex="0"
<?php else: ?>
href="/omega"
<?php endif; ?>
>
Omega
</a>
</li>
</ul>
</nav>
~~~
LLAP 🖖
--
*„Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“* —Kurt Weidemann