modul gesucht: headline mit link auf artikelseite

willchisum
Beiträge: 19
Registriert: Mo 11. Nov 2002, 22:07
Kontaktdaten:

modul gesucht: headline mit link auf artikelseite

Beitrag von willchisum » Di 21. Jan 2003, 20:33

ich brauche ein modul (auf der eingangsseite), bei dem der redakteur aus allen artikeln (die es gibt) auswaehlen kann und die headline (des gelinkten artikels) gekuerzt mit einem link auf die eigentliche artikelseite verzweigt. ausserdem soll das bild des artikels vor dem link angezeigt werden. ... hat wahrscheinlich keiner verstanden...

JUG
Beiträge: 113
Registriert: Fr 20. Sep 2002, 12:24
Wohnort: Karlsruhe
Kontaktdaten:

Beitrag von JUG » Mo 27. Jan 2003, 21:09

Die Funktion ist im Modul "Artikelliste" enthalten, musste dir nur rausziehen.

willchisum
Beiträge: 19
Registriert: Mo 11. Nov 2002, 22:07
Kontaktdaten:

Danke

Beitrag von willchisum » Di 28. Jan 2003, 09:49

oh super - danke! eine antwort :D
werde ich mir mal ansehen.

pulk
Beiträge: 217
Registriert: Sa 2. Nov 2002, 09:57
Kontaktdaten:

Beitrag von pulk » Di 28. Jan 2003, 15:49

nur das mit dem bild is da nicht drinnen, oder ?!

JUG
Beiträge: 113
Registriert: Fr 20. Sep 2002, 12:24
Wohnort: Karlsruhe
Kontaktdaten:

Beitrag von JUG » Di 28. Jan 2003, 16:06

Also einen Teaser mit Bild gibt es IMHO noch nicht, das ist auch sehr speziell. Dazu müssten die Artikel im Standardformat Text/Bild vorhanden sein. Sicher willst du das Bild als Thumbnail haben, und schon wird das Thema komplex. Von "Resize" halte ich nicht viel, denn die Dateigröße bleibt dieselbe und die browserseitige Bildgrößenänderung sieht auch nicht sehr schick aus. Es gibt aber eine Serversoft (glaube ImageMagick), die Images verkleinern kann. Die Zusammenarbeit mit einem Modul hat glaube Idea-Tec aufgezeigt. Da gibt es ein Modul, das in einem vorher bestimmten Verzeichnis abgelegte Bilder anzeigen kann.

Wenn du jetzt aus diesen guten Ansätzen ein Modul zauberst, würdest du sicher einige Contenido-User überglücklich machen. Bild

pulk
Beiträge: 217
Registriert: Sa 2. Nov 2002, 09:57
Kontaktdaten:

Beitrag von pulk » Di 28. Jan 2003, 16:22

Wenn du jetzt aus diesen guten Ansätzen ein Modul zauberst, würdest du sicher einige Contenido-User überglücklich machen.
und vor allem mich ;)


ich würd auf das thumbnail erzeugen verzichten, mir würd schon reichen wenn sich das modul einfach das bild holt das im artikel is, da ich auch im artikel ein thumbnail habe, habe ich kein problem mit der dateigröße.

aber ich kann das nicht :cry:

idea-tec
Beiträge: 1242
Registriert: Do 19. Sep 2002, 14:41
Wohnort: Dichtelbach
Kontaktdaten:

Beitrag von idea-tec » Di 28. Jan 2003, 18:01

ich verspreche mal nichts, werde aber versuchen ob einer von meinen jungs das mal eben in unser artikel-modul integrieren kann.

wird aber am anfang ein schnellschuß und vordefinierte anzeigegröße welche man im modul jedoch selbst anpassen oder auch aussternen kann.
MfG, Karsten
Nicht Können bedeutet nicht, dass man etwas nicht beherrscht, sondern lediglich, dass man sich nicht traut es zu tun ;-)
| Internet | Ihr Logo deutschlandweit auf T-Shirts |
Diplomatie: Jemanden so in die Hölle zu schicken, dass er sich auf die Reise freut!!! ;-)

pulk
Beiträge: 217
Registriert: Sa 2. Nov 2002, 09:57
Kontaktdaten:

Beitrag von pulk » Di 28. Jan 2003, 18:01

juhuuuuuu :D

willchisum
Beiträge: 19
Registriert: Mo 11. Nov 2002, 22:07
Kontaktdaten:

Beitrag von willchisum » Di 28. Jan 2003, 23:03

JUG hat geschrieben:Die Funktion ist im Modul "Artikelliste" enthalten, musste dir nur rausziehen.
Habe jetzt mal nachgesehen:
im modul "artikelliste" kann man im template konfigurations bereich den "News-Verzeichnis" (struktur eintrag) auswaehlen und es werden alle unterliegenden Seiten angezeigt.
=> d. h. der redakteur muesste auch template konfigurations rechte haben. richtig?

idea-tec
Beiträge: 1242
Registriert: Do 19. Sep 2002, 14:41
Wohnort: Dichtelbach
Kontaktdaten:

Beitrag von idea-tec » Mi 29. Jan 2003, 06:18

wird vor dem Wochenende nix... sorry
ich hoffe ihr könnt so lange warten
MfG, Karsten
Nicht Können bedeutet nicht, dass man etwas nicht beherrscht, sondern lediglich, dass man sich nicht traut es zu tun ;-)
| Internet | Ihr Logo deutschlandweit auf T-Shirts |
Diplomatie: Jemanden so in die Hölle zu schicken, dass er sich auf die Reise freut!!! ;-)

pulk
Beiträge: 217
Registriert: Sa 2. Nov 2002, 09:57
Kontaktdaten:

Beitrag von pulk » Mi 29. Jan 2003, 15:58

idea-tec hat geschrieben:ich hoffe ihr könnt so lange warten
ich warte seit ich contenido kenne :D (kein vorwurf!!! an niemanden!!!)

idea-tec
Beiträge: 1242
Registriert: Do 19. Sep 2002, 14:41
Wohnort: Dichtelbach
Kontaktdaten:

Beitrag von idea-tec » So 2. Feb 2003, 22:15

so, das ding ist fertig...
getestet und funktioniert, aber nur mit der erweiterung "workflow_upload"

features:
wenn kein bild zugeordnet, kein bild, kein platzhalter notwendig
platzierung rechts oder links konfigurierbar (textfluß)
grafik wird in der artikel-konfiguration ausgewählt

upload demnächst mitsamt dokumentation auf der entwicklerseite möglich
MfG, Karsten
Nicht Können bedeutet nicht, dass man etwas nicht beherrscht, sondern lediglich, dass man sich nicht traut es zu tun ;-)
| Internet | Ihr Logo deutschlandweit auf T-Shirts |
Diplomatie: Jemanden so in die Hölle zu schicken, dass er sich auf die Reise freut!!! ;-)

pulk
Beiträge: 217
Registriert: Sa 2. Nov 2002, 09:57
Kontaktdaten:

Beitrag von pulk » Mo 3. Feb 2003, 15:10

super, freu mich schon es zu testen ;)

subsolutions
Beiträge: 11
Registriert: Fr 14. Feb 2003, 14:46
Kontaktdaten:

wann?

Beitrag von subsolutions » Mo 24. Feb 2003, 14:27

:wink: ich wäre echt dankbar wenn ihr das modul bald uploadet!!!
danke

JSIT
Beiträge: 15
Registriert: Di 4. Feb 2003, 16:14
Wohnort: Pfinztal
Kontaktdaten:

ARTIKELLISTE PLATINUM mit Bild, Titel, Vorschautext

Beitrag von JSIT » Do 27. Feb 2003, 11:04

Hallo!
Wir haben das umgesetzt ud verfeinern es noch.
Mit meinem Kunden zusammen haben wir das realisiert und haben das Modul "Der Artikel" und die Artikelliste angepasst.
Wir nutzen die Var
{head1} = Titel
{text1} = Vorschautext
{pic1} = Vorschaubild

von "Der Artikel" um eine Vorschau zu generieren die entweder die Artikel einer Kat liest, DER sogar die Startseiten der Kat. liest !!
Das kann man einstellen im Template.

Schaut Euch auch den MULTILINK an !!
Eine CMS_LINK Erweiterung mit Internen LINK, Bild Link, externen Link, Datei Link.

Hier der Code

Code: Alles auswählen

ModulName:
Start-Artikelliste Gold 

Bescheibung:
Listet {head1},{text1},{pic1} aus dem Modul "DER ARTIKEL" als Vorschau auf. Es können Startartikel oder Artikel gewählt werden, bei Startartikel werden die Startartikel der KAT gelesen, welche sich unter der gewählten KAT befinden!

IMPUT:

// selected category
$selected = "CMS_VALUE[0]";

echo "<table cellspacing=\"0\" cellpadding=\"5\" border=\"0\">
        <tr valign=\"top\">
          <td>Kategorie wählen:</td>
          <td>
            <select name=\"CMS_VAR[0]\">";

            // fetch all categorys
            $query = "SELECT A.idcat, A.level, C.name FROM $cfgTab_cat_tree AS A, ".
                     "$cfgTab_cat AS B, $cfgTab_cat_lang AS C WHERE A.idcat=B.idcat ".
                     "AND B.idcat=C.idcat AND C.idlang='$lang' AND B.idclient='$client' ".
                     "AND C.visible=1 ORDER BY A.idtree";

            // execute query
            $db->query($query);

            // loop result and build the options
            while ($db->next_record()) {

              // indent spacer
              $spaces = "";

              // how many levels
              $levels = $db->f("level");

              for ($i = 0; $i > $levels; $i ++) {
                // add 2 spaces for every level
                $spaces = $spaces . "'  '";

              } // end for

              if ($selected == $db->f("idcat")) {
                // selected category
                echo "<option selected=\"selected\" value=\"". $db->f("idcat") ."\">". $spaces . $db->f("name") ."</option>";

              } else {
                // category
                echo "<option value=\"". $db->f("idcat") ."\">". $spaces . $db->f("name") ."</option>";

              } // end if

            } // end while

echo "      </select>
          </td>
        </tr>
        <tr>
          <td colspan=\"2\">Startseiten, oder Artikel anzeigen</td>
        </tr>
        <tr>
          <td>STARTSEITEN</td>
          <td><input type=\"radio\" name=\"CMS_VAR[10]\" value=\"1\"></td>
        </tr>
        <tr>
          <td>ARTIKEL</td>
          <td><input type=\"radio\" name=\"CMS_VAR[10]\" value=\"0\" CHECKED></td>
        </tr>
        <tr>
          <td>Bildbreite:</td>
          <td><input type=\"text\" name=\"CMS_VAR[1]\" value=\"CMS_VALUE[1]\"></td>
        </tr>
        <tr>
          <td>Bildhöhe:</td>
          <td><input type=\"text\" name=\"CMS_VAR[2]\" value=\"CMS_VALUE[2]\"></td>
        </tr>
        <tr>
          <td>Max Zeichen Head1</td>
          <td><input type=\"text\" name=\"CMS_VAR[3]\" value=\"CMS_VALUE[3]\"></td>
        </tr>
        <tr>
          <td>Max Zeichen Head2</td>
          <td><input type=\"text\" name=\"CMS_VAR[4]\" value=\"CMS_VALUE[4]\"></td>
        </tr>
        <tr>
          <td>Text für Weiterleitung</td>
          <td><input type=\"text\" name=\"CMS_VAR[11]\" value=\"CMS_VALUE[11]\"></td>
        </tr>
        <tr>
          <td>Bild für Weiterleitung</td>
<td>";
echo "<select name=\"CMS_VAR[12]\" size=\"1\">";
$sql = "SELECT * FROM $cfgTab_upl WHERE idclient='$client' AND filetype='img' ORDER BY filename";
$db->query($sql);
while ($db->next_record()) {
         	echo "<option value=\"".$db->f("filename")."\" selected>".$db->f("description")."</option>";
}
echo "</SELECT></td>
</tr></table>";


OUTPUT:
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname   :     Artikelliste
* Author      :     4fb - Jan Lengowski
* Copyright   :     Contenido - four for business
* Created     :     15-08-2002
* Modified    :     16-08-2002
* Modified    :     20.02.2003 J.Schaaf, www.jsit.de
* Modified    :     23.02.2003 R.Meyer, EMK Elektronik GmbH
************************************************/
// second db class instance
$db2 = new DB_Contenido;

// selected category
$selcat = "CMS_VALUE[0]";

// selected is_start article or site article // jsit
$sel_start = "CMS_VALUE[10]";

// selected 'Weiter' Text // jsit
$text_to = "CMS_VALUE[11]";

// selected 'Weiter' Bild // jsit
$image_to = "CMS_VALUE[12]";

// bildbreite
// $imgwidth = "CMS_VALUE[1]";

// bildhoehe
// $imgheight = "CMS_VALUE[2]";

// anzahl der zeichen h1
// $mxh[0] = "CMS_VALUE[3]";

// anzahl der zeichen h2
// $mxh[1] = "CMS_VALUE[4]";

// select all articles in category widthout start article
// jsit start
if ($sel_start=="0")
{
	$query = "SELECT ARTLANG.idside, ARTLANG.idsidelang FROM $cfgTab_cat_side AS CATART, $cfgTab_side_lang AS ARTLANG ".
	         "WHERE CATART.idcat = '$selcat' AND ARTLANG.idside = CATART.idside AND ARTLANG.idlang = '$lang' AND ".
	         "ARTLANG.online = '1' AND CATART.is_start = '0' ORDER BY ARTLANG.title";
}
else
{
	$query = "SELECT ARTLANG.idside, ARTLANG.idsidelang FROM $cfgTab_cat_side AS CATART, $cfgTab_side_lang AS ARTLANG, $cfgTab_cat AS KAT  ".
	         "WHERE KAT.parentid = '$selcat' AND CATART.idcat = KAT.idcat AND ARTLANG.idside = CATART.idside AND ARTLANG.idlang = '$lang' AND ".
	         "ARTLANG.online = '1' AND CATART.is_start = '1 ' ORDER BY ARTLANG.title";
}
//jsit end

// execute query
$db->query($query);

IF (_DEBUG)
{
	echo "CAT: ".$selcat ;
	echo "<br>:".$query."<br>";
	echo $db->nf()."<br>";
}

unset($articleID);
unset($linkID);


// get id's of sub articles
while ($db->next_record())
{
	$articleID[] = $db->f("idsidelang");
	$linkID[] = $db->f("idside");
} // end while

// loop through subarticles

IF (_DEBUG)
{
	echo "<pre>articleID:<br>";
	var_dump ($articleID);
	echo "</pre>";
}

// now loop through ALL articles
foreach ($articleID as $key => $value)
{
	// select all CMS variables of the article
	$query = "SELECT * FROM $cfgTab_content WHERE idsidelang = '$value' ORDER BY typeid";
	
	IF (_DEBUG)
	{
		echo "<pre><br>:".$query."<br>";
	}
	// execute query
	$db->query($query);

	IF (_DEBUG)
	{
		echo "select all CMS variables of the article:<br>";
		var_dump ($articleID);
		echo "</pre>";
	}

	// link
	$link = $sess->url("front_content.php?client=$client&lang=$lang&idcat=$selcat&idside=$linkID[$key]&m=$m&s=$s");

	// initialize vars to point out user Errors
	$headline = "HEADLINE not defined!";
	$text = "TEXT not defined!";
	$img = "IMAGE not defined!";

	// loop through result and extraxt data
	while ($db->next_record())
	{

		// data type
		$type = $db->f("idtype");
		$type2 = $db->f("typeid"); // R.Meyer

		if ($type == 1 && $type2 == 31)
		{ // headline "vorschau"
			$headline = $db->f("value");

		}
		elseif ($type == 3 && $type2 == 31)
		{ // text "vorschau"
			$text = $db->f("value");
		}
		elseif ($type == 4 && $type2 == 31)
		{ // image "vorschau"
			$value = $db->f("value");
			$query = "SELECT filename FROM $cfgTab_upl WHERE idupl = '$value'";
			$db2->query($query);
			$db2->next_record();
			//  $img = $cfgClient[$client]["htmlpath"]["img"] . $db2->f("filename");
			$img = $cfgClient[$client]["frontendpath"]["img"] . $db2->f("filename");

		} // end if

	} // end while

	IF (_DEBUG)
	{
		echo "<pre>headline:<br>";
		var_dump ($headline);
		echo "</pre>";
	}

	// not required. User is responsible to keep it short
	//  foreach ($headline as $key => $value) {
	//    // headline length
	//    $len = strlen($headline[$key]);
	//
	//    // cut headline if too long
	//    if ($len > $mxh[$key] && $mxh[$key] > 0) {
	//      $headline[$key] = substr($headline[$key],0,$mxh[$key]);
	//      $headline[$key] = $headline[$key] . " ...";
	//    } // end if
	//
	//  } // end foreach

	// HTML template for one element
	// old: <img src=\"$img\" width=\"$imgwidth\" height=\"$imgheight\">
	//      <span class=\"text\">$headline[1]</span>
	//	<tr valign=\"bottom\" bgcolor=\"#ffffff\" height=\"1\">
	//		<td>
	//			<img src=\"img/spacer.gif\" width=\"1\" height=\"1\">
	//		</td>
	//	</tr>
	
	echo "<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">
		<tr valign=\"top\">
			<td style=\"padding:10px\">
				<img src=\"$img\">
			</td>
			<td width=\"100%\" style=\"padding:10px\">
				<a href=\"$link\">
					<span class=\"head2\">$headline</span><br><br>
				</a>
				<span class=\"text\">$text</span><br>
			</td>
		</tr>
		<tr valign=\"bottom\" align=\"right\">
			<td colspan=\"2\">
				<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">
					<td valign=\"middle\" align=\"right\" width=\"100%\">
						<a href=\"$link\" style=\"font-size:11px;color:#000000\">$text_to
						</a>
					</td>
					<td align=\"right\">
						<a href=\"$link\">
							<img src=\"".$cfgClient[$client]["frontendpath"]["img"].$image_to."\" border=\"0\">
						</a>
					</td>
				</table>
			</td>
		</tr>
	</table><hr>";

	//unset($headline);

} // end foreach

die Abfrage IF (_DEBUG) ist einen Debugabfrage kann gelöscht werden ;-)

Einfach das Modul in eine Startseite einbauen! Fertig!
Man kan damit sogar ein Shopsystem erstellen, mit etwas Änderungen.
Version x folgt, wo man die max. Breite der Vorschaubilder festlegen kann oder ein neues Bild TH gebaut wird ( Modul Gallery)

Gruß und viel Spaß

Jörg

Fragen? Immer zu !
###############
www.jsit.de
www.phpnet.de
www.MailReader.de
################

Gesperrt