Свой title description keywords через php в DLE11.x

W
На сайте с 15.08.2014
Offline
21
868

Добрый день, подскажите как поправить код....

Вот сам код:


<?php

if( ! defined( 'DATALIFEENGINE' ) ) {
die( "Hacking attempt!" );
}

class UrlHelper {

private static $categories;

/**
* Получение ссылки на категорию
* @global type $db
* @param type $cat_id
* @param type $level
* @return boolean
* @throws Exception
*/
public static function getCategoryUrl($cat_id, $level = 0) {
if ($cat_id<1) return false;
if ($level>30) throw new Exception("Recursive error in getUrl");
// подгрузка категорий
if (self::$categories==null) {
global $db;
self::$categories = $db->super_query("SELECT id,parentid,name,alt_name FROM `".PREFIX."_category`", true);
$newCat = array();
if (is_array(self::$categories)) {
foreach (self::$categories as $row) {
$newCat[$row["id"]] = $row;
}
}
self::$categories = $newCat;
unset($newCat);
}
// Получение ссылки
$return = "";
if (isset(self::$categories[$cat_id])) {
if (self::$categories[$cat_id]["parentid"]==0)
$return = self::$categories[$cat_id]["alt_name"];
else
$return = self::getCategoryUrl(self::$categories[$cat_id]["parentid"], $level+1) . "/" . self::$categories[$cat_id]["alt_name"];
} else
return;
return ($level==0 ? "/" : "") . $return . ($level==0 ? "/" : "");
}

public static function getCategoryName($cat_id) {
if (self::$categories==null)
self::getCategoryUrl ($cat_id);
if (isset(self::$categories[$cat_id])) {
return self::$categories[$cat_id]["name"];
}
}

public static function getNewsUrl($row) {
if ($row['category']>0) {
return self::getCategoryUrl($row['category']) . "{$row['id']}-{$row['alt_name']}.html";
} else {
return "/{$row['id']}-{$row['alt_name']}.html";
}
}

}

// Загрузка информации по новостям
$xfields = xfieldsload();
$row = $db->super_query("SELECT * FROM `".PREFIX."_post` WHERE id='".intval($_GET['newsid'])."'");
//print_r ($row);
if ($row["approve"]) {
$tpl->load_template( 'page_constructor_torrent.tpl' );
$xfieldsdata = xfieldsdataload( $row['xfields'] );

// Title
$tpl->set('Скачать торрент {title}');
// Catlist
$url_cat = $category_id;
$category_id = $row['category'];
if( strpos( $tpl->copy_template, "[catlist=" ) !== false ) {
$tpl->copy_template = preg_replace_callback ( "#\\[(catlist)=(.+?)\\](.*?)\\[/catlist\\]#is", "check_category", $tpl->copy_template );
}
if( strpos( $tpl->copy_template, "[not-catlist=" ) !== false ) {
$tpl->copy_template = preg_replace_callback ( "#\\[(not-catlist)=(.+?)\\](.*?)\\[/not-catlist\\]#is", "check_category", $tpl->copy_template );
}
$category_id = $url_cat;
// meta-tags
$row['title'] = stripslashes( $row['title'] );
$metatags['title'] = $row['title'];
if( $row['keywords'] == '' AND $row['descr'] == '' AND $config['create_metatags'] ) create_keywords( $row['short_story'] . $row['full_story'] );
else {
$metatags['keywords'] = $row['keywords'];
if( $row['descr'] ) $metatags['description'] = $row['descr']; else $metatags['description'] = $row['title'];
}
if ($row['metatitle']) $metatags['header_title'] = $row['metatitle'];



// Доп поля
if( strpos( $tpl->copy_template, "[xfvalue_" ) !== false AND !empty($xfieldsdata) AND !empty($xfields)) {
foreach ( $xfields as $value ) {
$preg_safe_name = preg_quote( $value[0], "'" );
if( empty( $xfieldsdata[$value[0]] ) ) $tpl->copy_template = preg_replace( "'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is", "", $tpl->copy_template );
else $tpl->copy_template = preg_replace( "'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is", "\\1", $tpl->copy_template );
$tpl->copy_template = str_replace( "[xfvalue_{$preg_safe_name}]", stripslashes( $xfieldsdata[$value[0]] ), $tpl->copy_template );
}
}else $tpl->copy_template = preg_replace( "'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is", "", $tpl->copy_template );
/* HD Light Add Player Begin */
#********* Search Torrent by PspVolt *** start *********#
include ENGINE_DIR . '/modules/search-torrents/full.php';
#********* Search Torrent by PspVolt *** stop *********#
// Категория
if ($row["category"]>0){
$tpl->set_block( "'\\[category\\](.*?)\\[/category\\]'si", "$1" );
$tpl->set('{category-url}', UrlHelper::getCategoryUrl($row["category"]));
$tpl->set('{category-name}', UrlHelper::getCategoryName($row["category"]));
} else
$tpl->set_block( "'\\[category\\](.*?)\\[/category\\]'si", "" );
$tpl->set('{news-url}', UrlHelper::getNewsUrl($row));
// if ($CvBuffer!=="") {
// $tpl->set_block( "'\\[is-video\\](.*?)\\[/is-video\\]'si", "$1" );
// $tpl->set_block( "'\\[no-video\\](.*?)\\[/no-video\\]'si", "" );
// } else {
// $tpl->set_block( "'\\[is-video\\](.*?)\\[/is-video\\]'si", "" );
// $tpl->set_block( "'\\[no-video\\](.*?)\\[/no-video\\]'si", "$1" );
// }
$tpl->compile( 'content' );
} else {
msgbox( "Новость не найдена!", "Возможно, новость находится на модерации или удалена." );
}

На сайте с новости выводит так:


<title>Стражи Галактики. Часть 2 (2017) смотреть онлайн</title>
<meta name="description" content="Все в сборе: землянин Питер Квилл (Звездный Лорд), молчаливый громила Дракс, зеленокожая наемница Гамора, живое дерево Грут и говорящий енот. Герои не изменяют себе и с завидной регулярностью" />
<meta name="keywords" content="фантастика, боевик, приключения, герои комиксов, смотреть онлайн, бесплатно онлайн, , Стражи Галактики. Часть 2 фильм онлайн" />

А надо что бы работал сам только {title} тоисть Стражи Галактики. Часть 2 (2017) а смотреть прописать в самом php и так же для description и keywords..... так как это отдельная страница dle11.x и не охото что бы они дублировались!!

dr.AMik
На сайте с 06.09.2006
Offline
154
#1
CodeStyle:
Зачем лезть в ядро? прописывайте в шаблоне main.tpl

это не сработает в main.tpl, так как тег Title используется в shortstory.tpl и fullstory.tpl

☑ Естеств. ссылки (крауд, вопросники, отзовники, блоги) от 45р./шт. ( http://bit.ly/webcrowd2021 ) / ☑ Отчеты Serpstat/Ahrefs по 40р./сайт. @seogikua / ☑ https://bit.ly/IndexYaGoo Ускорение индексации NEW!
W
На сайте с 15.08.2014
Offline
21
#2
Цитата:
Сообщение от CodeStyle Посмотреть сообщение
Зачем лезть в ядро? прописывайте в шаблоне main.tpl
это не сработает в main.tpl, так как тег Title используется в shortstory.tpl и fullstory.tpl

все верно толко вот это отдельная страница для скачивания которая работает по адрессу /torrent/1 где 1-id новости

---------- Добавлено 03.06.2017 в 14:02 ----------

wsionc:
все верно толко вот это отдельная страница для скачивания которая работает по адрессу /torrent/1 где 1-id новости

вот этот файл и вытягивае с основного fullstory title description keywords а мне надо свои прописать

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий