Пример #1
0
    /**
     * Prints html meta data to be used in the <head> section of a page
     *
     */
    static function getHTMLMetaData()
    {
        global $_zp_gallery, $_zp_galley_page, $_zp_current_album, $_zp_current_image, $_zp_current_zenpage_news, $_zp_current_zenpage_page, $_zp_gallery_page, $_zp_current_category, $_zp_authority, $_zp_conf_vars, $_myFavorites, $htmlmetatags_need_cache, $_zp_page;
        zp_register_filter('image_processor_uri', 'htmlmetatags::ipURI');
        $host = sanitize("http://" . $_SERVER['HTTP_HOST']);
        $url = $host . getRequestURI();
        // Convert locale shorttag to allowed html meta format
        $locale = str_replace("_", "-", getUserLocale());
        $canonicalurl = '';
        // generate page title, get date
        $pagetitle = "";
        // for gallery index setup below switch
        $date = strftime(DATE_FORMAT);
        // if we don't have a item date use current date
        $desc = getBareGalleryDesc();
        $thumb = '';
        if (getOption('htmlmeta_sitelogo')) {
            $thumb = getOption('htmlmeta_sitelogo');
        }
        if (getOption('htmlmeta_og-image') || getOption('htmlmeta_twittercard')) {
            $ogimage_width = getOption('htmlmeta_ogimage_width');
            $ogimage_height = getOption('htmlmeta_ogimage_height');
            if (empty($ogimage_width)) {
                $ogimage_width = 1280;
            }
            if (empty($ogimage_height)) {
                $ogimage_height = 900;
            }
        }
        $type = 'article';
        switch ($_zp_gallery_page) {
            case 'index.php':
                $desc = getBareGalleryDesc();
                //$canonicalurl = $host . getGalleryIndexURL();
                $canonicalurl = $host . getPageNumURL($_zp_page);
                $type = 'website';
                break;
            case 'album.php':
                $pagetitle = getBareAlbumTitle() . " - ";
                $date = getAlbumDate();
                $desc = getBareAlbumDesc();
                $canonicalurl = $host . getPageNumURL($_zp_page);
                if (getOption('htmlmeta_og-image') || getOption('htmlmeta_twittercard')) {
                    $thumbimg = $_zp_current_album->getAlbumThumbImage();
                    getMaxSpaceContainer($ogimage_width, $ogimage_height, $thumbimg, false);
                    $thumb = $host . html_encode(pathurlencode($thumbimg->getCustomImage(NULL, $ogimage_width, $ogimage_height, NULL, NULL, NULL, NULL, false, NULL)));
                }
                break;
            case 'image.php':
                $pagetitle = getBareImageTitle() . " (" . getBareAlbumTitle() . ") - ";
                $date = getImageDate();
                $desc = getBareImageDesc();
                $canonicalurl = $host . getImageURL();
                if (getOption('htmlmeta_og-image') || getOption('htmlmeta_twittercard')) {
                    $thumb = $host . html_encode(pathurlencode(getCustomSizedImageMaxSpace($ogimage_width, $ogimage_height)));
                }
                break;
            case 'news.php':
                if (function_exists("is_NewsArticle")) {
                    if (is_NewsArticle()) {
                        $pagetitle = getBareNewsTitle() . " - ";
                        $date = getNewsDate();
                        $desc = trim(getBare(getNewsContent()));
                        $canonicalurl = $host . $_zp_current_zenpage_news->getLink();
                    } else {
                        if (is_NewsCategory()) {
                            $pagetitle = $_zp_current_category->getTitlelink() . " - ";
                            $date = strftime(DATE_FORMAT);
                            $desc = trim(getBare($_zp_current_category->getDesc()));
                            $canonicalurl = $host . $_zp_current_category->getLink();
                            $type = 'category';
                        } else {
                            $pagetitle = gettext('News') . " - ";
                            $desc = '';
                            $canonicalurl = $host . getNewsIndexURL();
                            $type = 'website';
                        }
                    }
                    if ($_zp_page != 1) {
                        $canonicalurl .= '/' . $_zp_page;
                    }
                }
                break;
            case 'pages.php':
                $pagetitle = getBarePageTitle() . " - ";
                $date = getPageDate();
                $desc = trim(getBare(getPageContent()));
                $canonicalurl = $host . $_zp_current_zenpage_page->getLink();
                break;
            default:
                // for all other possible static custom pages
                $custompage = stripSuffix($_zp_gallery_page);
                $standard = array('contact' => gettext('Contact'), 'register' => gettext('Register'), 'search' => gettext('Search'), 'archive' => gettext('Archive view'), 'password' => gettext('Password required'));
                if (is_object($_myFavorites)) {
                    $standard['favorites'] = gettext('My favorites');
                }
                if (array_key_exists($custompage, $standard)) {
                    $pagetitle = $standard[$custompage] . " - ";
                } else {
                    $pagetitle = $custompage . " - ";
                }
                $desc = '';
                $canonicalurl = $host . getCustomPageURL($custompage);
                if ($_zp_page != 1) {
                    $canonicalurl .= '/' . $_zp_page;
                }
                break;
        }
        // shorten desc to the allowed 200 characters if necesssary.
        $desc = html_encode(trim(substr(getBare($desc), 0, 160)));
        $pagetitle = $pagetitle . getBareGalleryTitle();
        // get master admin
        $admin = $_zp_authority->getMasterUser();
        $author = $admin->getName();
        $meta = '';
        if (getOption('htmlmeta_http-equiv-cache-control')) {
            $meta .= '<meta http-equiv="Cache-control" content="' . getOption("htmlmeta_cache_control") . '">' . "\n";
        }
        if (getOption('htmlmeta_http-equiv-pragma')) {
            $meta .= '<meta http-equiv="pragma" content="' . getOption("htmlmeta_pragma") . '">' . "\n";
        }
        if (getOption('htmlmeta_name-keywords')) {
            $meta .= '<meta name="keywords" content="' . htmlmetatags::getMetaKeywords() . '">' . "\n";
        }
        if (getOption('htmlmeta_name-description')) {
            $meta .= '<meta name="description" content="' . $desc . '">' . "\n";
        }
        if (getOption('htmlmeta_name-page-topic')) {
            $meta .= '<meta name="page-topic" content="' . $desc . '">' . "\n";
        }
        if (getOption('htmlmeta_name-robots')) {
            $meta .= '<meta name="robots" content="' . getOption("htmlmeta_robots") . '">' . "\n";
        }
        if (getOption('htmlmeta_name-publisher')) {
            $meta .= '<meta name="publisher" content="' . FULLWEBPATH . '">' . "\n";
        }
        if (getOption('htmlmeta_name-creator')) {
            $meta .= '<meta name="creator" content="' . FULLWEBPATH . '">' . "\n";
        }
        if (getOption('htmlmeta_name-author')) {
            $meta .= '<meta name="author" content="' . $author . '">' . "\n";
        }
        if (getOption('htmlmeta_name-copyright')) {
            $meta .= '<meta name="copyright" content=" (c) ' . FULLWEBPATH . ' - ' . $author . '">' . "\n";
        }
        if (getOption('htmlmeta_name-rights')) {
            $meta .= '<meta name="rights" content="' . $author . '">' . "\n";
        }
        if (getOption('htmlmeta_name-generator')) {
            $meta .= '<meta name="generator" content="Zenphoto ' . ZENPHOTO_VERSION . '">' . "\n";
        }
        if (getOption('htmlmeta_name-revisit-after')) {
            $meta .= '<meta name="revisit-after" content="' . getOption("htmlmeta_revisit_after") . '">' . "\n";
        }
        if (getOption('htmlmeta_name-expires')) {
            $expires = getOption("htmlmeta_expires");
            if ($expires == (int) $expires) {
                $expires = preg_replace('|\\s\\-\\d+|', '', date('r', time() + $expires)) . ' GMT';
            }
            $meta .= '<meta name="expires" content="' . $expires . '">' . "\n";
        }
        // OpenGraph meta
        if (getOption('htmlmeta_og-title')) {
            $meta .= '<meta property="og:title" content="' . $pagetitle . '">' . "\n";
        }
        if (getOption('htmlmeta_og-image') && !empty($thumb)) {
            $meta .= '<meta property="og:image" content="' . $thumb . '">' . "\n";
        }
        if (getOption('htmlmeta_og-description')) {
            $meta .= '<meta property="og:description" content="' . $desc . '">' . "\n";
        }
        if (getOption('htmlmeta_og-url')) {
            $meta .= '<meta property="og:url" content="' . html_encode($url) . '">' . "\n";
        }
        if (getOption('htmlmeta_og-type')) {
            $meta .= '<meta property="og:type" content="' . $type . '">' . "\n";
        }
        // Social network extras
        if (getOption('htmlmeta_name-pinterest')) {
            $meta .= '<meta name="pinterest" content="nopin">' . "\n";
        }
        // dissalow users to pin images on Pinterest
        // Twitter card
        $twittername = getOption('htmlmeta_twittername');
        if (getOption('htmlmeta_twittercard') || !empty($twittername)) {
            $meta .= '<meta property="twitter:creator" content="' . $twittername . '">' . "\n";
            $meta .= '<meta property="twitter:site" content="' . $twittername . '">' . "\n";
            $meta .= '<meta property="twitter:card" content="summary">' . "\n";
            $meta .= '<meta property="twitter:title" content="' . $pagetitle . '">' . "\n";
            $meta .= '<meta property="twitter:description" content="' . $desc . '">' . "\n";
            if (!empty($thumb)) {
                $meta .= '<meta property="twitter:image" content="' . $thumb . '">' . "\n";
            }
        }
        // Canonical url
        if (getOption('htmlmeta_canonical-url')) {
            $meta .= '<link rel="canonical" href="' . $canonicalurl . '">' . "\n";
            if (METATAG_LOCALE_TYPE) {
                $langs = generateLanguageList();
                if (count($langs) != 1) {
                    foreach ($langs as $text => $lang) {
                        $langcheck = zpFunctions::getLanguageText($lang, '-');
                        //	for hreflang we need en-US
                        if ($langcheck != $locale) {
                            switch (METATAG_LOCALE_TYPE) {
                                case 1:
                                    $altlink = seo_locale::localePath(true, $lang);
                                    break;
                                case 2:
                                    $altlink = dynamic_locale::fullHostPath($lang);
                                    break;
                            }
                            switch ($_zp_gallery_page) {
                                case 'index.php':
                                    $altlink .= '/';
                                    break;
                                case 'gallery.php':
                                    $altlink .= '/' . _PAGE_ . '/gallery';
                                    break;
                                case 'album.php':
                                    $altlink .= '/' . html_encode($_zp_current_album->name) . '/';
                                    break;
                                case 'image.php':
                                    $altlink .= '/' . html_encode($_zp_current_album->name) . '/' . html_encode($_zp_current_image->filename) . IM_SUFFIX;
                                    break;
                                case 'news.php':
                                    if (function_exists("is_NewsArticle")) {
                                        if (is_NewsArticle()) {
                                            $altlink .= '/' . _NEWS_ . '/' . html_encode($_zp_current_zenpage_news->getTitlelink());
                                        } else {
                                            if (is_NewsCategory()) {
                                                $altlink .= '/' . _NEWS_ . '/' . html_encode($_zp_current_category->getTitlelink());
                                            } else {
                                                $altlink .= '/' . _NEWS_;
                                            }
                                        }
                                    }
                                    break;
                                case 'pages.php':
                                    $altlink .= '/' . _PAGES_ . '/' . html_encode($_zp_current_zenpage_page->getTitlelink());
                                    break;
                                case 'archive.php':
                                    $altlink .= '/' . _ARCHIVE_;
                                    break;
                                case 'search.php':
                                    $altlink .= '/' . _SEARCH_ . '/';
                                    break;
                                case 'contact.php':
                                    $altlink .= '/' . _CONTACT_ . '/';
                                    break;
                                default:
                                    // for all other possible none standard custom pages
                                    $altlink .= '/' . _PAGE_ . '/' . html_encode($pagetitle);
                                    break;
                            }
                            // switch
                            //append page number if needed
                            switch ($_zp_gallery_page) {
                                case 'index.php':
                                case 'album.php':
                                    if ($_zp_page != 1) {
                                        $altlink .= _PAGE_ . '/' . $_zp_page . '/';
                                    }
                                    break;
                                case 'gallery.php':
                                case 'news.php':
                                    if ($_zp_page != 1) {
                                        $altlink .= '/' . $_zp_page;
                                    }
                                    break;
                            }
                            $meta .= '<link rel="alternate" hreflang="' . $langcheck . '" href="' . $altlink . '">' . "\n";
                        }
                        // if lang
                    }
                    // foreach
                }
                // if count
            }
            // if option
        }
        // if canonical
        if (!empty($htmlmetatags_need_cache)) {
            $meta .= '<script type="text/javascript">' . "\n";
            $meta .= 'var caches = ["' . implode('","', $htmlmetatags_need_cache) . '"];' . "\n";
            $meta .= '
					window.onload = function() {
						var index,value;
						for (index in caches) {
								value = caches[index];
								$.ajax({
									cache: false,
									type: "GET",
									url: value
								});
						}
					}
					';
            $meta .= '</script>' . "\n";
        }
        zp_remove_filter('image_processor_uri', 'htmlmetatags::ipURI');
        echo $meta;
    }
Пример #2
0
function printBareAlbumDesc()
{
    echo html_encode(getBareAlbumDesc());
}
Пример #3
0
				<div id="main"<?php 
if ($zpmin_switch) {
    echo ' class="switch"';
}
?>
>
					<div id="albums-wrap">
						<?php 
while (next_album()) {
    ?>
						<div class="album-maxspace">
							<a class="thumb-link" href="<?php 
    echo html_encode(getAlbumURL());
    ?>
" title="<?php 
    echo getNumAlbums() . ' ' . gettext('subalbums') . ' / ' . getNumImages() . ' ' . gettext('images') . ' - ' . strip_tags(shortenContent(getBareAlbumDesc(), 300, '...'));
    ?>
">
								<?php 
    if ($zpmin_thumb_crop) {
        printCustomAlbumThumbImage(getAnnotatedAlbumTitle(), null, $zpmin_album_thumb_size, $zpmin_album_thumb_size, $zpmin_album_thumb_size, $zpmin_album_thumb_size);
    } else {
        printCustomAlbumThumbImage(getAnnotatedAlbumTitle(), $zpmin_album_thumb_size);
    }
    ?>
								<span class="album-title"><?php 
    echo shortenContent(getBareAlbumTitle(), 25, '...');
    ?>
</span>
							</a>
						</div>
Пример #4
0
         $metatitle = getBareGalleryTitle() . " ({$_zp_page})";
     } else {
         $metatitle = getBareGalleryTitle();
     }
     $zpfocus_metatitle = $metatitle;
     $zpfocus_metadesc = shortenContent(getBareGalleryDesc(), 150, '...');
     $galleryactive = true;
     break;
 case 'album.php':
     if ($_zp_page > 1) {
         $metatitle = getBareAlbumTitle() . " ({$_zp_page})";
     } else {
         $metatitle = getBareAlbumTitle();
     }
     $zpfocus_metatitle = $metatitle . getTitleBreadcrumb() . ' | ' . getBareGalleryTitle();
     $zpfocus_metadesc = shortenContent(getBareAlbumDesc(), 150, '...');
     $galleryactive = true;
     if (getOption('RSS_album_image')) {
         printRSSHeaderLink('Collection', getBareAlbumTitle() . ' - ' . gettext('Latest Images'), $lang = '') . "\n";
     }
     if (function_exists('printCommentForm') && getOption('RSS_comments')) {
         printRSSHeaderLink('Comments-album', getBareAlbumTitle() . ' - ' . gettext('Latest Comments'), $lang = '') . "\n";
     }
     break;
 case 'image.php':
     if (!$_zp_current_album->isDynamic()) {
         $titlebreadcrumb = getTitleBreadcrumb();
     } else {
         $titlebreadcrumb = '';
     }
     $zpfocus_metatitle = getBareImageTitle() . ' | ' . getBareAlbumTitle() . $titlebreadcrumb . ' | ' . getBareGalleryTitle();
Пример #5
0
$zpmin_metatitle = '';
$zpmin_albumorimage = '';
$zpmin_functionoption = '';
$cbscript = false;
?>
		<?php 
$zpmin_metadesc = truncate_string(getBareGalleryDesc(), 150, '...');
switch ($_zp_gallery_page) {
    case 'index.php':
        require_once ZENFOLDER . "/zp-extensions/image_album_statistics.php";
        $showsearch = false;
        $zpmin_social = false;
        break;
    case 'album.php':
        $zpmin_metatitle = getBareAlbumTitle() . ' | ';
        $zpmin_metadesc = truncate_string(getBareAlbumDesc(), 150, '...');
        printRSSHeaderLink('Album', getAlbumTitle());
        $galleryactive = true;
        $cbscript = true;
        break;
    case 'image.php':
        $zpmin_metatitle = getBareImageTitle() . ' | ';
        $zpmin_metadesc = truncate_string(getBareImageDesc(), 150, '...');
        $galleryactive = true;
        $cbscript = true;
        break;
    case 'archive.php':
        $zpmin_metatitle = gettext("Archive View") . ' | ';
        break;
    case 'search.php':
        $zpmin_metatitle = gettext('Search') . " | " . html_encode(getSearchWords()) . ' | ';
Пример #6
0
    echo ' class="switch"';
}
?>
>
		<div id="albums-wrap">
			<?php 
$c = 0;
while (next_album()) {
    $c++;
    ?>
				<div class="album-maxspace">
					<a class="thumb-link" href="<?php 
    echo html_encode(getAlbumURL());
    ?>
" title="<?php 
    echo strip_tags(shortenContent(getBareAlbumDesc(), 300, '...'));
    ?>
">
						<?php 
    if ($zpmin_thumb_crop) {
        printCustomAlbumThumbImage(getAnnotatedAlbumTitle(), null, $zpmin_album_thumb_size, $zpmin_album_thumb_size, $zpmin_album_thumb_size, $zpmin_album_thumb_size);
    } else {
        printCustomAlbumThumbImage(getAnnotatedAlbumTitle(), $zpmin_album_thumb_size);
    }
    ?>
						<span class="album-title"><?php 
    echo html_encodeTagged(shortenContent(getBareAlbumTitle(), 25, '...'));
    ?>
</span>
					</a>
				</div>
Пример #7
0
             $divider = '/ ';
         } else {
             $divider = '';
         }
         if (getNumAlbums() > 0) {
             $albumcount = getNumAlbums() . ' ' . gettext('albums');
         } else {
             $albumcount = '';
         }
         if (getNumImages() > 0) {
             $imagecount = getNumImages() . ' ' . gettext('images');
         } else {
             $imagecount = '';
         }
         $desc1 = $albumcount . $divider . $imagecount . ' ... <a href="' . html_encode(getAlbumURL()) . '">' . gettext('Goto Album') . ' &rarr;</a>';
         $desc2 = '<p>' . getBareAlbumDesc() . '</p>';
         $desc2 = str_replace("\r\n", '<br />', $desc2);
         $desc2 = str_replace("\r", '<br />', $desc2);
         $desc = $desc1 . $desc2;
         echo 'description: \'' . js_encode($desc) . '\',' . "\n";
         echo 'link: \'' . html_encode(getAlbumURL()) . '\'' . "\n";
         echo '}' . "\n";
         $c++;
     }
 }
 while (next_image(true)) {
     if (isImagePhoto($_zp_current_image)) {
         if ($c == 0) {
             echo '{' . "\n";
         } else {
             echo ',{' . "\n";
Пример #8
0
 /**
  * Prints html meta data to be used in the <head> section of a page
  *
  */
 static function getHTMLMetaData()
 {
     global $_zp_gallery, $_zp_page, $_zp_current_album, $_zp_current_image, $_zp_current_search, $_zp_current_article, $_zp_current_page, $_zp_gallery_page, $_zp_current_category, $_zp_authority, $_zp_conf_vars, $_myFavorites;
     $host = sanitize("http://" . $_SERVER['HTTP_HOST']);
     $url = $host . getRequestURI();
     // Convert locale shorttag to allowed html meta format
     $locale_ = getUserLocale();
     $locale = zpFunctions::getLanguageText($locale_, '-');
     $canonicalurl = '';
     // generate page title, get date
     $pagetitle = "";
     // for gallery index setup below switch
     $date = strftime(DATE_FORMAT);
     // if we don't have a item date use current date
     $desc = getBareGalleryDesc();
     $thumb = '';
     if (getOption('htmlmeta_sitelogo')) {
         $thumb = getOption('htmlmeta_sitelogo');
     }
     if (getOption('htmlmeta_og-image') || getOption('htmlmeta_twittercard')) {
         $ogimage_width = getOption('htmlmeta_ogimage_width');
         $ogimage_height = getOption('htmlmeta_ogimage_height');
         if (empty($ogimage_width)) {
             $ogimage_width = 1280;
         }
         if (empty($ogimage_height)) {
             $ogimage_height = 900;
         }
         $twittercard_type = 'summary';
     }
     $type = 'article';
     switch ($_zp_gallery_page) {
         case 'index.php':
             $desc = getBareGalleryDesc();
             $canonicalurl = $host . $_zp_gallery->getLink($_zp_page);
             $type = 'website';
             break;
         case 'album.php':
         case 'favorites.php':
             $pagetitle = getBareAlbumTitle() . " - ";
             $date = getAlbumDate();
             $desc = getBareAlbumDesc();
             $canonicalurl = $host . $_zp_current_album->getLink($_zp_page);
             if (getOption('htmlmeta_og-image') || getOption('htmlmeta_twittercard')) {
                 $thumbimg = $_zp_current_album->getAlbumThumbImage();
                 getMaxSpaceContainer($ogimage_width, $ogimage_height, $thumbimg, false);
                 $thumb = $host . html_encode(pathurlencode($thumbimg->getCustomImage(NULL, $ogimage_width, $ogimage_height, NULL, NULL, NULL, NULL, false, NULL)));
                 $twittercard_type = 'summary_large_image';
             }
             break;
         case 'image.php':
             $pagetitle = getBareImageTitle() . " (" . getBareAlbumTitle() . ") - ";
             $date = getImageDate();
             $desc = getBareImageDesc();
             $canonicalurl = $host . $_zp_current_image->getLink();
             if (getOption('htmlmeta_og-image') || getOption('htmlmeta_twittercard')) {
                 $thumb = $host . html_encode(pathurlencode(getCustomSizedImageMaxSpace($ogimage_width, $ogimage_height)));
                 $twittercard_type = 'summary_large_image';
             }
             break;
         case 'news.php':
             if (function_exists("is_NewsArticle")) {
                 if (is_NewsArticle()) {
                     $pagetitle = getBareNewsTitle() . " - ";
                     $date = getNewsDate();
                     $desc = trim(getBare(getNewsContent()));
                     $canonicalurl = $host . $_zp_current_article->getLink();
                 } else {
                     if (is_NewsCategory()) {
                         $pagetitle = $_zp_current_category->getTitlelink() . " - ";
                         $date = strftime(DATE_FORMAT);
                         $desc = trim(getBare($_zp_current_category->getDesc()));
                         $canonicalurl = $host . $_zp_current_category->getLink($_zp_page);
                         $type = 'category';
                     } else {
                         $pagetitle = gettext('News') . " - ";
                         $desc = '';
                         $canonicalurl = $host . getNewsPathNav($_zp_page);
                         $type = 'website';
                     }
                 }
             }
             break;
         case 'pages.php':
             $pagetitle = getBarePageTitle() . " - ";
             $date = getPageDate();
             $desc = trim(getBare(getPageContent()));
             $canonicalurl = $host . $_zp_current_page->getLink();
             break;
         default:
             // for all other possible static custom pages
             $custompage = stripSuffix($_zp_gallery_page);
             $standard = array('contact' => gettext('Contact'), 'register' => gettext('Register'), 'search' => gettext('Search'), 'archive' => gettext('Archive view'), 'password' => gettext('Password required'));
             if (is_object($_myFavorites)) {
                 $standard['favorites'] = gettext('My favorites');
             }
             if (array_key_exists($custompage, $standard)) {
                 $pagetitle = $standard[$custompage] . " - ";
             } else {
                 $pagetitle = $custompage . " - ";
             }
             $desc = '';
             $canonicalurl = $host . getCustomPageURL($custompage);
             break;
     }
     // shorten desc to the allowed 200 characters if necesssary.
     $desc = html_encode(trim(substr(getBare($desc), 0, 160)));
     $pagetitle = $pagetitle . getBareGalleryTitle();
     // get master admin
     $admin = $_zp_authority->getMasterUser();
     $author = $admin->getName();
     $meta = '';
     if (getOption('htmlmeta_http-equiv-cache-control')) {
         $meta .= '<meta http-equiv="Cache-control" content="' . getOption("htmlmeta_cache_control") . '">' . "\n";
     }
     if (getOption('htmlmeta_http-equiv-pragma')) {
         $meta .= '<meta http-equiv="pragma" content="' . getOption("htmlmeta_pragma") . '">' . "\n";
     }
     if (getOption('htmlmeta_name-keywords')) {
         $meta .= '<meta name="keywords" content="' . htmlmetatags::getMetaKeywords() . '">' . "\n";
     }
     if (getOption('htmlmeta_name-description')) {
         $meta .= '<meta name="description" content="' . $desc . '">' . "\n";
     }
     if (getOption('htmlmeta_name-page-topic')) {
         $meta .= '<meta name="page-topic" content="' . $desc . '">' . "\n";
     }
     if (getOption('htmlmeta_name-robots')) {
         $meta .= '<meta name="robots" content="' . getOption("htmlmeta_robots") . '">' . "\n";
     }
     if (getOption('htmlmeta_name-publisher')) {
         $meta .= '<meta name="publisher" content="' . FULLWEBPATH . '">' . "\n";
     }
     if (getOption('htmlmeta_name-creator')) {
         $meta .= '<meta name="creator" content="' . FULLWEBPATH . '">' . "\n";
     }
     if (getOption('htmlmeta_name-author')) {
         $meta .= '<meta name="author" content="' . $author . '">' . "\n";
     }
     if (getOption('htmlmeta_name-copyright')) {
         $meta .= '<meta name="copyright" content=" (c) ' . FULLWEBPATH . ' - ' . $author . '">' . "\n";
     }
     if (getOption('htmlmeta_name-rights')) {
         $meta .= '<meta name="rights" content="' . $author . '">' . "\n";
     }
     if (getOption('htmlmeta_name-generator')) {
         $meta .= '<meta name="generator" content="ZenPhoto20 ' . ZENPHOTO_VERSION . '">' . "\n";
     }
     if (getOption('htmlmeta_name-revisit-after')) {
         $meta .= '<meta name="revisit-after" content="' . getOption("htmlmeta_revisit_after") . ' days">' . "\n";
     }
     if (getOption('htmlmeta_name-expires')) {
         $expires = getOption("htmlmeta_expires");
         if ($expires == (int) $expires) {
             $expires = preg_replace('|\\s\\-\\d+|', '', date('r', time() + $expires)) . ' GMT';
         }
         $meta .= '<meta name="expires" content="' . $expires . '">' . "\n";
     }
     // OpenGraph meta
     if (getOption('htmlmeta_opengraph')) {
         $meta .= '<meta property="og:title" content="' . $pagetitle . '">' . "\n";
         if (!empty($thumb)) {
             $meta .= '<meta property="og:image" content="' . $thumb . '">' . "\n";
         }
         $meta .= '<meta property="og:description" content="' . $desc . '">' . "\n";
         $meta .= '<meta property="og:url" content="' . html_encode($url) . '">' . "\n";
         $meta .= '<meta property="og:type" content="' . $type . '">' . "\n";
     }
     // Social network extras
     if (getOption('htmlmeta_name-pinterest')) {
         $meta .= '<meta name="pinterest" content="nopin">' . "\n";
     }
     // dissalow users to pin images on Pinterest
     // Twitter card
     $twittername = getOption('htmlmeta_twittername');
     if (getOption('htmlmeta_twittercard') || !empty($twittername)) {
         $meta .= '<meta name="twitter:creator" content="' . $twittername . '">' . "\n";
         $meta .= '<meta name="twitter:site" content="' . $twittername . '">' . "\n";
         $meta .= '<meta name="twitter:card" content="' . $twittercard_type . '">' . "\n";
         $meta .= '<meta name="twitter:title" content="' . $pagetitle . '">' . "\n";
         $meta .= '<meta name="twitter:description" content="' . $desc . '">' . "\n";
         if (!empty($thumb)) {
             $meta .= '<meta name="twitter:image" content="' . $thumb . '">' . "\n";
         }
     }
     // Canonical url
     if (getOption('htmlmeta_canonical-url')) {
         $meta .= '<link rel="canonical" href="' . $canonicalurl . '">' . "\n";
         if (METATAG_LOCALE_TYPE) {
             $langs = generateLanguageList();
             if (count($langs) != 1) {
                 if (METATAG_LOCALE_TYPE == 1) {
                     $locallink = seo_locale::localePath(false, $locale_);
                 } else {
                     $locallink = '';
                 }
                 foreach ($langs as $text => $lang) {
                     $langcheck = zpFunctions::getLanguageText($lang, '-');
                     //	for hreflang we need en-US
                     if ($langcheck != $locale) {
                         if (METATAG_LOCALE_TYPE == 1) {
                             $altlink = seo_locale::localePath(true, $lang);
                         } else {
                             $altlink = dynamic_locale::fullHostPath($lang);
                         }
                         switch ($_zp_gallery_page) {
                             case 'index.php':
                                 $altlink .= str_replace($locallink, '', $_zp_gallery->getLink($_zp_page));
                                 break;
                             case 'album.php':
                             case 'favorites.php':
                                 $altlink .= str_replace($locallink, '', $_zp_current_album->getLink($_zp_page));
                                 break;
                             case 'image.php':
                                 $altlink .= str_replace($locallink, '', $_zp_current_image->getLink());
                                 break;
                             case 'news.php':
                                 if (function_exists("is_NewsArticle")) {
                                     if (is_NewsArticle()) {
                                         $altlink .= str_replace($locallink, '', $_zp_current_article->getLink());
                                     } else {
                                         if (is_NewsCategory()) {
                                             $altlink .= str_replace($locallink, '', $_zp_current_category->getLink($_zp_page));
                                         } else {
                                             $altlink .= getNewsPathNav($_zp_page);
                                         }
                                     }
                                 }
                                 break;
                             case 'pages.php':
                                 $altlink .= str_replace($locallink, '', $_zp_current_page->getLink());
                                 break;
                             case 'archive.php':
                                 $altlink .= getCustomPageURL('archive');
                                 break;
                             case 'search.php':
                                 $searchwords = $_zp_current_search->codifySearchString();
                                 $searchdate = $_zp_current_search->getSearchDate();
                                 $searchfields = $_zp_current_search->getSearchFields(true);
                                 $searchpagepath = getSearchURL($searchwords, $searchdate, $searchfields, $_zp_page, array('albums' => $_zp_current_search->getAlbumList()));
                                 $altlink .= $searchpagepath;
                                 break;
                             case 'contact.php':
                                 $altlink .= getCustomPageURL('contact');
                                 break;
                             default:
                                 // for all other possible none standard custom pages
                                 $altlink .= getCustomPageURL($pagetitle);
                                 break;
                         }
                         // switch
                         $meta .= '<link rel="alternate" hreflang="' . $langcheck . '" href="' . html_encode($altlink) . '">' . "\n";
                     }
                     // if lang
                 }
                 // foreach
             }
             // if count
         }
         // if option
     }
     // if canonical
     echo $meta;
 }
Пример #9
0
/**
 * Prints html meta data to be used in the <head> section of a page
 *
 */
function getHTMLMetaData()
{
    global $_zp_gallery, $_zp_current_album, $_zp_current_image, $_zp_current_zenpage_news, $_zp_current_zenpage_page, $_zp_gallery_page, $_zp_current_category, $_zp_authority;
    $url = sanitize("http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);
    // Convert locale shorttag to allowed html meta format
    $locale = getOption("locale");
    $locale = strtr($locale, "_", "-");
    // generate page title, get date
    $pagetitle = "";
    $date = strftime(DATE_FORMAT);
    // if we don't have a item date use current date
    $desc = getBareGalleryDesc();
    if (is_object($_zp_current_image) and is_object($_zp_current_album)) {
        $pagetitle = getBareImageTitle() . " (" . getBareAlbumTitle() . ") - ";
        $date = getImageDate();
        $desc = getBareImageDesc();
    }
    if (is_object($_zp_current_album) and !is_object($_zp_current_image)) {
        $pagetitle = getBareAlbumTitle() . " - ";
        $date = getAlbumDate();
        $desc = getBareAlbumDesc();
    }
    if (function_exists("is_NewsArticle")) {
        if (is_NewsArticle()) {
            $pagetitle = getBareNewsTitle() . " - ";
            $date = getNewsDate();
            $desc = strip_tags(getNewsContent());
        } else {
            if (is_NewsCategory()) {
                $pagetitle = $_zp_current_category->getTitlelink() . " - ";
                $date = strftime(DATE_FORMAT);
                $desc = "";
            } else {
                if (is_Pages()) {
                    $pagetitle = getBarePageTitle() . " - ";
                    $date = getPageDate();
                    $desc = strip_tags(getPageContent());
                }
            }
        }
    }
    // shorten desc to the allowed 200 characters if necesssary.
    if (strlen($desc) > 200) {
        $desc = substr($desc, 0, 200);
    }
    $pagetitle = $pagetitle . getBareGalleryTitle();
    // get master admin
    $admin = $_zp_authority->getAnAdmin(array('`user`=' => $_zp_authority->master_user, '`valid`=' => 1));
    $author = $admin->getName();
    $meta = '';
    if (getOption('htmlmeta_http-equiv-language')) {
        $meta .= '<meta http-equiv="language" content="' . $locale . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-language')) {
        $meta .= '<meta name="language" content="' . $locale . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-content-language')) {
        $meta .= '<meta name="content-language" content="' . $locale . '" />' . "\n";
    }
    if (getOption('htmlmeta_http-equiv-imagetoolbar')) {
        $meta .= '<meta http-equiv="imagetoolbar" content="false" />' . "\n";
    }
    if (getOption('htmlmeta_http-equiv-cache-control')) {
        $meta .= '<meta http-equiv="cache-control" content="' . getOption("htmlmeta_cache_control") . '" />' . "\n";
    }
    if (getOption('htmlmeta_http-equiv-pragma')) {
        $meta .= '<meta http-equiv="pragma" content="' . getOption("htmlmeta_pragma") . '" />' . "\n";
    }
    if (getOption('htmlmeta_http-equiv-content-style-type')) {
        $meta .= '<meta http-equiv="Content-Style-Type" content="text/css" />' . "\n";
    }
    if (getOption('htmlmeta_name-title')) {
        $meta .= '<meta name="title" content="' . $pagetitle . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-keywords')) {
        $meta .= '<meta name="keywords" content="' . getMetaKeywords() . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-description')) {
        $meta .= '<meta name="description" content="' . $desc . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-page-topic')) {
        $meta .= '<meta name="page-topic" content="' . $desc . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-robots')) {
        $meta .= '<meta name="robots" content="' . getOption("htmlmeta_robots") . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-publisher')) {
        $meta .= '<meta name="publisher" content="' . FULLWEBPATH . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-creator')) {
        $meta .= '<meta name="creator" content="' . FULLWEBPATH . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-author')) {
        $meta .= '<meta name="author" content="' . $author . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-copyright')) {
        $meta .= '<meta name="copyright" content=" (c) ' . FULLWEBPATH . ' - ' . $author . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-rights')) {
        $meta .= '<meta name="rights" content="' . $author . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-rights')) {
        $meta .= '<meta name="generator" content="Zenphoto ' . ZENPHOTO_VERSION . ' [' . ZENPHOTO_RELEASE . ']" />' . "\n";
    }
    if (getOption('htmlmeta_name-revisit-after')) {
        $meta .= '<meta name="revisit-after" content="' . getOption("htmlmeta_revisit_after") . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-expires')) {
        $meta .= '<meta name="expires" content="' . getOption("htmlmeta_expires") . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-expires')) {
        $meta .= '<meta name="date" content="' . $date . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-DC.titl')) {
        $meta .= '<meta name="DC.title" content="' . $pagetitle . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-DC.keywords')) {
        $meta .= '<meta name="DC.keywords" content="' . gettMetaKeywords() . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-DC.description')) {
        $meta .= '<meta name="DC.description" content="' . $desc . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-DC.language')) {
        $meta .= '<meta name="DC.language" content="' . $locale . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-DC.subject')) {
        $meta .= '<meta name="DC.subject" content="' . $desc . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-DC.publisher')) {
        $meta .= '<meta name="DC.publisher" content="' . FULLWEBPATH . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-DC.creator')) {
        $meta .= '<meta name="DC.creator" content="' . FULLWEBPATH . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-DC.date')) {
        $meta .= '<meta name="DC.date" content="' . $date . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-DC.type')) {
        $meta .= '<meta name="DC.type" content="Text" /> <!-- ? -->' . "\n";
    }
    if (getOption('htmlmeta_name-DC.format')) {
        $meta .= '<meta name="DC.format" content="text/html" /><!-- What else? -->' . "\n";
    }
    if (getOption('htmlmeta_name-DC.identifier')) {
        $meta .= '<meta name="DC.identifier" content="' . FULLWEBPATH . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-DC.rights')) {
        $meta .= '<meta name="DC.rights" content="' . FULLWEBPATH . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-DC.source')) {
        $meta .= '<meta name="DC.source" content="' . $url . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-DC.relation')) {
        $meta .= '<meta name="DC.relation" content="' . FULLWEBPATH . '" />' . "\n";
    }
    if (getOption('htmlmeta_name-DC.Date.created')) {
        $meta .= '<meta name="DC.Date.created" content="' . $date . '" />' . "\n";
    }
    echo $meta;
}
Пример #10
0
            $divider = '/ ';
        } else {
            $divider = '';
        }
        if (getNumAlbums() > 0) {
            $albumcount = getNumAlbums() . ' ' . gettext('albums');
        } else {
            $albumcount = '';
        }
        if (getNumImages() > 0) {
            $imagecount = getNumImages() . ' ' . gettext('images');
        } else {
            $imagecount = '';
        }
        $desc1 = $albumcount . $divider . $imagecount . '<br />';
        $desc2 = getBareAlbumDesc();
        $desc2 = str_replace("\r\n", '<br />', $desc2);
        $desc2 = str_replace("\r", '<br />', $desc2);
        $desc = $desc1 . '<br />' . $desc2;
        echo 'description: \'' . js_encode($desc) . '\',' . "\n";
        echo 'link: \'' . html_encode(getAlbumURL()) . '\'' . "\n";
        echo '}' . "\n";
        $c++;
    }
} else {
    // or latest images
    require_once SERVERPATH . '/' . ZENFOLDER . '/' . PLUGIN_FOLDER . '/image_album_statistics.php';
    $images = getImageStatistic(getOption('zpbase_galhomecount'), 'latest');
    $c = 0;
    foreach ($images as $image) {
        if (isImagePhoto($image)) {