News.tpl in start.tpl integrieren

Hallo zusammen,
wie man aus dem Titel des Posts schon erkennt, versuche ich gerade die News auf der Startseite anzeigen zu lassen und bekomme es einfach nicht gebacken :o. Eig. hört sich das ganze ja ganz leicht an:

In der start.tpl nen include rein auf die news.tpl und in der news.tpl die include _header.tpl und _footer.tpl löschen. Is nich!!!
Jedes mal zeigts mir dann den Fehler an:

Function ‘getNews’ does not exist or is not accessible! (Start)

zum besseren Verständniss, hier der Quelltext der news.tpl:

<strong class=“boxhead”>[{ oxmultilang ident=“NEWS_LATESTNEWSBY” }] [{ $oxcmp_shop->oxshops__oxname->value }]</strong>
<div class=“box info”>
<dl class=“news”>
[{foreach from=$oView->getNews() item=oNews}]
<dt>
<a name="[{ $oNews->oxnews__oxid->value}]">[{ $oNews->oxnews__oxdate->value|date_format:"%d.%m.%Y" }] - [{ $oNews->oxnews__oxshortdesc->value}]</a>
</dt>
<dd>
[{ $oNews->oxnews__oxlongdesc->value}]
</dd>
[{/foreach}]
</dl>
</div>

Wenn ich allerdings die cmp_news.tpl includiere in die start.tpl, funzt das ganze!
Allerdings ist dies nicht gewünscht, da es sich bei der cmp_news.tpl lediglich nur um eine verlikung auf die news.tpl handelt.

Kann mir irgendjemand helfen? Ich bin total ratlos was das angeht.
Danke schon mal im voraus!

Wenn Du kein Modul schreiben willst, kannst Du die Funktion in die start.php (Ordner views/) einfügen.

Suche:

parent::render();

        return $this->_sThisTemplate;
    }

dahinter einfügen:

public function getNews()
    {
        if ( $this->_oNewsList === null ) {
            $this->_oNewsList = false;
            $oActNews = oxNew( 'oxnewslist' );
            $oActNews->loadNews();
            if ( count($oActNews) ) {
                $this->_oNewsList = $oActNews;
            }
        }
        return $this->_oNewsList;
    }

Ungetestet, sollte aber gehen.

PERFEKT!!! :smiley: Danke für die schnelle Antwort

Hi,

… und schreib Dir fei bloss gut auf, was Du da getan hast. Nicht, dass wir schon beim nächsten Update Gejammer hören :slight_smile:

Gruß