WebsiteBaker Support (2.13.x) > Hilfe & Support (deutsch)
Leerzeile zum Start im Content (keine Ahnung wo die herkommt)
markherrmann:
Bisschen überarbeitet:
Quellcode neu:
--- Code: ---function readNewsPosting($in_reverse_count=1) {
// Diese Funktion liest die letzten (in_reverse_count) News aus der Datenbank -> Rückgabe als Array
global $database;
$out = array();
$sql_command = "SELECT title, content_short, link, published_when FROM ".TABLE_PREFIX."mod_news_posts";
$sql_command .= " WHERE active = 1 ORDER BY posted_when DESC";
$sql_command .= " LIMIT ".$in_reverse_count;
$get_db = $database->query($sql_command);
$db_found = $get_db->numRows();
if ($db_found > 0) {
while ($db = $get_db->fetchRow()) {
$temp_array = array();
$temp_array["name"] = $db["title"];
$temp_array["desc"] = $db["content_short"];
$temp_array["link"] = WB_URL.PAGES_DIRECTORY.$db["link"].'.php';
$temp_array["time"] = $db["published_when"];
$out[] = $temp_array;
} // end while
} // end if db_found
return $out;
} // end function
// *** MAIN *************************************************************
date_default_timezone_set('Europe/Berlin');
$time_now = time();
echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">'."\n";
// URLS AUS MENU #1
ob_start();
show_menu2(1, SM2_ROOT, SM2_ALL, SM2_ALL|SM2_ALLINFO, '[url];', '', '', '', false, false);
$array_menus = explode(";", ob_get_contents());
$array_menus_removed = array_pop($array_menus); // das letzte Element aus Menus war immer leer (deswegen fliegt es raus)
$array_posts = readNewsPosting(20);
ob_end_clean();
for ($i=0; $i<(count($array_menus)); $i++) {
echo '<url>'."\n";
echo '<loc>'.$array_menus[$i].'</loc>'."\n";
echo '<lastmod>'.date("Y-m-d", $time_now).'</lastmod>'."\n";
echo '<changefreq>'.'weekly'.'</changefreq>'."\n";
echo '</url>'."\n";
} // end for
// URLS AUS NEWS-POSTINGS
for ($i=0; $i<(count($array_posts)); $i++) {
echo '<url>'."\n";
echo '<loc>'.$array_posts[$i]["link"].'</loc>'."\n";
echo '<lastmod>'.date("Y-m-d", $time_now).'</lastmod>'."\n";
echo '<changefreq>'.'weekly'.'</changefreq>'."\n";
echo '</url>'."\n";
} // end for
// URLS AUS MENU #2
ob_start();
show_menu2(2, SM2_ROOT, SM2_ALL, SM2_ALL|SM2_ALLINFO, '[url];', '', '', '', false, false);
$array_menus = explode(";", ob_get_contents());
ob_end_clean();
for ($i=0; $i<(count($array_menus)-1); $i++) {
echo '<url>'."\n";
echo '<loc>'.$array_menus[$i].'</loc>'."\n";
echo '<lastmod>'.date("Y-m-d", $time_now).'</lastmod>'."\n";
echo '<changefreq>'.'weekly'.'</changefreq>'."\n";
echo '</url>'."\n";
} // end for
echo '</urlset>';
--- End code ---
Template:
--- Code: ---<?php header("Content-type: text/xml");
echo "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>"."\n"; ?>
<?php page_content(); ?>
--- End code ---
Ausgabe XML:
--- Code: ---<?xml version="1.0" encoding="UTF-8" ?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://argeforum.de</loc>
<lastmod>2023-02-09</lastmod>
<changefreq>weekly</changefreq>
</url>
...
</urlset>
*** LEERZEILE 1***
*** LEERZEILE 2***
--- End code ---
Im Normalen Template endet es regulär mit
--- Code: ---</footer>
</body>
</html>
--- End code ---
:?
markherrmann:
Anmerkung: Die ominösen 2 Leerzeilen kommen auch dort. Nur eben woanders, wo der Inhalt aus dem CMS geladen wurde.
--- Code: ---<section id="content">
...
<hr><p style="margin-top: 20px;">Seite ausgeliefert am 09.02.2023 20:56 Uhr - Europe/Berlin (CET)</p>
*** LEERZEILE 1***
*** LEERZEILE 2***
</section>
--- End code ---
PS. Ich weiß: CSS-Styles im Quellcode sind hässlich, das sind nur Tests. :wink:
sternchen8875:
--- Quote ---Ich weiß: CSS-Styles im Quellcode sind hässlich, das sind nur Tests
--- End quote ---
häßlich oder nicht, es ist valides HTML
--- Quote ---Die ominösen 2 Leerzeilen kommen auch dort. Nur eben woanders, wo der Inhalt aus dem CMS geladen wurde.
--- End quote ---
welche Variante hast du denn jetzt in der frontend.functions. php
Zeig mal die Zeile 294 - 299 bitte
Bei dieser Variante bleiben die beiden hinteren \n ja stehen, wie Manu im Ticket-Post beschrieben hatte. Es entfernt nur das erste \n
--- Code: ---echo $sContent = \ltrim($sBeforeContent."\n".$sContent."\n".$sAfterContent."\n", "\n");
--- End code ---
mit dieser Zeite werden dann alle \n entfernt
--- Code: ---echo $sContent = \trim($sBeforeContent."\n".$sContent."\n".$sAfterContent."\n", "\n");
--- End code ---
allerdings brauch ich sie dann ja auch garnicht erst setzen. :wink:
--- Code: ---echo $sContent = $sBeforeContent.$sContent.$sAfterContent;
--- End code ---
macht aber auch häßlichen Quellcode
markherrmann:
Guten Morgen,
ich habe bisher nur die Änderungen entsprechend Ticket durchgeführt:
--- Code: --- if (!empty($sContent) && $isActive) {
$bPrintAnchor = ($bAnchor && ($sSectionIdPrefix == 'none')||($sSectionIdPrefix != 'none'));
$sAnchor = "\n".'<div id="'.$sSectionIdPrefix.$section_id.'" class="section m-'.$module.' '.$sAttribute.'" >';
$sBeforeContent = ($bPrintAnchor ? $sAnchor : '');
$sAfterContent = ($bPrintAnchor ? '</div><!-- INFO '.$module.$section_id.' -->' : '');
// echo $sContent = $sBeforeContent."\n".$sContent."\n".$sAfterContent."\n";
echo $sContent = \ltrim($sBeforeContent."\n".$sContent."\n".$sAfterContent."\n", "\n");
}
--- End code ---
Fetten Dank für das Feedback. Ich weiß ja jetzt, wo ich reinschauen muss um noch mal Hand anzulegen. Mittlerweile habt Ihr netter Weise auch ein Ticket erfasst, so dass ich mir bei späteren Updates keine Gedanken machen muss, was noch abzuändern wäre.
EINEN GROSSEN DANK AN ALLE BETEILIGTEN.
Navigation
[0] Message Index
[*] Previous page
Go to full version