News

Kurzbeschreibung

Forum: http://forum.phpwcms.org/viewtopic.php?p=117841#p117841

Autor: Oliver Georgi (2009/07/04)

  1. Erstelle die NEWS Artikel (ARTIKEL → NEWS)
  2. Öffne den Artikel wo der News-Block erscheinen soll oder nutze einen “Service” Artikel in dem der News-Contentpart vorgehalten wird.
  3. Erstelle einen neuen Contentpart “News”.
  4. Wähle ein Template aus (Es können auch eigene Templates erstellt werden → siehe unten).
  5. Es können Tags und spezielle Filter verwendet werden um die News-Ausgabe zu steuern.
  6. Denke an einen Zielartikel, der den News-Contentpart beinhaltet, wenn systemweit ein News-Block verwendet wird.
  7. Speichern

*) Erinnere dich - du kannst Contentparts in deinen Templates systemweit benutzen. Überprüfe die ID des News-Contentparts und verwende {SHOW_CONTENT: CP, ID} in deinen Templates.


News und Teaser TAG

Forum: http://forum.phpwcms.org/viewtopic.php?p=111617#p111617

Autor: markus_s

.news_inhalt.jpg

  • Erstelle unter ARTIKEL → NEWS (links im Menü) einige Einträge.
  • Das wichtigste ist hier im Bereich TAG/SCHLAGWORT, einen Namen einzugeben - z.B. das Jahr 2008.
  • Dann gibst Du auf der Startseite einen CP NEWS ein und füllst in aus… → hier wieder das TAG/SCHLAGWORT 2008 eingeben…
  • Wenn Du unter Einträge “max. 2” eingibst, werden nur die ersten zwei Einträge angezeigt…
  • Mit dem Template in template/inc_cntpart/news/* kannst du dein Layout verändern.

(Bitte kopiere das Master-Template aus template/inc_default/news.tmpl nach template/inc_cntpart/news/my_news.tmpl)

  • Wenn du unter Newsartikel: einen Namen eingibst, es sollte der/die Artikelalias/Artikel-ID der Artikelinformation sein, dann gelangst du bei einem Klick auf die Detailansicht der ausgewählten News.

Nimm als Basis das Video von ben..

Wichtig ist die Vergabe von eindeutigen Tags.


Spezielles Newstemplate von Ben

Forum: http://forum.phpwcms.org/viewtopic.php?p=104366#p104366

Autor: Ben

FIXME translate

Ich habe ein wenig mit den News- Vorlagen herumgespielt und eine News- Auflistung gemacht. Außerdem habe ich etwas CSS dazugepackt - für den Fall, dass es jemand verwenden mag.

Ich habe mit CSS einen Rahmen um das Bild gemacht und das Bild verlinkt jetzt zu dem entsprechenden Artikel Ich habe aus dem Artikeltitel einen Link gemacht Ich habe den Haupt- Artikeltitel entfernt Außerdem ist im Template jetzt das “live date” zu den Artikeldeatails hinzugefügt ('created on' = 'erstellt am' und 'added by' = 'von'), um den Namen des Authors zu zeigen (idealerweise hätte man das auch in der php-Datei machen können). Jetzt liest sich das wie 'erstellt am 20.11.2009 von RCS' Desweiteren ist eine horizontale Linie zur Trennung der Aufmacherliste hinzugekommen Nicht getestet im IE6

Speichere diese Vorlage als .tmpl Datei in template\inc_cntpart\news\

<!--NEWS_SETTINGS_START//-->
; how many news should be listed per row
news_per_row = 2
 
; teaser text rendered as <p></p> = p
; or just line break to <br> = br
news_teaser_text = p
 
; template for files - the same as used
; for content part files , default:
; files_template_list = default
files_template_list = default
files_template_detail = default
files_direct_download = 0
 
<!--NEWS_SETTINGS_END//-->
news_per_row = 1
 
<!--NEWS_LIST_START//-->
[TITLE]<h3>{TITLE}</h3>[/TITLE]
[SUBTITLE]<h4>{SUBTITLE}</h4>[/SUBTITLE]
   <div class="hrNews"></div>
[NEWS_ENTRIES]{NEWS_ENTRIES}[/NEWS_ENTRIES]
<!--NEWS_LIST_END//-->
 
<!--NEWS_LIST_ENTRY_START//-->
   <!--
      Changedate: {DATE:d/m/Y H:i:s lang=EN}
      Livedate: {LIVEDATE:d.m.Y H:i:s lang=EN}
      Killdate: {KILLDATE:d.m.Y H:i:s lang=EN}
   //-->
   <div class="newsEntry[PRIO] prio{PRIO}[/PRIO]">
   [IMAGE]<a href="{NEWS_DETAIL_LINK}"><div class="newsImageTeaser"><img src="img/cmsimage.php/120x120x1/{IMAGE_ID}" alt="{CAPTION}" border="0" /></div></a>[/IMAGE]
   [NEWS_TITLE]<h2><a href="{NEWS_DETAIL_LINK}">{NEWS_TITLE}</a></h2>[/NEWS_TITLE]
   [NEWS_TEASER]<div class="news_teaser">{NEWS_TEASER}</div>[/NEWS_TEASER]
   [NEWS_TEASER_ELSE][NEWS_TEXT]{NEWS_TEXT}[/NEWS_TEXT][/NEWS_TEASER_ELSE]
   [NEWS_DETAIL_LINK]<div class="link"><a href="{NEWS_DETAIL_LINK}">Read more...</a></div>[/NEWS_DETAIL_LINK]
   <div class="hrNews"></div>
   </div>
<!--NEWS_LIST_ENTRY_END//-->
 
<!--NEWS_LIST_ENTRY_SPACE_START//-->
   <!-- space between news items -->
<!--NEWS_LIST_ENTRY_SPACE_END//-->
 
<!--NEWS_LIST_ROW_SPACE_START//-->
   <!-- space between rows of news items -->
<!--NEWS_LIST_ROW_SPACE_END//-->
 
 
<!--NEWS_LIST_START//-->
[NEWS_ENTRIES]{NEWS_ENTRIES}[/NEWS_ENTRIES]
<!--NEWS_LIST_END//-->
 
 
<!--NEWS_DETAIL_START//-->
<div class="news">
   <!--
      Changedate: {DATE:d/m/Y H:i:s lang=EN}
      Livedate: {LIVEDATE:d.m.Y H:i:s lang=EN}
      Killdate: {KILLDATE:d.m.Y H:i:s lang=EN}
   //-->
   [NEWS_TITLE]<h1>{NEWS_TITLE}</h1>[/NEWS_TITLE]
   [NEWS_SUBTITLE]<h2>{NEWS_SUBTITLE}</h2>[/NEWS_SUBTITLE]
   [NEWS_TOPIC]<p>Written on {LIVEDATE:d-m-Y lang=EN} by [AUTHOR]{AUTHOR}[PLACE], {PLACE}[/PLACE][/AUTHOR][AUTHOR_ELSE][PLACE], {PLACE}[/PLACE][/AUTHOR_ELSE]</p>[/NEWS_TOPIC]
   [IMAGE]
      [ZOOM_ELSE]
   [IMAGE_URL]<a href="{IMAGE_URL}"{IMAGE_URL_TARGET}>[/IMAGE_URL]
   <div class="newsImageTeaser"><img src="img/cmsimage.php/150x150x1/{IMAGE_ID}" alt="{CAPTION}" border="0" /></div>[IMAGE_URL]</a>[/IMAGE_URL]
      [/ZOOM_ELSE]
      [ZOOM]
   <a href="img/cmsimage.php/640x480/{IMAGE_ID}" target="_blank"{LIGHTBOX}[LIGHTBOX_CAPTION] title="{LIGHTBOX_CAPTION}"[/LIGHTBOX_CAPTION]>
   <div class="newsImageTeaser"><img src="img/cmsimage.php/200x185x1/{IMAGE_ID}" alt="{CAPTION}" border="0" /></div></a>
      [/ZOOM]
   [/IMAGE]
   [NEWS_TEXT]<div class="news_text">{NEWS_TEXT}</div>[/NEWS_TEXT]
   [NEWS_TEXT_ELSE][NEWS_TEASER]{NEWS_TEASER}[/NEWS_TEASER][/NEWS_TEXT_ELSE]
   [URL]
      <p><a href="{URL}"{URL_TARGET}>[URL_TEXT]{URL_TEXT}[/URL_TEXT][URL_TEXT_ELSE]more[/URL_TEXT_ELSE]</a></p>
   [/URL]
   [FILES]{FILES}[/FILES]
      [NEWS_LIST_LINK]
      <p class="link"><a href="{NEWS_LIST_LINK}">Back to news section</a></p>
   [/NEWS_LIST_LINK]
</div>
<!--NEWS_DETAIL_END//-->

Add this CSS to the frontend.css

/* ------- start news --------- */
 
.newsEntry {
   padding: 5px 0 0px 0;
}
 
.newsImageTeaser {
   float:left;
   border: 5px solid #f6ecee;
   margin: 0px 10px 5px 0;
   padding: 0px 0px 0 0;
 
}
.newsImageDetail {
   float:left;
   border: 5px solid #f6ecee;
   margin: 4px 10px 5px 0;
   padding: 0px 0px 0 0;
 
}
.news_teaser {
   text-align: justify;
}
 
.news_text{
   text-align: justify;
}
.hrNews{
   margin: 0px 0 0px 0;
   padding: 5px 0 0px 0;
   height:0;
   border:0;
   border-bottom:1px dotted #CCCCCC;
   clear:both;
}
 
/* ------- end news --------- */

Content part

  • To add news create an article and add the news content part. I've found that you need to specify a language in both the news content part and news article, English = en
  • type a name in the archive and news article boxes, i use type 'archive' and 'article'
  • Then save.

News article

  • The articles are pretty straight forward.
  • click on news on the left nav
  • create new news article
  • fill in all the boxes needed.
  • Add title (leave the title/alias at the top as this will be based on main title automatically)
  • fill in language English = en
  • put text in teaser and in the wysiwyg
  • check publish
  • create

Video

Workaround NEWS auf Index-Seite:

Nur für NEWs die auf der Indexseite des Systems verwendet werden:

Ist der Alias noch nicht sichtbar in der Browsereingabezeile (z.B. http://example.com/ anstatt http://example.com/index.phtml), wird der Link auf die NEWs-Details nicht richtig geschrieben.

Dieser CP-Trigger im Ordner /frontend_render/ beseitigt das Problem. (Das sollte eigentlich im Core berücksichtigt werden).


Docu: –
Forum: –

Autor: K.Heermann (flip-flop) http://planmatrix.de
CMS Version: >= 1.4x
Version: V1.0 (31.05.2010)

Bedingung:/config/phpwcms/conf.inc.php

  • $phpwcms['allow_ext_init'] = 1;


Datei: /template/inc_script/frontend_init/cp_trig_news_detail_link_v10.php

<?php
/**
 *********************************************************************************************
 * 31.05.10 KH: http://planmatrix.de
 * CP trigger: NEWS detail-link patch on root if there is no alias visible
 *
 * E.g. In Browserline you see: http://example.com/
 * This can´t run: http://example.com/index.php&newsdetail=20100501-1_news01
 * We need:        http://example.com/index.php?index&newsdetail=20100501-1_news01
 *********************************************************************************************
 */
// -------------------------------------------------------------------------------------------
// obligate check for phpwcms constants
    if (!defined('PHPWCMS_ROOT')) {
        die("You Cannot Access This Script Directly, Have a Nice Day."); }
// -------------------------------------------------------------------------------------------
 
 
function NEWS_DETAIL_LINK_ROOT($text, & $data) {
 
    // The right CP news (33) and we are located in the root directory
    if     ( $data['acontent_type'] == 33  AND ( $GLOBALS['content']['cat_id'] == 0 ) )
    {
        if ( strpos($text, 'index.php&amp;newsdetail') !== false)
            $text = str_replace('index.php&amp;newsdetail','index.php?'.$GLOBALS['content']["struct"][$GLOBALS['content']["cat_id"]]["acat_alias"].'&amp;newsdetail',$text);
    }
 
    return $text;
}
 
register_cp_trigger('NEWS_DETAIL_LINK_ROOT');
 
?>
deutsch/phpwcms-system/artikel/contentparts/news.txt · Last modified: 2010/05/31 17:15 by Knut Heermann (flip-flop)
www.planmatrix.de www.chimeric.de Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0