friendly URLs und SPIP 1.8.2b

Hallo,

ich hatte bisher SPIP 1.7.2 genutzt und dabei suchmaschinenfreundliche URLs genutzt. Dabei wurden die URLs wie folgt angezeigt:
domain.de/rubrikentitel_unterrubrik_artikelname_articleX.html

Jetzt habe ich den gleichen Code für SPIP 1.8 genutzt, in mes_options.php3 die "friendly" Version für die URLs eingestellt, aber jetzt klappt irgendwie nicht mehr ganz richtig, weil jetzt kommt bei Rubriken: domain.de/rubriqueX.html und bei Artikeln domain.de/artikelname_article.html

Ich bin jetzt ein wenig ratlos, aber eins ist mir aufgefallen: BEi der Domain, wo es bisher immer "toll" geklappt hatte, war die ganze SPIP-nstallation in einem Unterverzeichnis /spip, während bei der neuen Version nun alles direkt im "root" Verzeichnis liegt.

viele Grüße
HEiko

Und hier der Code von den "freundlichen" URLS:

<?php
require 'ecrire/inc_charsets.php3';

function text2sys($text)
{
        $sys = $text;
        $sys = strtolower(translitteration($sys, 'iso-8859-1'));
        $sys = ereg_replace("^[0-9]+\. ", "", $sys);
        $sys = ereg_replace("[^.a-z0-9_=-]+", " ", $sys);
        $sys = ereg_replace(" +", "_", trim($sys));
        return $sys;
}

function arborescence($id_rubrique)
{
        if ($id_rubrique == 0) {
                $url = $GLOBALS['meta']['adresse_site'].'/';
        } else {
                $result = spip_query("SELECT id_parent, titre FROM spip_rubriques WHERE id_rubrique=$id_rubrique");
                $row = spip_fetch_array($result);
                $url = arborescence($row['id_parent']).($row['id_parent'] != 0 ? text2sys($row['titre']).'_' : '');
    }
        return $url;
}

function generer_url_rubrique($id_rubrique) {
        $url = arborescence($id_rubrique).'rubrique'.$id_rubrique.'.html';
        return $url;
}

function generer_url_article($id_article) {
        $result = spip_query("SELECT id_rubrique, titre FROM spip_articles WHERE id_article=$id_article");
        $row = spip_fetch_array($result);
        $url = arborescence($row['id_rubrique']).text2sys($row['titre']).'_article'.$id_article.'.html';
        return $url;
}

function generer_url_breve($id_breve) {
        $result = spip_query("SELECT id_rubrique, titre FROM spip_breves where id_breve=$id_breve");
        $row = spip_fetch_array($result);
        $url = arborescence($row['id_rubrique']).text2sys($row['titre']).'_breve'.$id_breve.'.html';
        return $url;
}

function generer_url_forum($id_forum) {
        $url = $GLOBALS['meta']['adresse_site'].'/forum'.$id_forum.'.html';
        return $url;
}

function generer_url_mot($id_mot) {
        $result = spip_query("SELECT titre FROM spip_mots WHERE id_mot=$id_mot");
        $row = spip_fetch_array($result);
        $url = $GLOBALS['meta']['adresse_site'].'/'.text2sys($row['titre']).'_mot'.$id_mot.'.html';
        return $url;
}

function generer_url_auteur($id_auteur) {
        $result = spip_query("SELECT nom FROM spip_auteurs WHERE id_auteur=$id_auteur");
        $row = spip_fetch_array($result);
        $url = $GLOBALS['meta']['adresse_site'].'/'.text2sys($row['nom']).'_auteur'.$id_auteur.'.html';
        return $url;
}

function generer_url_document($id_document) {
        if ($id_document > 0) {
                $result = spip_query("SELECT fichier FROM spip_documents WHERE id_document = $id_document");
                if ($row = spip_fetch_array($result)) {
                        $url = $GLOBALS['meta']['adresse_site'].'/'.$row['fichier'];
                }
        }
        return $url;
}

function recuperer_parametres_url($fond, $url) {
        global $contexte;
}
?>

Hallo Heiko,

hast Du die Datei inc-urls-html.php3. die mit SPIP 1.82b geliefert wurde nach inc-urls.php3 umbenannt?

Wenn ja, kannst Du noch prüfen, ob u.U. der Code in htaccess.txt für die Version 1.82 geändert wurde. Diese Datei enthält Beispielcode zur Einbindung der html-URLs.

klaus++

Heiko schrieb:

Hallo,

ich hatte bisher SPIP 1.7.2 genutzt und dabei suchmaschinenfreundliche URLs genutzt. Dabei wurden die URLs wie folgt angezeigt:
domain.de/rubrikentitel_unterrubrik_artikelname_articleX.html

Jetzt habe ich den gleichen Code für SPIP 1.8 genutzt, in mes_options.php3 die "friendly" Version für die URLs eingestellt, aber jetzt klappt irgendwie nicht mehr ganz richtig, weil jetzt kommt bei Rubriken: domain.de/rubriqueX.html und bei Artikeln domain.de/artikelname_article.html

Ich bin jetzt ein wenig ratlos, aber eins ist mir aufgefallen: BEi der Domain, wo es bisher immer "toll" geklappt hatte, war die ganze SPIP-nstallation in einem Unterverzeichnis /spip, während bei der neuen Version nun alles direkt im "root" Verzeichnis liegt.

viele Grüße
HEiko

Und hier der Code von den "freundlichen" URLS:

<?php
require 'ecrire/inc_charsets.php3';

function text2sys($text)
{
       $sys = $text;
       $sys = strtolower(translitteration($sys, 'iso-8859-1'));
       $sys = ereg_replace("^[0-9]+\. ", "", $sys);
       $sys = ereg_replace("[^.a-z0-9_=-]+", " ", $sys);
       $sys = ereg_replace(" +", "_", trim($sys));
       return $sys;
}

function arborescence($id_rubrique)
{
       if ($id_rubrique == 0) {
               $url = $GLOBALS['meta']['adresse_site'].'/';
       } else {
               $result = spip_query("SELECT id_parent, titre FROM spip_rubriques WHERE id_rubrique=$id_rubrique");
               $row = spip_fetch_array($result);
               $url = arborescence($row['id_parent']).($row['id_parent'] != 0 ? text2sys($row['titre']).'_' : '');
   }
       return $url;
}

function generer_url_rubrique($id_rubrique) {
       $url = arborescence($id_rubrique).'rubrique'.$id_rubrique.'.html';
       return $url;
}

function generer_url_article($id_article) {
       $result = spip_query("SELECT id_rubrique, titre FROM spip_articles WHERE id_article=$id_article");
       $row = spip_fetch_array($result);
       $url = arborescence($row['id_rubrique']).text2sys($row['titre']).'_article'.$id_article.'.html';
       return $url;
}

function generer_url_breve($id_breve) {
       $result = spip_query("SELECT id_rubrique, titre FROM spip_breves where id_breve=$id_breve");
       $row = spip_fetch_array($result);
       $url = arborescence($row['id_rubrique']).text2sys($row['titre']).'_breve'.$id_breve.'.html';
       return $url;
}

function generer_url_forum($id_forum) {
       $url = $GLOBALS['meta']['adresse_site'].'/forum'.$id_forum.'.html';
       return $url;
}

function generer_url_mot($id_mot) {
       $result = spip_query("SELECT titre FROM spip_mots WHERE id_mot=$id_mot");
       $row = spip_fetch_array($result);
       $url = $GLOBALS['meta']['adresse_site'].'/'.text2sys($row['titre']).'_mot'.$id_mot.'.html';
       return $url;
}

function generer_url_auteur($id_auteur) {
       $result = spip_query("SELECT nom FROM spip_auteurs WHERE id_auteur=$id_auteur");
       $row = spip_fetch_array($result);
       $url = $GLOBALS['meta']['adresse_site'].'/'.text2sys($row['nom']).'_auteur'.$id_auteur.'.html';
       return $url;
}

function generer_url_document($id_document) {
       if ($id_document > 0) {
               $result = spip_query("SELECT fichier FROM spip_documents WHERE id_document = $id_document");
               if ($row = spip_fetch_array($result)) {
                       $url = $GLOBALS['meta']['adresse_site'].'/'.$row['fichier'];
               }
       }
       return $url;
}

function recuperer_parametres_url($fond, $url) {
       global $contexte;
}
?>
_______________________________________________
Spip-de@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-de

Ich hab eine Serie von Sites (bis jetzt zwei:-) , die das gleiche Grundlayout haben, und sich nur durch Farben, Bilder, andere Footer u.s.w unterscheiden.

Ich verwende, eine Kopie eines Layouts, sie sollen sich nur durch den Parametrierungsteil unterschieden, damit die Änderungen jeweils lokal sind.
Hier bräuchte ich eine Möglichkeit, z.B. das titre_mot zu parametrieren (oder eine Abfrage auf #TITRE).
Es gibt neue Möglichektein der Abfrage in SPIP 1.8, aber ich seh irgendwie nicht, wie man's anstellen könnte.

<div id="footer">
<hr style="margin-bottom:0; margin-right:4px;" />
<BOUCLE_article_footer(ARTICLES){titre_mot=mainfooter}>
#TEXTE
</BOUCLE_article_footer>

.----
Ich hab noch ein "kleines" CSS-Problem:
Vielleicht kann mir grad jemand einen Tipp geben (ich wäre extrem dankbar:-)
MSIE rendert den Footer nicht korrekt, resp. der Footer verursacht eine Verzerrung. Hier hat der Footer nur ein Zeichen, den Punkt:
http://protecsardinia.com.jovinus-meta.net/spip1.82e/render2.html (validierendes HTML & CSS)
(Thread aus Google
http://groups.google.com/group/comp.infosystems.www.authoring.stylesheets/browse_thread/thread/2570c6253de5871e)

Gruss
Patrick