Ankündigung

Einklappen
Keine Ankündigung bisher.

Link per PHP bearbeiten

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Link per PHP bearbeiten

    Hallo,

    für die Breadcrumbs auf meiner Website suche ich nach einer Lösung, die URL per PHP zu kürzen.

    Dies ist die das URL-Schema:

    Domain.com/Page/Article

    und ich brauche:

    Domain.com/Page

    Es soll also alles nach ddem zweiten / abgeschnitten werden und das ganze in einem normalen <a href>-Tag, geht das? Ich hab schon eine Weile danach gesucht, aber es leider nicht selber hinbekommen..

    Vielen Dank!!

  • #2
    basename()?
    [I]You know, my wife sometimes looks at me strangely. „Duncan“, she says, „there's more to life than Solaris“. Frankly, it's like she speaks another language. I mean, the words make sense individually, but put them together and it's complete nonsense.[/I]

    Kommentar


    • #3
      PHP-Code:
      $url 'example.com/Page/Article';

      $path substr$url0strrpos($url"/") );

      echo 
      $path;   // Ausgabe: example.com/Page 
      Bitte verwende zukünftig example.com als Beispieldomain, dafür ist es geschaffen worden.

      Kommentar


      • #4
        also ich bin wirklich blutiger Anfänger und hab kaum Ahnung. Hab nur Grundkenntnisse und einige Stunden in der php-Doku verbracht.

        Ist das wie du das meintest:

        <a href="<?php echo basename( $path [home_url( '/' )] ) ?>" title="">test</a>

        Leider scheint es nicht ganz zu funktionieren..

        Kommentar


        • #5
          Zitat von protestix Beitrag anzeigen
          PHP-Code:
          $url 'example.com/Page/Article';

          $path substr$url0strrpos($url"/") );

          echo 
          $path// Ausgabe: example.com/Page 
          Bitte verwende zukünftig example.com als Beispieldomain, dafür ist es geschaffen worden.

          Klar gerne.

          Gibt es da auch die Möglichkeit, die aktuelle URL dynamisch einzulesen statt $url =' '; ?

          Kommentar


          • #6
            Ok, also folgendes schneidet den letzten / ab, allerdings den ganz am Ende:


            PHP-Code:
            <a href="<?php $url $_SERVER['REQUEST_URI'];

            $path substr$url0strrpos($url"/") );

            echo 
            $path?>" title="<?php the_title(); ?>"><span><?php the_title(); ?></span></a>


            example.com/Page/Article/

            wird zu:

            example.com/Page/Article

            Kommen wir der Sache schon näher!

            Wie schaffe ich, dass er noch einen slash mehr abschneidet?

            Edit: Sorry, mein Fehler. Ganz am Ende des Links befindet sich natürlich auch noch der obligatorische Slash, sonst hätte es wohl schon geklappt.

            Kommentar


            • #7
              PHP-Code:
              $url 'example.com/Page/Article'
              Das ist keine URL.

              Hier wird erklärt, wie eine URL aussieht:

              https://de.wikipedia.org/wiki/Uniform_Resource_Locator

              Kommentar


              • #8
                Immerhin hat er mir damit etwas geholfen. Dein Betrag ist dagegen ziemlich überflüssig..

                Das ist übrigens sg. "trollen"

                Hier wird erklärt, was "Troll" ist:

                http://www.stupidedia.org/stupi/Troll_(Internet)

                Ich zitiere:

                "Als Troll ist zu bezeichnen, wer Beiträge verschickt, welche erkennbar provozierend sind [...]"
                "Diese Beiträge sind ohne Inhalt und in keiner Weise förderlich[...]"

                Kommentar


                • #9
                  Zitat von Rudolf56 Beitrag anzeigen
                  Immerhin hat er mir damit etwas geholfen. Dein Betrag ist dagegen ziemlich überflüssig..
                  Nein, deiner ist überflüssig. Denn außer einem Beleidigungsversuch steht da nichts drin. Also komplett überflüssig.

                  Eine richtige URL lässt sich viel leichter verarbeiten (z.B. mit parse_url()) als dein komischer Murks, den du "URL" nennst. Es ist eigentlich fast immer eine schlechte Idee sich nicht an Standards zu halten, sondern sein eigenes Süppchen zu kochen. Denn für standardisierte Probleme gibt es haufenweise standardisierte Lösungen. Aber etwas Selbstgebrautes erfordert eine umständliche Speziallösung.

                  Von daher solltest du dich fragen, willst du den eigenen, steinigen, mühsamen Weg gehen, oder willst du die Autobahn verwenden?

                  Kommentar


                  • #10
                    also 1. stammt das überhaupt nicht von mir und 2. wenn du weitergelesen hättest, hättest du gesehen, dass ich daraus schon längst folgendes gemacht habe:

                    PHP-Code:
                    $url $_SERVER['REQUEST_URI']; 
                    Also Autobahn, Selbstgebrautes oder Speziallösung - ich versteh nur Bahnhof! Vielleicht magst du dir ja meinen letzten code anschauen, und etwas dazu sagen. Danke!

                    Denn außer einem Beleidigungsversuch steht da nichts drin. Also komplett überflüssig.
                    Das könnte man deinem auch unterstellen, insofern unterscheiden sie sich von Ihrer Sinnhaftigkeit nicht besondern.

                    Kommentar


                    • #11
                      PHP-Code:
                      $path parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);

                      $newPath implode(
                          
                      '/'array_slice(
                              
                      explode(
                                  
                      '/'$path
                              
                      ), 02
                          
                      )
                      );

                      echo 
                      $newPath

                      Kommentar


                      • #12
                        ja super, das funktioniert tatsächlich!!

                        Ich habe mich jetzt tagelang durchs Netz und diverse Foren gekämpft, vielen lieben Dank dafür!!

                        Hast du noch einen Tipp, wie ich jetzt den Seitentitel von dieser erzeugten URL bekomme?

                        Code:
                        <a href="<?php
                        
                        $path = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
                        
                        $newPath = implode(
                            '/', array_slice(
                                explode(
                                    '/', $path
                                ), 0, 2
                            )
                        );
                        
                        echo $newPath;  ?>/" title=" Titel?? "> Titel?? </a>

                        Kommentar


                        • #13
                          Zitat von Rudolf56 Beitrag anzeigen
                          Hast du noch einen Tipp, wie ich jetzt den Seitentitel von dieser erzeugten URL bekomme?
                          Da musst du jemanden fragen, der sich mit Wordpress auskennt. Mit PHP hat das nichts zu tun.

                          Kommentar


                          • #14
                            Zitat von hellbringer Beitrag anzeigen

                            Da musst du jemanden fragen, der sich mit Wordpress auskennt. Mit PHP hat das nichts zu tun.
                            Habs damit geschafft:

                            PHP-Code:
                            <?php echo the_category();  ?>
                            Allerdings werden mehrere Kategorien angezeigt, wenn der Artikel mehreren zugeordnet ist.

                            Kann ich diesen Befehl vlcht so abändern, dass er nur eine einzige Kategorie ausgibt?



                            Edit: Habs ohne dynamischen Inhalt gelöst und den Link bzw. Titel einfach "Kategorie" genannt. Thema kann geschlossen werden!

                            Danke und schönen Abend! *thumbsup*

                            Kommentar

                            Lädt...
                            X