Link "czytaj więcej" po określonej ilości znaków
|
Statys |
Dodany dnia 25.07.2010 17:29:59
|
Przedszkolak
Postów: 40 Ostrzeżeń: 1
v7.02.03 Data rejestracji: 05.04.2009 12:38
|
Cześć,
czy ktoś z Was potrafiłby zrobić taka modyfikacje, ze przy pisaniu newsa było by tylko jedno pole do wpisywania tekstu zamiast dwóch.
Na stronie głównej byłby widoczny news, ale po X znaków automatycznie tworzyłby się na końcu "...>>czytaj więcej", który po kliknięciu wyświetlałby dalsza cześć newsa.
Oto przykład:
Pozdrawiam.
PW od moderatora:
- Brak Stopki! - Chemikpil 26.07 - 01:39
Edytowane przez konto usuniete dnia 25.07.2010 18:00:17
|
|
|
|
Wścibski Gość |
Dodany dnia 25.11.2024 07:04:06
|
Pan Kontekstualny
Postów: n^x
Data rejestracji: Zawsze
|
|
IP: localhost |
|
|
Chemikpil |
Dodany dnia 25.07.2010 22:34:36
|
Bywalec
Postów: 999 Pomógł: 54
Data rejestracji: 04.05.2008 21:46
|
Modyfikacja jest tu nie potrzebna. w themes.php wystarczy wczytać ciąg znaków wyświetlający newsa, i funkcją substr uciąć ciąg.
Przykład:
$news;
$ile_znakow_wyswietlic = 200;
$skrot = substr($news,0, $ile_znakow_wyswietlic);
$skrot .= "czytaj więcej";
echo $skrot;
Widzisz już jak działa ta funkcja. Teraz w themes.php ucinasz tą funkcją znaki i wyświetlasz część. Musisz jednak pamiętać by treść newsa podawać zawsze w pierwszym polu. Przy takim układzie drugie pole n ie interesuje Ciebie w ogóle.
Pozdro.
|
|
|
|
Statys |
Dodany dnia 26.07.2010 01:17:51
|
Przedszkolak
Postów: 40 Ostrzeżeń: 1
v7.02.03 Data rejestracji: 05.04.2009 12:38
|
Zrobilem tak:
function render_news($subject, $news, $info, $news_cat_name, $substr) {
$news;
$ile_znakow_wyswietlic = 300;
$skrot = substr($news,0, $ile_znakow_wyswietlic);
$skrot .= "czytaj więcej";
echo $skrot;
i cale newsy sie rozwalily. ;/ |
|
|
|
Chemikpil |
Dodany dnia 26.07.2010 01:38:59
|
Bywalec
Postów: 999 Pomógł: 54
Data rejestracji: 04.05.2008 21:46
|
Przecież ty skopiowałeś litera w literę kod który był przykładem. To nie jest rozwiązanie tylko przykład zastosowania funkcji substr.
Po drugie brak poprawnej stopki == brak wsparcia.
Do zobaczenia po poprawieniu stopki.
Mowa oczywiście o stronie: http://www.paramo...l/news.php
|
|
|
|
Statys |
Dodany dnia 26.07.2010 10:55:44
|
Przedszkolak
Postów: 40 Ostrzeżeń: 1
v7.02.03 Data rejestracji: 05.04.2009 12:38
|
Poprawione. Teraz mógłby mi ktoś pomóc? Niestety, ale nie wiem jak to zrobić.
//Stopka już zgodna z wytycznymi licencji// Foxi89
Edytowane przez konto usuniete dnia 26.07.2010 11:50:17
|
|
|
|
Chemikpil |
Dodany dnia 26.07.2010 13:28:05
|
Bywalec
Postów: 999 Pomógł: 54
Data rejestracji: 04.05.2008 21:46
|
Eh kolejna osoba która zamiast wysilić się i popróbować samemu czeka na gotowca. No cóż ok. Skoro wiem to pomogę.
Przykład na podstawie skorki Gillette:
Przede wszystkim w pierwszej części musi znaleźć się część która ma zastać wyświetlona na stronie głównej. Czemu nie cały news? Kwestia bezsensowego marnowania zasobów. Jeżeli będziesz miał 10 esejów na stronie głównej to i tak muszą one być pobrane w całości by mogły zostać skrócone. Lepiej więc pobrać jakąś część np koło 300, 400 znaków(na oko :)) i z tego ciąć.
Ciąg reprezentujący taki news zapisany jest w zmiennej $news
Teraz ja skrócimy do 200znaków, używając wcześniej wspomnianej funkcji substr()
Robimy to tak:
//News skrócony do 200 znaków
$skrot = substr($news, 0, 200);
//Dodajemy czytaj wiecej na sam koniec.
$skrot .= " ... <a href='?readmore=".$info['news_id']."'>czytaj więcej</a>";
Masz już skrócony news teraz należy go tylko wyświetlić.
Tak powinna wyglądać mniej wiecej twoja funkcja render_news();
echo "<table cellpadding='0' cellspacing='0' width='100%'>\n<tr>\n";
echo "<td class='capmain-left'></td>\n";
echo "<td class='capmain'>".$subject."</td>\n";
echo "<td class='capmain-right'></td>\n";
echo "</tr>\n</table>\n";
echo "<table width='100%' cellpadding='0' cellspacing='0' class='spacer'>\n<tr>\n";
$skrot = substr($news, 0, 200);
$skrot .= " ... <a href='?readmore=".$info['news_id']."'>czytaj więcej</a>";
echo "<td class='main-body middle-border'>".$skrot."</td>\n";
echo "</tr>\n<tr>\n";
echo "<td align='center' class='news-footer middle-border'>\n";
echo newsposter($info," ·").newsopts($info,"·").itemoptions("N",$info['news_id']);
echo "</td>\n";
echo "</tr><tr>\n";
echo "<td style='height:5px;background-color:#f6a504;'></td>\n";
echo "</tr>\n</table>\n";
I tak to powinno wyglądać. Mam nadzieje że zanim to wszystko skopiujesz, to choć postarasz się to zrozumieć. W brew pozorom cały manewr to 3 linijki kodu.
Pozdrawiam :)
Edytowane przez Chemikpil dnia 26.07.2010 14:44:03
|
|
|
|
Statys |
Dodany dnia 26.07.2010 14:39:10
|
Przedszkolak
Postów: 40 Ostrzeżeń: 1
v7.02.03 Data rejestracji: 05.04.2009 12:38
|
Zanim napisalem to sprobowalem sam to rozwiazac, jednak niebardzo mi to idzie. Podane przez Ciebie kody nie dzialaja poprawnie ani w moim themie ani w przykladowym Gillette. Nie chce pokazywac tresci po kliknieciu w "czytaj wiecej" oraz zle wyswietla liczbe znakow na glownej.
edit:
Widzisz już jak działa ta funkcja. Teraz w themes.php ucinasz tą funkcją znaki i wyświetlasz część. Musisz jednak pamiętać by treść newsa podawać zawsze w pierwszym polu. Przy takim układzie drugie pole n ie interesuje Ciebie w ogóle.
Pokazuje sie jednak tresc po "czytaj wiecej" ale dopiero jak jest wpisana w polu drugim. Czyli nie dziala tak jak to opisywales. Jakies pomysly?
PW od moderatora:
- Ogólna Uwaga - khaman 26.07 - 15:12
Edytowane przez Statys dnia 26.07.2010 15:15:00
|
|
|
|
Chemikpil |
Dodany dnia 26.07.2010 14:45:23
|
Bywalec
Postów: 999 Pomógł: 54
Data rejestracji: 04.05.2008 21:46
|
Wkradł się mały błąd. Post z rozwiązaniem poprawiony.
|
|
|
|
Statys |
Dodany dnia 26.07.2010 14:48:53
|
Przedszkolak
Postów: 40 Ostrzeżeń: 1
v7.02.03 Data rejestracji: 05.04.2009 12:38
|
Chemikpil napisał/a:
Wkradł się mały błąd. Post z rozwiązaniem poprawiony.
Wybacz, ale wciaz nic. Przeczytaj moj post u gory. |
|
|
|
Chemikpil |
Dodany dnia 26.07.2010 15:08:25
|
Bywalec
Postów: 999 Pomógł: 54
Data rejestracji: 04.05.2008 21:46
|
Dobra powstał mały chaos z tym więc podaje teraz już testowane i poprawne rozwiązanie. Sprawa ma się tak
if (isset($_GET['readmore']) && isnum($_GET['readmore'])){
echo "<table cellpadding='0' cellspacing='0' width='100%'>\n<tr>\n";
echo "<td class='capmain-left'></td>\n";
echo "<td class='capmain'>".$subject."</td>\n";
echo "<td class='capmain-right'></td>\n";
echo "</tr>\n</table>\n";
echo "<table width='100%' cellpadding='0' cellspacing='0' class='spacer'>\n<tr>\n";
echo "<td class='main-body middle-border'>".$news."</td>\n";
echo "</tr>\n<tr>\n";
echo "<td align='center' class='news-footer middle-border'>\n";
echo newsposter($info," ·").newsopts($info,"·").itemoptions("N",$info['news_id']);
echo "</td>\n";
echo "</tr><tr>\n";
echo "<td style='height:5px;background-color:#f6a504;'></td>\n";
echo "</tr>\n</table>\n";
}else{
echo "<table cellpadding='0' cellspacing='0' width='100%'>\n<tr>\n";
echo "<td class='capmain-left'></td>\n";
echo "<td class='capmain'>".$subject."</td>\n";
echo "<td class='capmain-right'></td>\n";
echo "</tr>\n</table>\n";
echo "<table width='100%' cellpadding='0' cellspacing='0' class='spacer'>\n<tr>\n";
$skrot = substr($news, 0, 200);
$skrot .= " ... <a href='?readmore=".$info['news_id']."'>czytaj więcej</a>";
echo "<td class='main-body middle-border'>".$skrot."</td>\n";
echo "</tr>\n<tr>\n";
echo "<td align='center' class='news-footer middle-border'>\n";
echo newsposter($info," ·").newsopts($info,"·").itemoptions("N",$info['news_id']);
echo "</td>\n";
echo "</tr><tr>\n";
echo "<td style='height:5px;background-color:#f6a504;'></td>\n";
echo "</tr>\n</table>\n";
}
Wszystko opiera się na warunku sprawdzającym czy jest czytana treść rozszerzona czy nie. Jeśli nie to skracamy newsa, jeśli tak to go wyświetlamy normalnie.
|
|
|
|
kibel |
Dodany dnia 13.10.2010 23:19:18
|
Początkujący
Postów: 157 Pomógł: 8 Ostrzeżeń: 2
Data rejestracji: 01.02.2010 18:02
ZBANOWANY: Dożywotnio
|
A u mnie dalej nie działa rozjeżdżają się panele newsów w prawo a wszystko dokładnie robię z tym jak jest napisane w tym temacie.
Oto mój render_news:
function render_news($subject, $news, $info) {
echo "<span id='news'><table class='border2' cellpadding='0' cellspacing='0' width='100%'>\n<tr>\n";
echo "<td class='capmain-left'></td>\n";
echo "<td class='scapmain'>".$subject."</td>\n";
echo "<td class='capmain-right'></td>\n";
echo "</tr>\n</table>\n";
echo "<table class='border' cellpadding='0' cellspacing='0' width='100%'><tr>\n";
echo "<td class='side-body'><div style='text-align:justify'>".$news."</div></td>\n";
echo "</tr>\n"; {
echo "<tr>\n";
echo "<td class='news-footer'>\n";
//echo newsposter($info," ·").newsopts($info,"·").itemoptions("N",$info['news_id']);
echo "</td>\n";
echo "</tr>";
}
echo "<tr>\n";
echo "<td style='height=1 bgcolor=#383838'></td>\n";
echo "</tr>n</table></span>\n";
}
Kliknij jeśli pomogłem.
Bo życie uczy nas myślenia.
|
|
|
|
Statys |
Dodany dnia 22.02.2011 21:39:56
|
Przedszkolak
Postów: 40 Ostrzeżeń: 1
v7.02.03 Data rejestracji: 05.04.2009 12:38
|
Witam,
mam taki oto problem.
Po XX znaków, treść jest ucinana i na stronie głównej pokazuje się link do czytaj więcej. Po kliknięciu w link widzimy jednak tylko to, co wpisze się jako rozszerzoną treść newsa. Interesowałoby mnie, aby po kliknięciu w "czytaj więcej" pokazywał się tekst podstawowy a pod nim rozszerzony.
Ktoś ma pomysł?
Pozdrawiam
PS. Odrazu zaznaczę - nie, nie mogę dodawać newsów bez rozszerzenia. Tzn mógłbym, ale mam ponad 2000 newsów, które mają i zwykły tekst i rozszerzenie i wtedy nie dałoby się ich czytać. |
|
|
|
Chemikpil |
Dodany dnia 23.02.2011 13:38:02
|
Bywalec
Postów: 999 Pomógł: 54
Data rejestracji: 04.05.2008 21:46
|
Umieść to co jest w części podstawowej również w części rozszerzonej i po kłopocie.
|
|
|
|
Statys |
Dodany dnia 23.02.2011 13:42:07
|
Przedszkolak
Postów: 40 Ostrzeżeń: 1
v7.02.03 Data rejestracji: 05.04.2009 12:38
|
Chemikpil napisał/a:
Umieść to co jest w części podstawowej również w części rozszerzonej i po kłopocie.
Jak pisałem wyżej, na swojej stronie mam już trochę newsów. Większość jest skonstruowana tak, że ma treść podstawową oraz rozszerzoną. Nowe newsy mogę dodawać tak jak napisałeś, jednak te starsze będą nieczytelne, gdyż na stronie głównej będzie tylko XXX znaków danego newsa a w "czytaj więcej" będzie pokazywało się tylko rozszerzenie. Dlatego też byłoby fajnie, gdyby dało się zrobić, że po kliknięciu w "czytaj więcej" pokazuje się treść podstawowa i rozszerzona |
|
|
|
eldiablo |
Dodany dnia 23.02.2011 14:46:18
|
Bywalec
Postów: 671 Pomógł: 80
Data rejestracji: 13.07.2009 19:20
|
@statys edytuj plik news.php i "prawie" w dolnej części znajdź:
$news_news = stripslashes($data['news_extended'] ? $data['news_extended'] : $data['news_news']);
i zmień na:
$news_news = stripslashes($data['news_extended'] ? $data['news_news'].$data['news_extended'] : $data['news_news']);
Edytowane przez Pieka dnia 23.02.2011 14:54:24
|
|
|
|
Statys |
Dodany dnia 23.02.2011 14:49:34
|
Przedszkolak
Postów: 40 Ostrzeżeń: 1
v7.02.03 Data rejestracji: 05.04.2009 12:38
|
eldiablo napisał/a:
@statys edytuj plik news.php i "prawie" w dolnej części znajdź:
$news_news = stripslashes($data['news_extended'] ? $data['news_extended'] : $data['news_news']);
i zmień na:
$news_news = stripslashes($data['news_extended'] ? $data['news_news'].$data['news_extended'] : $data['news_news']);
I o to mi właśnie chodziło :) Dzięki wielkie :)
Edytowane przez Pieka dnia 23.02.2011 14:54:47
|
|
|
|
Amaru |
Dodany dnia 21.07.2011 23:49:45
|
Przedszkolak
Postów: 11
v7.02.03 Data rejestracji: 11.08.2008 11:35
|
Również chciałbym na swojej stronie zrobić tak, aby początkowo wyświetlała się zadana liczba znaków, a dopiero po kliknięciu na link pokazywała się dalsza treść newsa. Niestety nie mogę sobie poradzić z tym sam. Wszystkie newsy mam pisane w okienku "treść", nie korzystałem z "treść rozszerzona. Obecnie korzystam z PHP-Fusion w wersji v7.02.03. Czy mógłby mi ktoś napisać jak dokładnie ma wyglądać moja funkcja render_news?
Obecny mój kod render_news:
function render_news($subject, $news, $info) {
?>
<div class="<?php echo isset($_GET['readmore'])?'panel':'news'?>">
<h2 class="headline"><?php echo $subject?></h2>
<?php echo $news?>
<br /><br />
<span class="info">Dodał: <?php echo $info['user_name']?> dnia: <?php echo date('d.m.Y', $info['news_date'])?></span>
<?php if(!isset($_GET['readmore'])): ?>
<a href="<?php echo BASEDIR.'news.php?readmore='.$info['news_id'] ?>" class="button-brown">więcej</a>
<?php endif ?>
</div>
<?php
}
Z góry dziękuję.
Edit:
Może ktoś na serio się zlituje, już trzeci dzień nie mogę tego rozgryźć :/
Edit2:
Już sobie poradziłem z tym.
Wiadomość doklejona:
Czy istnieje taka możliwość przerobienia tego kodu tak aby tylko zalogowani użytkownicy mogli przeczytać dalszą część newsa (po kliknięciu na "czytaj więcej")?
Edytowane przez Amaru dnia 02.08.2011 12:31:21
|
|
|
|
119955 |
Dodany dnia 19.05.2012 00:28:53
|
Przedszkolak
Postów: 62 Ostrzeżeń: 5
v7.02.05 Data rejestracji: 16.02.2012 13:21
|
Witam. Robiłem wszystko zgodnei z tym:
Chemikpil napisał(a):
Dobra powstał mały chaos z tym więc podaje teraz już testowane i poprawne rozwiązanie. Sprawa ma się tak
if (isset($_GET['readmore']) && isnum($_GET['readmore'])){
echo "<table cellpadding='0' cellspacing='0' width='100%'>\n<tr>\n";
echo "<td class='capmain-left'></td>\n";
echo "<td class='capmain'>".$subject."</td>\n";
echo "<td class='capmain-right'></td>\n";
echo "</tr>\n</table>\n";
echo "<table width='100%' cellpadding='0' cellspacing='0' class='spacer'>\n<tr>\n";
echo "<td class='main-body middle-border'>".$news."</td>\n";
echo "</tr>\n<tr>\n";
echo "<td align='center' class='news-footer middle-border'>\n";
echo newsposter($info," ·").newsopts($info,"·").itemoptions("N",$info['news_id']);
echo "</td>\n";
echo "</tr><tr>\n";
echo "<td style='height:5px;background-color:#f6a504;'></td>\n";
echo "</tr>\n</table>\n";
}else{
echo "<table cellpadding='0' cellspacing='0' width='100%'>\n<tr>\n";
echo "<td class='capmain-left'></td>\n";
echo "<td class='capmain'>".$subject."</td>\n";
echo "<td class='capmain-right'></td>\n";
echo "</tr>\n</table>\n";
echo "<table width='100%' cellpadding='0' cellspacing='0' class='spacer'>\n<tr>\n";
$skrot = substr($news, 0, 200);
$skrot .= " ... <a href='?readmore=".$info['news_id']."'>czytaj więcej</a>";
echo "<td class='main-body middle-border'>".$skrot."</td>\n";
echo "</tr>\n<tr>\n";
echo "<td align='center' class='news-footer middle-border'>\n";
echo newsposter($info," ·").newsopts($info,"·").itemoptions("N",$info['news_id']);
echo "</td>\n";
echo "</tr><tr>\n";
echo "<td style='height:5px;background-color:#f6a504;'></td>\n";
echo "</tr>\n</table>\n";
}
Wszystko opiera się na warunku sprawdzającym czy jest czytana treść rozszerzona czy nie. Jeśli nie to skracamy newsa, jeśli tak to go wyświetlamy normalnie.
i tak jak innym newsy rozjeżdżają mi się w prawo nie zważając na panele po prawej. Bardzo proszę o rozwiązanie tego problemu. Moja skórka to Army.
Plik theme.php:
<?php
//Theme by PhpFusionBox.com
if (!defined("IN_FUSION")) {
die("Access Denied");
}
define("THEME_BULLET", "<span class='bullet'>·
</span>");
require_once INCLUDES."theme_functions_include.php";
function render_page($license=false) {
global $settings, $main_style, $locale, $userdata, $user_name, $user_id;
//Header
echo "<table cellpadding='0' cellspacing='0' width='95%' align='center'>\n<tr>\n";
echo "<td align='left'><img src='".THEME."/images/pfboxdl.gif'></td>\n";
echo "<td class='pfboxdc' width='100%' align='right'>".showsubdate()."</td>\n";
echo "<td align='left'><img src='".THEME."/images/pfboxdr.gif'></td>\n";
echo "</tr>\n</table>\n";
echo "<table cellpadding='0' cellspacing='0' width='95%' align='center'>\n<tr>\n";
echo "<td><img src='".THEME."/images/pfboxheaderl.gif'></td>\n";
echo "<td class='full-header' width='100%' height='150'><center>".showbanners()."</center></td>\n";
echo "<td><img src='".THEME."/images/pfboxheaderr.gif'></td>\n";
echo "</tr>\n</table>\n";
echo "<table cellpadding='0' cellspacing='0' width='95%' align='center'>\n<tr>\n";
echo "<td align='left'><img src='".THEME."/images/subheader-left.gif'></td>\n";
echo "<td class='sub-header' align='left' width='100%'>".showsublinks(" ", "white")."</td>\n";
echo "<td align='right'><img src='".THEME."/images/subheader-right.gif'></td>\n</tr>\n</table>\n";
//Content
echo "<table cellpadding='0' cellspacing='0' width='95%' class='$main_style' align='center' class='spacer'>\n<tr>\n<br>";
if (LEFT) {
echo "<tr><td class='side-border-left' valign='top'>".LEFT."</td>";
}
echo " <td class='main-bg' valign='top'>".U_CENTER.CONTENT.L_CENTER."</td> ";
if (RIGHT) {
echo "<td class='side-border-right' valign='top'>".RIGHT."</td></br>";
}
echo "</tr>\n</table>\n";
//Footer
echo "</tr>\n</table>\n";
echo "<table cellpadding='0' cellspacing='0' width='95%' align='center'>\n<tr>\n";
echo "<td align='left'><img src='".THEME."/images/pfboxfooterl.gif'></td>\n";
echo "<td align='center' class='bottom-footer' width='100%'>2012 37 CDW Pomarańczarnia | <a href='mailto:?subject=Strona internetowa'>Strona stworzona przez dh. Piotra Szwedzińskiego</a></td>\n";
echo "<td align='right'><img src='".THEME."/images/pfboxfooterr.gif'></td></tr></table>\n";
echo "<table cellpadding='0' cellspacing='0' width='100%'><tr><td><center>Powered by <a href='http://php-fusion.co.uk'>PHP-Fusion</a> copyright 2002 - 2012 by Nick Jones.<br> Released as free software without warranties under <a href='http://www.fsf.org/licensing/licenses/agpl-3.0.html'>GNU Affero GPL v3</a>.</center></td>\n</tr>\n";
echo "</tr>\n</table>\n";
echo "<table cellpadding='0' cellspacing='0' width='100%'>\n<tr>\n";
echo "</td>\n";
echo "</tr>\n</table>\n";
}
function render_news($subject, $news, $info) {
echo "<table cellpadding='0' cellspacing='0' width='100%' align='center' >\n<tr>\n";
echo "<td align='left'><img src='".THEME."/images/pfboxcap-left.gif'></td>\n";
echo "<td class='capmain' width='100%'><center>".$subject."</center></td>\n";
echo "<td align='right'><img src='".THEME."/images/pfboxcap-right.gif'></td>\n";
echo "</tr>\n</table>\n";
echo "<table width='100%' cellpadding='0' cellspacing='0' align='center'>\n<tr>\n";
echo "<td class='pfboxsidelinel' width='7' height='100%'> </td>\n";
echo "<td class='main-body'>".$info['cat_image'].$news."</td>\n";
echo "<td class='pfboxsideliner' width='7' height='100%'> </td>\n";
echo "</tr>\n</table>\n";
echo "<table width='100%' cellpadding='0' cellspacing='0' align='center'>\n<tr>\n";
echo "<td class='pfboxsidelinel' width='7' height='100%'> </td>\n";
echo "<td align='center' class='news-footer'>\n";
echo newsposter($info," ·").newsopts($info,"·").itemoptions("N",$info['news_id']);
echo "</td>\n";
echo "<td class='pfboxsideliner' width='7' height='100%'> </td>\n";
echo "</tr>\n</table>\n";
echo "<table cellspacing='0' cellpadding='0' class='spacer'><tr>
<td align='left'><img src='".THEME."/images/pfboxsidebl.gif'></td>
<td align='center' class='pfboxsideb' width='100%'></td>
<td align='right'><img src='".THEME."/images/pfboxsidebr.gif'></td>
</tr></table>\n";
}
function render_article($subject, $article, $info) {
echo "<table width='100%' cellpadding='0' cellspacing='0'>\n<tr>\n";
echo "<td align='left'><img src='".THEME."/images/pfboxcap-left.gif'></td>\n";
echo "<td class='capmain' width='100%'>".$subject."</td>\n";
echo "<td align='right'><img src='".THEME."/images/pfboxcap-right.gif'></td>\n";
echo "</tr>\n</table>\n";
echo "<table width='100%' cellpadding='0' cellspacing='0' class='spacer'>\n<tr>\n";
echo "<td class='pfboxsidelinel' width='7' height='100%'> </td>\n";
echo "<td class='main-body middle-border'>".($info['article_breaks'] == "y" ? nl2br($article) : $article)."</td>\n";
echo "<td class='pfboxsideliner' width='7' height='100%'> </td>\n";
echo "</tr>\n<tr>\n";
echo "<td class='pfboxsidelinel' width='7' height='100%'> </td>\n";
echo "<td align='center' class='news-footer'>\n";
echo articleposter($info," ·").articleopts($info,"·").itemoptions("A",$info['article_id']);
echo "</td>\n";
echo "<td class='pfboxsideliner' width='7' height='100%'> </td>\n";
echo "</tr>\n</table>\n";
echo "<table cellspacing='0' cellpadding='0' class='spacer'><tr>
<td align='left'><img src='".THEME."/images/pfboxsidebl.gif'></td>
<td align='center' class='pfboxsideb' width='100%'></td>
<td align='right'><img src='".THEME."/images/pfboxsidebr.gif'></td> </tr></table>\n";
}
function opentable($title) {
echo "<table cellpadding='0' cellspacing='0' width='100%' align='center'>\n<tr>\n";
echo "<td align='left'><img src='".THEME."/images/pfboxcap-left.gif'></td>\n";
echo "<td class='capmain' width='100%'>".$title."</td>\n";
echo "<td align='right'><img src='".THEME."/images/pfboxcap-right.gif'></td>\n";
echo "</tr>\n</table>\n";
echo "<table cellpadding='0' cellspacing='0' width='100%' align='center'>\n<tr>\n";
echo "<td class='pfboxsidelinel' width='7' height='100%'> </td>\n";
echo "<td class='main-body'>\n";
}
function closetable() {
echo "</td>\n";
echo "<td class='pfboxsideliner' width='7' height='100%'> </td>\n";
echo "</tr>\n</table>\n";
echo "<table cellspacing='0' cellpadding='0' class='spacer'><tr>
<td align='left'><img src='".THEME."/images/pfboxsidebl.gif'></td>
<td align='center' class='pfboxsideb' width='100%'></td>
<td align='right'><img src='".THEME."/images/pfboxsidebr.gif'></td> </tr></table>\n";
}
function openside($title, $collapse = false, $state = "on") {
global $panel_collapse; $panel_collapse = $collapse;
echo "<table cellpadding='0' cellspacing='0' width='100%'>\n<tr>\n";
echo "<td align='left'><img src='".THEME."/images/pfboxside-left.gif'></td>\n";
echo "<td class='scapmain' width='100%' align='center'>$title</td>\n";
if ($collapse == true) {
$boxname = str_replace(" ", "", $title);
echo "<td class='scapmain' align='right'>".panelbutton($state, $boxname)."</td>\n";
}
echo "<td align='left'><img src='".THEME."/images/pfboxside-right.gif'></td>\n";
echo "</tr>\n</table>\n";
echo "<table cellpadding='0' cellspacing='0' width='100%'>\n<tr>\n";
echo "<td class='pfboxsidelinel' width='7' height='100%'> </td>\n";
echo "<td class='side-body'>\n";
if ($collapse == true) {
echo panelstate($state, $boxname);
}
}
function closeside() {
global $panel_collapse;
if ($panel_collapse == true) {
echo "</div>\n";
}
echo "</td>\n";
echo "<td class='pfboxsideliner' width='7' height='100%'> </td>\n";
echo "</tr>\n</table>\n";
echo "<table cellspacing='0' cellpadding='0' class='spacer'><tr>
<td align='left'><img src='".THEME."/images/pfboxsidebl.gif'></td>
<td align='center' class='pfboxsideb' width='100%'></td>
<td align='right'><img src='".THEME."/images/pfboxsidebr.gif'></td> </tr></table>\n";
}
?>
EDIT:
Udało mi się uciąć newsa lecz mam problem, gdyż często ucina mi go w środku znacznika np. <br ... <- i tu już ucina nie domykają go. Jak mogę to wyeliminować?
PW od moderatora:
- Odświeżenie tematu - Pieka 19.05.2012 00:28
Edytowane przez 119955 dnia 15.05.2012 21:20:45
|
|
|
|
north |
Dodany dnia 21.08.2012 12:34:20
|
Przedszkolak
Postów: 10
v7.00.05 Data rejestracji: 12.08.2012 08:41
|
Zastosowałem u siebie rozwiązanie Chemikpila i działa jak w jego założeniu, bardzo fajnie. Natomiast ucina często w pół wyrazu news...
Da się to jakoś zmienić, żebym wklejał w którymś momencie newsa znacznik np div id=break. I właśnie na tym znaczniku by się pojawiał link "czytaj więcej"? W tej chwili jest to usystematyzowane do 200 znaków. Kombinowałem jakby to zrobić, ale nie mam pomysłu dobrego szczerze mówiąc. Dałoby radę coś w tej kwestii zrobić? |
|
|
|
119955 |
Dodany dnia 21.08.2012 12:44:48
|
Przedszkolak
Postów: 62 Ostrzeżeń: 5
v7.02.05 Data rejestracji: 16.02.2012 13:21
|
Ja w końcu to tak zrobiłem, że sam wpisuje ilość znaków, po których na ewentualnie uciąć oraz zrobiłem tak, że to ja decyduje, które newsy ma ucinać a które nie. |
|
|