Filter und Callback
10 years 5 months ago - 10 years 5 months ago #2883
by k.m.1
Replied by k.m.1 on topic Filter und Callback
Hallo Bram
Ich habe folgende _cb angelegt
und Angezeigt wird
DaHerren, Duft bath, Herren, Kinder
Ich habe schon einiges versucht aber ich komme auf keine Lösung
Ich habe folgende _cb angelegt
Code:
function tomtailor_cb(&$item) {
generic_cb($item);
tomtailor($item);
}
function tomtailor(&$item) {
#hier kun je dan slimme dingen doen met kleding
#bijvoorbeeld vertalen women -> dames
$item['menu_1']=ucfirst(str_replace(array('women','men','kids','bed'),array('Damen','Herren','Kinder','Duft'),strtolower($item['menu_1'])));
# php4 kent geen str_ireplace ( en is ook niet utf8 safe)
list($item['menu_1'],$item['menu_2'],$item['menu_3'])=explode (">",$item['menu_1']);
}
und Angezeigt wird
DaHerren, Duft bath, Herren, Kinder
Ich habe schon einiges versucht aber ich komme auf keine Lösung
Last edit: 10 years 5 months ago by redactie.
Please Log in to join the conversation.
10 years 5 months ago #2886
by redactie
Replied by redactie on topic Filter und Callback
it's a problem with 'men' matching on 'women' and damen you need to catch that situation
Code:
function tomtailor(&$item) {
$m=strtolower($item['menu_x']); # replace 'x'
if ( preg_match('#(wo|da)men#',$m) ) {
$m='damen';
} else {
$item=str_replace(array('men','kids','bed'),array('Herren','Kinder','Duft'),$m);
}
$item['menu_x']=$m; # replace x. don't need to ucfirst anymore
}
Please Log in to join the conversation.
10 years 5 months ago - 10 years 5 months ago #2890
by k.m.1
Replied by k.m.1 on topic Filter und Callback
Hallo Bram
Wie es aussieht habe ich die falsche Funktion gewählt.
Ich möchte die umwandlung von women,men,kids,beth im menü1 in
Damen, Herren, Kinder, Düfte, und dann
list($item,$item,$item)=explode (">",$item);
Wie muss dann die _cb aussehen ?
Wie es aussieht habe ich die falsche Funktion gewählt.
Ich möchte die umwandlung von women,men,kids,beth im menü1 in
Damen, Herren, Kinder, Düfte, und dann
list($item,$item,$item)=explode (">",$item);
Wie muss dann die _cb aussehen ?
Last edit: 10 years 5 months ago by k.m.1.
Please Log in to join the conversation.
10 years 5 months ago #2891
by redactie
Replied by redactie on topic Filter und Callback
first explode then replace.
Please Log in to join the conversation.
10 years 5 months ago - 10 years 4 months ago #2897
by k.m.1
Replied by k.m.1 on topic Filter und Callback
Sorry, ich komme einfach nicht weiter.
es ist doch sicherlich möglich
$item=str_replace(array('women','men','kids','bed'),array('Damen','Herren','Kinder','Duft'),$m);
umzubenennen das Damen nicht als DaHerrenen erscheinen?
es ist doch sicherlich möglich
$item=str_replace(array('women','men','kids','bed'),array('Damen','Herren','Kinder','Duft'),$m);
umzubenennen das Damen nicht als DaHerrenen erscheinen?
Last edit: 10 years 4 months ago by k.m.1.
Please Log in to join the conversation.
10 years 5 months ago #2898
by redactie
Replied by redactie on topic Filter und Callback
noop,
erst women - damen
und dan men -> herren
gibt women daherren
erst men -> herren
und dan women -> damen
gibt für damen (!) dadamen
daher die etwas komplexere Methode
andere lösung wäre eine Tabelle ( davon gibt es schon einige bespiele in der feeds.php )
erst women - damen
und dan men -> herren
gibt women daherren
erst men -> herren
und dan women -> damen
gibt für damen (!) dadamen
daher die etwas komplexere Methode
andere lösung wäre eine Tabelle ( davon gibt es schon einige bespiele in der feeds.php )
Code:
function tomtailor(&$item) {
$Geschlecht=array (
'women' => 'damen',
'men' => 'heren',
# und so weiter
);
list($item['menu_1'],$item['menu_2'],$item['menu_3'])=explode (">",$item['menu_1']);
$m=trim(strtolower($item['menu_1']));
if ( @$w=$Geschlecht[$m] ) {
$item['menu_1']=$w;
}
}
The following user(s) said Thank You: k.m.1
Please Log in to join the conversation.
Time to create page: 0.520 seconds