Wie kann man Variablen in der URL übergeben?

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Hallo,

    danke für Deine Antwort. Ich kenne die Funktion add_query_arg(), nur verstehe ich sie nicht. Wird diese Funktion auf der Seite eingebaut, wo der Link platziert ist oder auf der Seite, wo Variable hin übergeben werden soll?
    Die Beispiele finde ich irgendwie verwirrend, weil dort wird die URL ja erst in der "Zieldatei" verändert,z.B: echo add_query_arg( 'foo', 'bar' );. Wie würde denn die Funktion aussehen, wenn man aus der URL die Variable id holen möchte?

    PS: http://www.example.com/einepage/?id=3 leitet ebenfalls auf http://www.example.com/einepage weiter

  • Gehen wir von folgender Situation aus:

    auf http://www.example.com/seite-1/ soll ein Link auf http://www.example/seite-2/ dargestellt werden, der den Paramater id=3 überträgt. Dabei hat /seite-2/ beispielsweise innerhalb von WordPress die ID 2.

    Auf http://www.example.com/seite-1/ fügst Du folgenden Link ein:

    HTML
    <a href="<?php echo add_query_arg( 'id', '3', get_permalink( 2 ) ); ?>">Linktitel</a>

    Mit get_permalink( 2 ) bekommst Du den Permalink der Seite mit der ID 2 (in diesem Falle also http://www.example.com/seite-2/.

    Auf /seite-2/ kannst Du dann in PHP wie gewohnt mit $_GET['id'] zugreifen - hier brauchst Du also add_query_arg() natürlich nicht.

  • Danke für die ausführliche Beschreibung, der Link lautet mit add_query_arg jetzt http://www.example/seite-2?id=3, doch sobald ich auf die Seite geleitet wurde, werde ich dennoch wieder auf http://www.example/seite-2 weitergeleitet.

    Meinst Du, das Problem könnte an irgendwelchen register_globals-Einstellungen liegen? Wobei das merkwürdig wäre, wo es doch der gleiche Server ist.

    Einmal editiert, zuletzt von Chris123 (2. März 2011 um 14:06)

  • Nein, ich denke, mit register_globals wird das nichts zu tun haben. Da schon eher mit deinen Permalinkeinstellungen. Hast Du an der .htaccess irgendwas verändert, oder ist das die standardmäßige von WP?

    Und der Link wird tatsächlich zu http://www.example/seite-2?id=3 und nicht zu http://www.example/seite-2?id=3? Das allein ist nämlich schon sehr seltsam.

    Versuche einmal (wenn das im laufenden Betrieb geht), alle Plugins zu deaktivieren und die Standard-htaccess von WP zu verwenden. Vielleicht liegt's ja an irgendwelchen Plugins.

    Habe den Code auf 4 unterschiedlichen WP-Installationen ausprobiert - lief überall wie gewünscht.

    (Wäre auch ganz wichtig zu wissen: deine WP-Version und die PHP-Version.)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!