Добавляем вкладки h1 и текста в настройки категорий
Данный хак можно использовать как альтренативу модулю CatFace, либо же использовать его совместно с ним и выводить два блока описания категорий и два заголовка.
Зайти в phpmyadmin и сделать запрос (если у вас другой префикс у таблиц, то поменяйте на свой):
ALTER TABLE `dle_category` ADD `h1_text` TEXT NOT NULL AFTER `descr`;
ALTER TABLE `dle_category` ADD `mini_descr` TEXT NOT NULL AFTER `h1_text`;
Открыть файл /engine/modules/main.php и найти:
$tpl->load_template ( 'main.tpl' );
Ниже вставить:
if( $cat_info[$category_id]['h1_text'] ) {
$tpl->set( '[category-text]', "" );
$tpl->set( '[/category-text]', "" );
$tpl->set( '{category-text}', $cat_info[$category_id]['h1_text'] );
} else {
$tpl->set_block( "'\\[category-text\\](.*?)\\[/category-text\\]'si", "" );
$tpl->set( '{category-text}', '' );
}
if( $cat_info[$category_id]['mini_descr'] ) {
$tpl->set( '[category-mini-descr]', "" );
$tpl->set( '[/category-mini-descr]', "" );
$tpl->set( '{category-mini-descr}', $cat_info[$category_id]['mini_descr'] );
} else {
$tpl->set_block( "'\\[category-mini-descr\\](.*?)\\[/category-mini-descr\\]'si", "" );
$tpl->set( '{category-mini-descr}', '' );
}
Открыть файл /engine/inc/categories.php и найти (2 раза):
$description = $db->safesql( dle_substr( strip_tags( stripslashes( $_POST['descr'] ) ), 0, 200, $config['charset'] ) );
И после каждого вставить:
$h1_text = $db->safesql( htmlspecialchars( strip_tags( stripslashes($_POST['h1_text'] ) ), ENT_QUOTES, $config['charset']) );
$mini_descr = $db->safesql( stripslashes($_POST['mini_descr'] ), ENT_QUOTES, $config['charset'] );
Найти:
<div class="form-group">
<label class="control-label col-lg-2">{$lang['meta_descr_cat']}</label>
<div class="col-lg-10">
<input type="text" name="descr" style="width:100%;max-width:350px;" value="{$row['descr']}"> ({$lang['meta_descr_max']})
</div>
</div>
Ниже вставить:
<div class="form-group">
<label class="control-label col-lg-2">H1 для категории</label>
<div class="col-lg-10">
<input type="text" name="h1_text" style="width:100%;max-width:350px;" value="{$row['h1_text']}">
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-2">Мини описание для категории</label>
<div class="col-lg-10">
<textarea name="mini_descr" style="width:100%;max-width:350px;" rows="5">{$row['mini_descr']}</textarea>
</div>
</div>
Найти:
$db->query( "INSERT INTO " . PREFIX . "_category (parentid, name, alt_name, icon, skin, descr, keywords, news_sort, news_msort, news_number, short_tpl, full_tpl, metatitle, show_sub, allow_rss) values ('$category', '$cat_name', '$alt_cat_name', '$cat_icon', '$skin_name', '$description', '$keywords', '$news_sort', '$news_msort', '$news_number', '$short_tpl', '$full_tpl', '$meta_title', '$show_sub', '$allow_rss')" );
Заменить на:
$db->query( "INSERT INTO " . PREFIX . "_category (parentid, name, alt_name, icon, skin, descr, h1_text, mini_descr, keywords, news_sort, news_msort, news_number, short_tpl, full_tpl, metatitle, show_sub, allow_rss) values ('$category', '$cat_name', '$alt_cat_name', '$cat_icon', '$skin_name', '$description', '$h1_text', '$mini_descr', '$keywords', '$news_sort', '$news_msort', '$news_number', '$short_tpl', '$full_tpl', '$meta_title', '$show_sub', '$allow_rss')" );
Найти:
$db->query( "UPDATE " . PREFIX . "_category SET parentid='$parentid', name='$cat_name', alt_name='$alt_cat_name', icon='$cat_icon', skin='$skin_name', descr='$description', keywords='$keywords', news_sort='$news_sort', news_msort='$news_msort', news_number='$news_number', short_tpl='$short_tpl', full_tpl='$full_tpl', metatitle='$meta_title', show_sub='$show_sub', allow_rss='$allow_rss' WHERE id='{$catid}'" );
Заменить на:
$db->query( "UPDATE " . PREFIX . "_category SET parentid='$parentid', name='$cat_name', alt_name='$alt_cat_name', icon='$cat_icon', skin='$skin_name', descr='$description', h1_text='$h1_text', mini_descr='$mini_descr', keywords='$keywords', news_sort='$news_sort', news_msort='$news_msort', news_number='$news_number', short_tpl='$short_tpl', full_tpl='$full_tpl', metatitle='$meta_title', show_sub='$show_sub', allow_rss='$allow_rss' WHERE id='{$catid}'" );
Использование:
[aviable=cat]
[category-text]<h1>{category-text}</h1>[/category-text]
[category-mini-descr]<div>{category-mini-descr}</div>[/category-mini-descr]
[/aviable]
В итоге у нас в редакторе категорий появятся еще два поля h1 и описание для категорий!
Автор данного хака Caspian