Пример #1
0
                         if (!empty($content['alink']['alink_wordlimit'])) {
                             $row['article_summary'] = getCleanSubString($row['article_summary'], abs($content['alink']['alink_wordlimit']), $template_default['ellipse_sign'], $content['alink']['alink_wordlimit'] < 0 ? 'char' : 'word');
                         }
                     } else {
                         $row['article_summary'] = '';
                     }
                     $content['alink']['tr'][$key] = render_cnt_template($content['alink']['tr'][$key], 'SUMMARY', $row['article_summary']);
                 }
                 // $content['struct'][ $row['article_cid'] ]['acat_articlecount']
                 // count the articles per category and decide where to link on that basis
                 // store it if used once
                 if ($content['alink']['alink_categoryalias'] && ($row['article_structalias'] = get_structurelevel_single_article_alias($row['article_cid']))) {
                     $row['article_alias'] = $row['article_structalias'];
                 }
                 // link to article detail
                 $content['alink']['tr'][$key] = render_cnt_template($content['alink']['tr'][$key], 'ARTICLELINK', $row['article_morelink'] ? 'index.php?' . setGetArticleAid($row) : '');
                 // article category
                 $content['alink']['tr'][$key] = render_cnt_template($content['alink']['tr'][$key], 'CATEGORY', html_specialchars($content['struct'][$row['article_cid']]['acat_name']));
                 // Image Caption, Alt, Title
                 $content['alink']['tr'][$key] = render_cnt_template($content['alink']['tr'][$key], 'CAPTION', $row['article_image']['list_caption']);
                 $content['alink']['tr'][$key] = render_cnt_template($content['alink']['tr'][$key], 'CAPTION_ALT', $content['alink']['caption'][1]);
                 $content['alink']['tr'][$key] = render_cnt_template($content['alink']['tr'][$key], 'CAPTION_TITLE', $content['alink']['caption'][3]);
                 // article class based on keyword *CSS-classname*
                 $row['article_class'] = get_css_keywords($row['article_keyword']);
                 $row['article_class'] = count($row['article_class']) ? implode(' ', $row['article_class']) : '';
                 $content['alink']['tr'][$key] = render_cnt_template($content['alink']['tr'][$key], 'CLASS', $row['article_class']);
                 break;
             }
         }
     }
 }
Пример #2
0
    $sql .= "FROM " . DB_PREPEND . "phpwcms_article WHERE ";
    $sql .= "article_aktiv=1 AND article_deleted=0 AND article_nosearch!='1' AND ";
    $sql .= "article_nositemap=1 AND article_begin < NOW() AND article_end > NOW() ";
    $sql .= "ORDER BY article_tstamp DESC";
    if ($result = mysql_query($sql, $db)) {
        while ($data = mysql_fetch_assoc($result)) {
            // first proof if this article is within an "public" structure section
            if (isset($struct[$data['article_cid']])) {
                $_CAT = $struct[$data['article_cid']];
                if ($_CAT['acat_regonly'] || $_CAT['acat_nosearch'] == '1' || !$_CAT['acat_nositemap']) {
                    // no it is no public article - so jump to next entry
                    continue;
                }
                // now add article URL to Google sitemap
                if (empty($phpwcms['rewrite_url']) || empty($data['article_alias'])) {
                    $_link = PHPWCMS_URL . 'index.php?' . setGetArticleAid($data);
                } else {
                    $_link = PHPWCMS_URL . rawurlencode($data['article_alias']) . PHPWCMS_REWRITE_EXT;
                }
                echo '	<url>' . LF;
                echo '		<loc>' . $_link . '</loc>' . LF;
                echo '		<lastmod>' . $data["article_tstamp"] . '</lastmod>' . LF;
                echo '	</url>' . LF;
                // yes we have a minimum of 1 article link
                $phpwcms['sitemap_set_base'] = false;
            }
        }
    }
}
if (is_file(PHPWCMS_ROOT . '/include/config/sitemap.custom.ini')) {
    $customSitemapLinks = parse_ini_file(PHPWCMS_ROOT . '/include/config/sitemap.custom.ini', true);
Пример #3
0
                $alinkmenu['sum'] = "<tr>\n\t<td>" . $alinkmenu['sum'] . "</td>\n</tr>\n";
            }
            $alinkmenu['link'] .= "<tr>\n\t<td valign=\"top\"" . $tempRowSpan . " nowrap=\"nowrap\">" . $template_default["article"]["link_article_sign"] . "</td>\n\t";
            $alinkmenu['link'] .= '<td' . $alinkmenu['active_class'] . '>' . $alinkmenu['titlewrap'][0] . '<a href="index.php?' . setGetArticleAid($row) . '" ';
            $alinkmenu['link'] .= get_class_attrib($template_default["article"]["link_article_class"]) . ' title="' . $row['article_title'] . '">';
            $alinkmenu['link'] .= $row['article_menutitle'] . '</a>' . $alinkmenu['titlewrap'][1] . "</td>\n</tr>\n";
            $alinkmenu['link'] .= $alinkmenu['sum'];
        } else {
            if (!empty($alinkmenu["break"]) && $alinkmenu['count'] > 1) {
                $alinkmenu['link'] .= '	<' . $alinkmenu['ul_tag'][$alinkmenu['ul']][1] . ' class="break">';
                $alinkmenu['link'] .= $alinkmenu["break"];
                $alinkmenu['link'] .= '</' . $alinkmenu['ul_tag'][$alinkmenu['ul']][1] . '>' . LF;
            }
            $alinkmenu['link'] .= '	<' . $alinkmenu['ul_tag'][$alinkmenu['ul']][1];
            $alinkmenu['link'] .= $alinkmenu['active_class'] . '>' . $alinkmenu['titlewrap'][0];
            $alinkmenu['link'] .= '<a href="index.php?' . setGetArticleAid($row) . '" title="' . $row['article_title'] . '">';
            $alinkmenu['link'] .= $row['article_menutitle'];
            $alinkmenu['link'] .= '</a>' . $alinkmenu['titlewrap'][1];
            if ($alinkmenu['sum'] !== false) {
                $alinkmenu['link'] .= LF . $alinkmenu['sum'];
            }
            $alinkmenu['link'] .= '</' . $alinkmenu['ul_tag'][$alinkmenu['ul']][1] . '>' . LF;
        }
    }
    mysql_free_result($result);
}
if ($alinkmenu['link']) {
    //$content["alist"]["label"]
    if (!$alinkmenu['ul']) {
        $alinkmenu['link'] = '<table border="0" cellspacing="0" cellpadding="0">' . LF . $alinkmenu['link'] . "</table>" . LF;
        if (!empty($alinkmenu['class'])) {
Пример #4
0
/**
 * Return menu or menu elements based on article menu title information
 * starting at given structure level ID, limited to single level (non-nested)
 *
 * @return mixed (array/string)
 * @param array
 **/
function getArticleMenu($data = array())
{
    global $content;
    global $aktion;
    $defaults = array('level_id' => 0, 'class_active' => array(0 => 'active', 1 => ''), 'wrap_title_prefix' => '', 'wrap_title_suffix' => '', 'item_prefix' => "\t", 'item_suffix' => '', 'sort' => 'level', 'item_tag' => 'li', 'wrap_tag' => 'ul', 'attribute_wrap_tag' => '', 'class_item_tag' => '', 'class_first_item_tag' => '', 'class_last_item_tag' => '', 'return_format' => 'string', 'articlemenu_options' => array('enable' => false, 'image' => false, 'text' => false, 'width' => 0, 'height' => 0, 'crop' => 0, 'textlength' => 0, 'position' => 'inside', 'template' => '<span class="amenu-extended">[IMAGE]<img src="{IMAGE}" alt="{IMAGE_NAME}" />[/IMAGE][TEXT]<span class="p">{TEXT}</span>[/TEXT]</span>'));
    $data = is_array($data) && count($data) ? array_merge($defaults, $data) : $defaults;
    $li = array();
    $articles = get_actcat_articles_data($data['level_id']);
    $key = 0;
    $total = count($articles) - 1;
    foreach ($articles as $item) {
        $class = '';
        $class_a = '';
        if ($data['class_item_tag']) {
            $class .= $data['class_item_tag'] . ' ';
        }
        if ($key === 0 && $data['class_first_item_tag']) {
            $class .= $data['class_first_item_tag'] . ' ';
        } elseif ($key === $total && $data['class_last_item_tag']) {
            $class .= $data['class_last_item_tag'] . ' ';
        }
        if ($item['article_id'] == $aktion[1]) {
            if (!empty($data['class_active'][0])) {
                $class .= $data['class_active'][0] . ' ';
            }
            if (!empty($data['class_active'][1])) {
                $class_a = ' class="' . $data['class_active'][1] . '"';
                // set active link class
            }
        }
        $class = trim($class);
        $item['outside'] = '';
        $item['inside'] = '';
        if ($data['articlemenu_options']['enable']) {
            $item['img_src'] = '';
            $item['img_name'] = '';
            $item['amenu_text'] = '';
            if ($data['articlemenu_options']['image'] && (!empty($item['article_image']['list_id']) || !empty($item['article_image']['id']))) {
                if (!empty($item['article_image']['list_usesummary']) && !empty($item['article_image']['id'])) {
                    $item['img_src'] = $item['article_image']['hash'] . '.' . $item['article_image']['ext'];
                    $item['img_name'] = html($item['article_image']['name']);
                } elseif (!empty($item['article_image']['list_id'])) {
                    $item['img_src'] = $item['article_image']['list_hash'] . '.' . $item['article_image']['list_ext'];
                    $item['img_name'] = html($item['article_image']['list_name']);
                }
                if ($item['img_src']) {
                    $item['img_src'] = 'x' . $data['articlemenu_options']['height'] . 'x' . $data['articlemenu_options']['crop'] . '/' . $item['img_src'];
                    $item['img_src'] = 'img/cmsimage.php/' . $data['articlemenu_options']['width'] . $item['img_src'];
                }
            }
            if ($data['articlemenu_options']['text']) {
                switch ($data['articlemenu_options']['text']) {
                    case 'description':
                        $item['amenu_text'] = html(getCleanSubString($item['article_description'], abs($data['articlemenu_options']['textlength']), $GLOBALS['template_default']['ellipse_sign'], $data['articlemenu_options']['textlength'] < 0 ? 'char' : 'word'));
                        break;
                    case 'menutitle':
                        $item['amenu_text'] = html(getCleanSubString($item['article_menutitle'], abs($data['articlemenu_options']['textlength']), $GLOBALS['template_default']['ellipse_sign'], $data['articlemenu_options']['textlength'] < 0 ? 'char' : 'word'));
                        break;
                    case 'teaser':
                        if ($data['articlemenu_options']['textlength'] === 'HTML') {
                            $item['amenu_text'] = $item['article_summary'];
                        } else {
                            $item['amenu_text'] = trim(strip_tags($item['article_summary']));
                            $item['amenu_text'] = getCleanSubString($item['amenu_text'], abs($data['articlemenu_options']['textlength']), $GLOBALS['template_default']['ellipse_sign'], $data['articlemenu_options']['textlength'] < 0 ? 'char' : 'word');
                        }
                        break;
                }
            }
            $item[$data['articlemenu_options']['position']] = $data['articlemenu_options']['template'];
            $item[$data['articlemenu_options']['position']] = str_replace('{IMAGE_NAME}', $item['img_name'], $item[$data['articlemenu_options']['position']]);
            $item[$data['articlemenu_options']['position']] = render_cnt_template($item[$data['articlemenu_options']['position']], 'IMAGE', $item['img_src']);
            $item[$data['articlemenu_options']['position']] = render_cnt_template($item[$data['articlemenu_options']['position']], 'TEXT', $item['amenu_text']);
        }
        $li[$key] = $data['item_prefix'] . '<' . $data['item_tag'] . ($class != '' ? ' class="' . $class . '"' : '') . '>';
        $li[$key] .= '<a href="' . rel_url(array(), array('newsdetail'), setGetArticleAid($item)) . '"' . $class_a . '>';
        $li[$key] .= $data['wrap_title_prefix'];
        $li[$key] .= html(getArticleMenuTitle($item));
        $li[$key] .= $data['wrap_title_suffix'];
        $li[$key] .= $item['inside'];
        $li[$key] .= '</a>';
        $li[$key] .= $item['outside'];
        $li[$key] .= '</' . $data['item_tag'] . '>' . $data['item_suffix'];
        $key++;
    }
    if ($data['wrap_tag'] && count($li)) {
        array_unshift($li, '<' . trim($data['wrap_tag'] . ' ' . trim($data['attribute_wrap_tag'])) . '>');
        array_push($li, '</' . $data['wrap_tag'] . '>');
    }
    return $data['return_format'] == 'string' ? implode(LF, $li) : $li;
}
Пример #5
0
    while ($data = mysql_fetch_assoc($result)) {
        $item = new FeedItem();
        $item->title = combinedParser($data["article_title"], FEED_ENCODING);
        $item->link = PHPWCMS_URL . 'index.php?' . setGetArticleAid($data);
        $item->description = combinedParser(empty($data["article_summary"]) ? $data["article_subtitle"] : $data["article_summary"], FEED_ENCODING);
        $item->date = $data['article_created'] + $timePlus;
        $item->updateDate = $data['article_changeDate'] + $timePlus + 1;
        $item->source = PHPWCMS_URL;
        if ($FEED['useauthor'] || $FEED['defaultFormat'] == 'ATOM' || $FEED['defaultFormat'] == 'ATOM1.0') {
            if (!empty($data["article_username"])) {
                $item->author = $FEED['feedEmail'] . ' (' . combinedParser($data["article_username"]) . ')';
            } elseif ($FEED['defaultFormat'] == 'ATOM' || $FEED['defaultFormat'] == 'ATOM1.0') {
                $item->author = $FEED['feedAuthor'];
            }
        }
        $item->guid = PHPWCMS_URL . 'index.php?' . setGetArticleAid($data);
        $rss->addItem($item);
        $timePlus += 2;
    }
}
$rss->saveFeed($FEED['defaultFormat'], $FEED['filename']);
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function combinedParser($string, $charset = 'utf-8', $allowed_tags = '')
{
    $string = html_parser($string);
    $string = clean_replacement_tags($string, $allowed_tags);
    $string = str_replace('&nbsp;', ' ', $string);
    $string = decode_entities($string);
    $string = cleanUpSpecialHtmlEntities($string);
    if (!empty($string) && PHPWCMS_CHARSET != $charset) {
        $string = makeCharsetConversion($string, PHPWCMS_CHARSET, $charset);