Newsblock im Artikel

Fragen/Tipps allgemeiner Art.

Newsblock im Artikel

Beitragvon bibi » 9. Jul 2005, 03:36

Hallo Zusammen!

Ich finde Redaxo echt 'suppi tolli spitzen klasse' !!! :)

Ich bin zwar noch Anfänger, aber ich habe schon ein bisschen was mit Redaxo basteln können.

Hier mein Ergebnis -- für alle die, wie ich, auf der Startseite rechts noch einen kleinen Newsblock haben wollen :)

Eingabe:
Code: Alles auswählen
<?php

MEDIA_HTMLAREA(1,"REX_VALUE[1]","100%","300px","../files/text.css","all","de");

?>
<?php

echo "<br><br>Folgende Artikel sollen angezeigt werden:<br>";

$format = new select;
$format->set_name("VALUE[2]");
$format->set_size(1);
$format->set_style("' class='inp100");

$format->add_option("Alle Artikel aus dieser Kategorie",0);
$format->add_option("Alle Artikel aus dieser Kategorie die als Teaser gekennzeichnet sind",1);
$format->add_option("Alle Artikel die als Teaser gekennzeichnet sind",2);
$format->set_selected("REX_VALUE[2]");
echo $format->out();

?><br><br>


Ausgabe:
Code: Alles auswählen
<div class="NewsBlock">
<div class="NewsArticle">
REX_HTML_VALUE[1]
</div>
<?
if ("REX_VALUE[2]" == 2) $sql = "select * from rex_article where startpage=0 and checkbox01=1 and status=1 order by rex_article.prior";
else if ("REX_VALUE[2]" == 1) $sql = "select * from rex_article where rex_article.category_id='REX_CATEGORY_ID' and startpage=0 and checkbox01=1 and status=1 order by rex_article.prior";
else $sql = "select * from rex_article where rex_article.category_id='REX_CATEGORY_ID' and startpage=0 and status=1 order by rex_article.prior";

$GC = new sql;

// $GC->setQuery("select * from rex_article where rex_article.category_id='REX_CATEGORY_ID' and startpage=0 and status=1 order by rex_article.prior");
$GC->setQuery($sql);

// Schleife fuer die News
for ($i=0;$i<$GC->getRows();$i++)
{

if ($i!=0)  echo "<!--
   
   <hr style=\"width:100%; height:1px;\" vspace=\"4\"> -->";

$aid = $GC->getValue("rex_article.id");

$jahr = substr($GC->getValue("rex_article.online_von"),0,4);
$monat = substr($GC->getValue("rex_article.online_von"),4,2);
$tag = substr($GC->getValue("rex_article.online_von"),6,2);

$date = "$tag.$monat.$jahr";
echo "\n<div class=\"NewsText\">\n";
echo "<div class=\"NewsDate\">".htmlentities($date)."</div><br />\n";
echo "<h3><a href=\"".getURLbyID($aid)."\">".htmlentities($GC->getValue("rex_article.name"))."</a></h3>\n";

if ($GC->getValue("rex_article.file")!="") echo "
      <img src=\"<?=$REX[HTDOCS_PATH]?>/files/".$GC->getValue("rex_article.file")."\" align=\"left\" style=\"border-right:10px #ffffff solid; border-bottom:10px #ffffff solid;\" width=\"170\" />\n";

echo htmlentities($GC->getValue("rex_article.beschreibung"))." ";
echo "\n<br/>";
echo "</div>\n";

$GC->next();
}

?>
</div>


... und hier das CSS:
Code: Alles auswählen
.NewsBlock {
        display:block;
        clear:none;
        float:left;
        width:100%;
        border-top:0px solid #666666;
        padding:0px 0px 0px 0px;
        margin:0px 0px 0px 0px;
        background-color:transparent;
}

.NewsText {
        display:block;
        clear:none;
        float:right;
        border-left:1px solid #CAD6E5;
        border-bottom:1px solid #CAD6E5;
        width:175px;
        padding:0px 0px 0px 2px;
        font-size:85%;
}

.NewsArticle {
        display:block;
        clear:none;
        float:left;
        width:320px;
}

.NewsDate {
        display:block;
        clear:none;
        float:left;
        font-size:90%;
}


Wie gesagt, ich bin noch ziemlich grün hinter den Ohren was Redaxo angeht, deshalb habe ich auch nur bestehenden Code verändert, aber vielleicht kann es jemand gebrauchen :)

Gruß,
Bibi 8)
bibi
 
Beiträge: 129
Registriert: 9. Jul 2005, 03:26
Wohnort: Bielefeld

Beitragvon Markus.Staab » 9. Jul 2005, 14:37

Hi Bibi,

immer wieder schön zu sehen, wie sich Neulinge sehr schnell mit dem System vertraut machen und eigene Addons/Module schreibe.

Weiter so!

Gruß,
Markus
Benutzeravatar
Markus.Staab
Entwickler
 
Beiträge: 9781
Registriert: 29. Jan 2005, 14:50
Wohnort: Aschaffenburg/Germany

anderer ansatz

Beitragvon bb_web » 28. Jul 2007, 08:22

ich habe einen container definiert -- ist jedem selbst überlassen wie -- ob über tabelle oder über n div bereich -- das kann man ja für sich machen.
im container einfach ne abfrage über den typ des artikels.
in meinem fall habe ich den typ als rechter container (id3) definiert.
angezeigt werden die links zu den entsprechenden artikeln.
vorteil -- der container bleibt übersichtlich -- und die inhalte des containers lassen sich durch ändern des artikeltyps schnell ändern - aktualisieren.
Besonders simpel wenn mehrere leuts an der website arbeiten.

Code: Alles auswählen
<?
$article_search = OOArticle::searchArticlesByType ("3");
foreach ($article_search as $article) {
echo "<li><a href=" . $article->getUrl() . ">" . $article->getName() .
"</a></li>";
}
?>
bb_web
 
Beiträge: 18
Registriert: 28. Jul 2007, 07:56


Zurück zu Allgemeines [R2]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste