Unterschiedliche News auf Einzelseiten einblenden

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
cmb
Posts: 12647
Joined: Tue Jun 21, 2011 11:04 am
Location: Mü-Sa, RLP, DE
Contact:

Re: Unterschiedliche News auf Einzelseiten einblenden

Post by cmb » Tue Mar 20, 2018 12:05 pm

kmsmei wrote:
Tue Mar 20, 2018 9:19 am
In der Praxis zeigt sich ein kleines Ärgernis ausgerechnet bei der Startseite - dort ist beim Erstaufruf via URL $su noch leer. Eine Abfrage ist dann ganz praktisch, welche im Template fest auf die News der Startseite verweist, so im Sinne von

Code: Select all

if ($su == '') { echo newsbox("Home-NEWS");} 
Ah, ja, richtig. $su kann allerdings auch beim Aufruf von mailform, sitemap und u.U. anderen Seiten leer sein (probiere ?&mailform oder ?&sitemap). Wenn dann diese News-Seite nicht angezeigt werden sollte, dann könnte man folgendes tun:

Code: Select all

if ($s === $xh_publisher->getFirstPublishedPage()) { echo newsbox("Home-NEWS");} 
kmsmei wrote:
Tue Mar 20, 2018 9:19 am
Auch ist zu überlegen, ob man statt $su nicht besser den Seitentitel abfragt, um die Möglichkeit individueller News auch auf tiefer verschachtelten Seiten nutzen zu können

Code: Select all

<?=newsbox("$title-NEWS")?>
Ebenfalls ein guter Punkt. Auf Unterseiten enthält $su die eingestellten Seitentrenner (normalerweise /); diese könnte man z.B. durch ein - ersetzen, also:

Code: Select all

<?=newsbox(str_replace('/', '-', $su) . "-NEWS")?>
Auf der Seite Foo/Bar würde dann die Newsseite Foo-Bar-NEWS angezeigt.

Aber wenn $title passt, dann kann man es natürlich auch so machen.
Christoph M. Becker –Plugins for CMSimple_XH, but not for CMSimple 4+

kmsmei
Posts: 86
Joined: Tue Nov 03, 2009 9:03 am

Re: Unterschiedliche News auf Einzelseiten einblenden

Post by kmsmei » Fri Mar 23, 2018 10:40 am

Je länger man sich damit beschäftigt, desto mehr Ideen kommen einem dazu. Ich will die bisherigen Gedanken mal noch ein wenig weiterspinnen... Wenn man in der jeweiligen Seite per Script eine Variable setzt, die das Template auswerten kann, könnte man diverse Newsseiten auch mehrfach einsetzen, ohne doppelte Seiten schreiben zu müssen (Datenschutzhinweise bspw.)
Mein Versuch, das mit CMSimple-Scripting in Form von

Code: Select all

#CMSimple $GLOBALS['fh_newspage']='Datenschutz'; #
in einer beliebigen Seite hinzubekommen, war auch erfolgreich, so dass das Template mit der Variable in Form von

Code: Select all

if ($fh_newspage != ''): $newsblock = $fh_newspage; else: $newsblock = $title; endif;
dann die richtige Zuweisung machen kann.

isometric
Posts: 150
Joined: Thu Jun 12, 2014 8:32 am

Re: Unterschiedliche News auf Einzelseiten einblenden

Post by isometric » Thu Mar 29, 2018 1:34 pm

Ich hatte das mal in einem Template mit der Hilfe von Morepagedata gelöst.
Morepagedata.jpg
Im Template dann für eine Sidebar und den Footerbereich folgendes definiert:

Code: Select all

<aside class="<?php echo $class_sidebar ?>"> <!-- col-lg-3 col-sm-4 -->
    <?php echo submenu() ?>
    <?php if(isset($aside_image1)) { echo '<div class="clearfix imgbox"><img src="' . $plugin_cf['morepagedata']['path_image_folder'] . $aside_image1 . '" alt=""></div>'; } ?>
    <?php if (newsbox($aside_box1)!="") { ?>
        <div class="asidebox animated <?php echo $bb_anime[$bb_anime_keys[0]] ?>">
            <div class="newsbox"><?php echo newsbox($aside_box1);?></div>
        </div>
    <?php } ?>
    <?php if(isset($aside_image2)) { echo '<div class="clearfix imgbox"><img src="' . $plugin_cf['morepagedata']['path_image_folder'] .  $aside_image2 . '" alt=""></div>'; } ?>
    <?php if (newsbox($aside_box2)!="") { ?>
        <div class="asidebox animated <?php echo $bb_anime[$bb_anime_keys[0]] ?>">
            <div class="newsbox"><?php echo newsbox($aside_box2);?></div>
        </div>
    <?php } ?>
    <?php if(isset($aside_image3)) { echo '<div class="clearfix imgbox"><img src="' . $plugin_cf['morepagedata']['path_image_folder'] . $aside_image3 . '" alt=""></div>'; } ?>
    <?php if (newsbox($aside_box3)!="") { ?>
        <div class="asidebox animated <?php echo $bb_anime[$bb_anime_keys[0]] ?>">
            <div class="newsbox"><?php echo newsbox($aside_box3);?></div>
        </div>
    <?php } ?>
    <?php if(isset($aside_image4)) { echo '<div class="clearfix imgbox"><img src="' . $plugin_cf['morepagedata']['path_image_folder'] . $aside_image4 . '" alt=""></div>'; } ?>
</aside>
>
Damit konnte man im Backend für jede beliebige Seite in der Sidebar und im Footerbereich Bilder und versteckte Seiten in beliebiger Form und Anzahl "zusammenklicken".
You do not have the required permissions to view the files attached to this post.
in diesem Sinne isometric

Post Reply