Шаблоны для DLE » Модули » Автозагрузка TPL шаблонов статических страниц

Представляем вам еще один модуль для dle этот модуль предназначен для удобного и простого создания статических страниц без использования функционала самого dle движка, достаточно просто создать TPL файл и эта страница будет доступна по адресу имени файла, все легко и просто, также не забывайте смотреть на нашем сайте другие модули для dle возможно подберете для своего проекта что не будь интересное и нужное.


Также данный модуль будет работать и на dle 14.1 просто создайте это через систему плагинов.


Установка:


1. В папке с шаблоном создать папку static в ней будут размещаться tpl файлы - где имя файла будет являться именем статической страницы. К примеру файл {THEME}/static/demo.tpl будет открываться по адресу ваш_сайт.com/demo.html


2
. Открыть engine/init.php и найти:

	$name = @$db->safesql( trim( totranslit( $_GET['page'], true, false ) ) );
	$static_result = $db->super_query ( "SELECT * FROM " . PREFIX . "_static WHERE name='{$name}'" );
	$category_skin = $static_result['template_folder'];



Заменить на:

	$static_name = totranslit( $_GET['page'] );
	if( file_exists( ROOT_DIR . "/templates/{$config['skin']}/static/{$static_name}.tpl" ) ) $do = "static_autoload";
	else
	{
		$name = @$db->safesql( trim( totranslit( $_GET['page'], true, false ) ) );
		$static_result = $db->super_query ( "SELECT * FROM " . PREFIX . "_static WHERE name='{$name}'" );
		$category_skin = $static_result['template_folder'];
	}



3. Открыть engine/engine.php и найти:

switch ( $do ) {



Добавить ниже:

	case "static_autoload":
		include ENGINE_DIR . "/mods/$do.php";
		break;



4. Создать файл engine/mods/static_autoload.php с содержимым:

PHP код файла

<?PHP
if(!defined('DATALIFEENGINE'))die("Access Denied");

$header_tags = array( 'title', 'description', 'keywords', 'noindex' );
$tpl->load_template("static/{$static_name}.tpl");

$static_metatags = array();
foreach( $header_tags as $tag )
{
	preg_match( "#\\[$tag=(.*?)\\]#i", $tpl->copy_template, $found );
	$tpl->copy_template = str_replace( $found[0], '', $tpl->copy_template );
	$static_metatags[$tag] = trim( htmlspecialchars( stripslashes( $found[1] ), ENT_QUOTES, $config['charset'] ) );
}
$tpl->compile('content');
$tpl->clear();

$dle_module = $do = 'static';
$disable_index = $static_metatags['noindex'] ? true : false;
$static_descr = $static_metatags['title'];
$metatags['description'] = $static_metatags['description'] ?: $static_metatags['title'];
$metatags['keywords'] = $static_metatags['keywords'];
?>




5. В самом файле шаблона можно использовать теги, чтобы указать свои метатеги.

Пример файла:

[title=Метазаголовок тестовой страницы]
[description=Описание тестовой страницы для наглядности работы]
[keywords=Ключевые, слова, тестовой, страницы, тестового сайта]
[noindex=1]

<h1>Пример страницы</h1>
<div style="padding-top:15px">Текст тестовой страницы</div>



где [noindex=1] - запретить индексацию, 0 - разрешить.


Все!


Загрузка не требуется!
  • Версия DLE: 11.x - 14.1
  • Категория: Модули
  • Автор: Sander
  • Источник:

собрано 3050.00 рублей Поддержать автора

Войдите на сайт


Все собранные средства будут переданы автору этой статьи - DEN
Сумма перевода от 10.00 рублей
предыдущая: День рождения 1.0 следующая: Power-Log (light) by Sander
00
568
0
24-07-2022, 11:17
Обсудить (0)
Похожие модули
Комментарии
Минимальная длина комментария - 10 знаков, комментарии могут модерироваться!
Комментариев еще нет. Вы можете стать первым!
Помощь в публикации комментариев:
1.) Если вы хотите задать вопрос, тогда просто оставьте комментарий, не нужно вопрос добавлять в ответ.
2.) Если вы хотите ответить на комментарий, для этого есть кнопка "ответить" под нужным вам вопросом.
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent
Мы ценим вашу конфиденциальность
Мы используем файлы "cookie" на нашем веб-сайте, чтобы предоставить вам наиболее релевентный результат, помня ваши предпочтения и повторные посещения.
Нажимая "Принять" вы соглашаетесь на использование всех файлов "cookie".
Принять
Не принимаю
Показать цели
X

Платные услуги новостей