Autor Zpráva
martin@monfish
Profil *
nevíte, prosím, někdo jaká je funkce na, nebo jak nejjednodušeji naprogramovat, výpis začátku článku , na který když se klikne, nebo na nějaký odkaz pod, tak se celý článek otevře na nové stránce? každá rada dobrá, díky m
Doktor
Profil *
no,podle mne by bylo dobré udělat si pro tohle takovou administraci kde by bylo jedno pole do kterýho by jsi napsal ten text co se zobrazí a do druhýho celý text; bohužel se skriptem ti nemůžu pomoci páč nevím opravdu jak by to vypadalo ale vím,že ve WordPressu nebo Redakčním Systému,který si můžeš nahrát na web to je
DJ Miky
Profil
Pokud chceš prvních X znaků z článku, tak fce substr...
martin@monfish
Profil *
jojo, to by mohlo stačit, jinak to první mě taky napadlo, ale vim jak to je se zadavanim veci navic za behu... kazdej na to kasle radakcni system nesystem :)
Berny
Profil
Doporučil bych raději využití regulárních výrazů, aby nedošlo u funkce substr k oříznutí v půlce slova.
simka00
Profil
tato fce zaručí, že ti to neuřízne v půlce slova:
function substr_podle_mezer($string, $maxlength, $extension) {

// $string - retezec
// $maxlength - max. delka ve znacich
// $extension - pripona, napr. tri tecky

$cutmarker = ".";
if (strlen($string) > $maxlength) {
$string = wordwrap($string, $maxlength, $cutmarker);
$string = explode($cutmarker, $string);
$string = $string[0] . $extension;
}
return $string;
}
martin@monfish
Profil *
tady lze ovlivnit delku vypsaneho retezce $maxlen=...
naky to nereze v pulce slova...

function strtrim($str, $maxlen=100, $elli=NULL, $maxoverflow=15) {
global $CONF;

if (strlen($str) > $maxlen) {

if ($CONF["BODY_TRIM_METHOD_STRLEN"]) {
return substr($str, 0, $maxlen);
}

$output = NULL;
$body = explode(" ", $str);
$body_count = count($body);

$i=0;

do {
$output .= $body[$i]." ";
$thisLen = strlen($output);
$cycle = ($thisLen < $maxlen && $i < $body_count-1 && ($thisLen+strlen($body[$i+1])) < $maxlen+$maxoverflow?true:false);
$i++;
} while ($cycle);
return $output.$elli;
}
else return $str;
}
Toto téma je uzamčeno. Odpověď nelze zaslat.