Beiträge von Jogibär

    Weshalb ist das so????


    Weil der Visuelle Editor dumm ist. Er kann Texte geschrieben in der Textversion nicht richtig interpretieren und danach wieder abspeichern. In der Praxis heisst das, entweder nur die Textversion benutzen oder nur die Visuelleversion (dann sind mit etwas Glück ganz kleine Änderungen in der Textversion möglich).

    Wichtig ist, dass Du über FTP (ID web0815) und der Server (ID www-data) beide Schreibrechte habt.

    Am "Saubersten" wäre wohl, wenn Du Deinen Hoster bittest, allen dateien die UID web0815 und GID www-data zu zu teilen. Danach machst Du über FTP alle Dateien beschreibar für die Gruppe, damit das automatische update funktioniert.

    Alternativ kannst du ein php-skript schrieben, welches alle Dateien beschreibbar für jeden User macht.

    Code
    open_basedir: [COLOR=#000000][FONT=sans-serif]/var/www/vhosts/meine_domain/httpdocs[B]:[/B]/tmp[/FONT][/COLOR]


    Das sagt Dir, dass Du (Deine PHP-Skripte (wordpress)) nur auf Dateien zugreifen kannst, welche entweder im Ordner [COLOR=#000000][FONT=sans-serif]/var/www/vhosts/meine_domain/httpdocs oder /tmp sind. Der :[/FONT][/COLOR] ist als "oder" zu interpretieren; ein Verzeichnis tmp in [COLOR=#000000][FONT=sans-serif]/var/www/vhosts/meine_domain/httpdocs brauchst Du nicht[/FONT][/COLOR]. Das ist von Deinem Hoster aus Sicherheitsgründen so gewollt, er wird das sicher nicht ändern.

    Die Lösung für Dein Problem ist, dass du alle von PHP benötigten Dateien in den Ordner [COLOR=#000000][FONT=sans-serif]/var/www/vhosts/meine_domain/httpdoc schieben musst.[/FONT][/COLOR] Solange Du nicht genauer beschreibst, was Dein "open_basedir Problem" ist, kann ich Dir nicht genauer helfen.

    Das Problem ist momentan die Funktion get_the_category(). Sie gibt dir ein Array zurück, das alle Kategorien beinhaltet, in denen der aktuelle Post ist. Das Problem ist momentan, dass du vielleicht (je nach Theme) noch gar keinen aktuellen Post hast.
    Oder falls doch, der Post mehrere Kategorien haben kann. Dann passiert in deinem Versuch um 10:30 folgendes: Sobald der aktuelle Post eine Kategorie hat, welche nicht "Let's Plays" ist, wird "Mein Let's Play zu Kategoriename" ausgegeben. Willst du das?
    Im zweiten Fall wird "Meine Let's Play zu Kategoriename" ausgegeben, falls das Kategoriearray gleich dem array ('24') ist. Wann das der Fall ist, weiss ich nicht, evtl. falls der aktuelle Post nur in der Kategorie 24 ist. Doch sicher nicht, falls der aktuelle Post in mehreren Kategorien gleichzeitig ist.

    Da du ja sowieso in der Kategorienansicht bist, kannst du die aktuelle Kategorie viel einfacher herausfinden, als über get_the_category(). [COLOR=#000000][COLOR=#0000BB]get_category_by_path[/COLOR][COLOR=#007700]([/COLOR][/COLOR][COLOR=#000000][COLOR=#0000BB]$_SERVER[/COLOR][COLOR=#007700][[/COLOR][COLOR=#DD0000]'REQUEST_URI'[/COLOR][COLOR=#007700]][/COLOR][/COLOR][COLOR=#000000][COLOR=#007700])[/COLOR][/COLOR] oder, die Funktion etwas missbrauchend, [COLOR=#000000][COLOR=#0000BB]single_cat_title[/COLOR][COLOR=#007700]([/COLOR][/COLOR]'', false[COLOR=#000000][COLOR=#007700]);[/COLOR][/COLOR]


    Damit das ganz nur dargestellt wird, wenn du in der Kategorienansicht bist: http://codex.wordpress.org/Function_Reference/is_category
    Über arrays: http://php.net/manual/de/book.array.php[COLOR=#000000][COLOR=#DD0000]
    [/COLOR][/COLOR]

    Hi LuLP,
    Ich bins mal wieder :-D.

    Hab folgende Lösung!


    Zitat


    Da fehlt ein " bei class="page-header.

    1.

    Zitat

    Ich will Individuelle Title für meine Kategorien


    Jep. Doch überleg mal, das ist doch der genau der gleiche Fall, wie der als es um die Navigationsmenues ging. Falls du einfachstes Programmieren lernen möchtest, wäre das doch gerade ein guter Zeitpunk. Falls du Lust hast, kannstu Du diese Tutorial (für diesen Fall reicht bis Kapitel 17 total aus, geht schnell) http://tut.php-quake.net/de/ mal durcharbeiten, danach sollten die Anpassungen von den Navigationslinks zum Kategorientitel kein Problem mehr sein. Hier findest Du auch noch mehr Infos zur Funktion single_cat_title.
    Probiers damit doch nochmal selbst, falls du Lust hast. Falls nicht, mach ich's schnell.

    2.

    Zitat

    Ich hab meien Kategorien umbenannt z.b in Meine Projekte


    Das ist Bullshit, Kategorienamen werden überall gebraucht und wenn Du sie wegen einer Sache umbennen musst, dann zerstörst du mit der Unbennung die anderen Sachen.

    funktioniert vllt sowas wie


    Das ist im Ansatz die richtige Lösung, nur hast Du mehrere Unsauberkeiten und doofe Fehler drin. Mach das Tutorial oben und Dir fallen diese Sachen selbst auf, kannst sie korriegiern und wirst sie schnell nicht mehr machen.

    if (get_the_category()=$MP)
    Hier fragst Du ja ab, ob die Aktuelle Kategorie gleich der Meine Projekte Kategorie ist. Der Fehler ist, dass Du = anstatt == verwendest. = weisst einen Wert zu. Also z.Bsp. x=3; dann ist nacher in x eine 3 gespeichert. == fragt, ob die die beiden Sachen gleich sind. Das klappt wunderbar bei einfachen Sachen, wie zum Beispil Integer (ganze Zahlen). Also x == 3 fragt ob x gleich 3 ist. Nun hast du aber zwei array, die du vergleichst, arrays sind komplizierter, da ist es heickel ein == zu verwenden. Was wenn dein Post plötzlich noch eine zweite Kategorie (z.Bsp. '10') hat, dann wird ('10', '20') mit ('20') verglichen, das ist dann sicher nicht mehr das gleiche. Um Arrays oder Elemente von Arrays zu vergleichen, gibts spezielle Funktionen. Mach das tutorial, dann lernst du's.
    Zudem musst du noch in die Klammern des else {} einfüllen, was passieren soll, wenn ein Post in $LP ist.

    Eine Möglichkeit mit einer IF-Abfrage wäre:

    PHP
    <?php 
    if (true == preg_match('/(\/de\/)/',dirname($_SERVER['REQUEST_URI']))) {
        wp_nav_menu( array( 'theme_location' => 'primary' ) );    
    }        
    else {
        wp_nav_menu( array( 'theme_location' => 'en_menu' ) );
    }
    ?>


    Das wollte ich eigentlich, ich habe aber nicht gewusst, dass $_SERVER['REQUEST_URI'] das module rewrite überlebt.

    Vorab zunächst: ich habe keine Ahnung in welchem Pfad sich die momentan aufgerufene Seite (oder die Zielseite) befindet. Es handelt sich, was ich bislang ja nicht zu erkennen gab, ausschließlich um Seiten, die ich als Admin im WP-Backoffice erstellt habe


    Grundsätzlich befindet sich die momentane Seite immer in dem Ordner, der in der URL auch angezeigt wird, oben wäre das XYZ. Doch falls man bei Wordpress Permalinks aktiviert hat (scheinst du nicht zu haben), dann wird die ganz URL auf dem Server zuerst umgeschrieben, und man kann den wahren Ort der Datei theoretisch nur aus der URL heraus nicht mehr herauslesen (gut, mit minimaler Wordpresserfahrung ist es dann meist kein Problem mehr).
    Bei Wordpress wird allermeistens zuerst immer die index.php aufgerufen.
    Für die Zieldatei bei Links welche nicht mit einem / (oder http://) starten, nimmt der Browser den momentanen Ordner und hängt das Linkziel einfach hinten dran.

    (wenn ich PHP richtig verstanden gibt es Ausgangs- und Zielseiten gar nicht physisch, sondern werden im Moment des Aufrufs von PHP generiert; bitte korrigiere mich wenn ich falsch liege).


    Stimmt schon. Bei Wordpress z.Bsp. wird fast alles aus der index.php heraus generiert.

    Wenn die Seite life gehen soll, werde ich die domain auf das Verzeichnis, in dem die index.php liegt, verweisen lassen, d.h. das Verzeichnis XYZ (in dem WP installiert ist).

    Ist meine Annahme, dass für diesen Fall die zweite Lösung die richtige ist, um nach einem Umzug keine Probleme mit Links zu bekommen?


    Es wäre wohl nicht falsch, aber wohl etwas fehleranfällig. Etwas weniger fehleranfällig wäre <a href="/?page_id=NNN">Name des Link</a> zu benutzen. Doch rate ich dir von beidem ab. Es ist viel besser (um doofe Errors aller Art jetzt und vorallem in Zukunft zu vermeiden), wenn du die Domain normal verweist, aber die Wordpressinstallation eine Ebene höher schiebst. Das sind nur ein paar wenige Klicks: Anleitung.

    In deinem Fall wäre es wohl

    Code
    <a href="/XYZ/?page_id=NNN">Name des Link</a>

    . Dieser Link ist unabhängig vom Domain (den du ja umziehen willst), aber absolut gegenüber dem Pfad der momentan aufgerufenen Seite.

    Code
    <a href="?page_id=NNN">Name des Link</a>

    Wäre auch eine Möglichkeit, aber wahrscheinlich nicht was du suchst. Denn nun hängt das Ziel des Linkes davon ab, in welchem Pfad sich die momentan aufgerufene Seite befindet.

    index.php .htaccess permalinks ist wegen menü nicht wichtig.


    Mhhm.


    dh, mit php abfragen, auf welcher Seite du bist, kannst dann zb diese Code mit jeweils anderen menu einträge aktivieren und so erhälst du je nach wunsch andere Menüs


    Und wie willst du das tun, ohne zu wissen woher das /de/, /en/ kommt, ob und wie es umgeschrieben wird...? Mal im Blinden fischen? Oder willst du echt für jede Seite das einzeln definieren, welches Menu sie hat? Und wo willst du das definieren? Etwa alle Seitentemplates einmal in english und einmal in deutsch haben?