Данный материал предоставлен сайтом ProWebber.cc исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Скачать бесплатно Правильная заготовка под модуль для DLE.
Скачать бесплатно Правильная заготовка под модуль для DLE.
Для тех, кто ещё не умеет правильно писать модули для DLE эти сниппеты будут крайне полезны.
Сниппеты приведены без комментариев для непосредственной вставки в файл и лёгкого старта.
Полная же инструкция по созданию модуля без админки с конкретным примером находится тут
Заготовка для модуля с кешированием, без шаблона
<?php
if (!defined('DATALIFEENGINE')) die("Go fuck yourself!");
$myConfig = array(
'cachePrefix' => !empty($cachePrefix) ? $cachePrefix : 'archives',
'cacheSuffix' => !empty($cacheSuffix) ? $cacheSuffix : false
);
$cacheName = md5(implode('_', $myConfig));
$myModule = false;
$myModule = dle_cache($myConfig['cachePrefix'], $cacheName . $config['skin'], $myConfig['cacheSuffix']);
if (!$myModule) {
$myModule = 'Hello World!'; // Результат работы модуля.
create_cache($myConfig['cachePrefix'], $myModule, $cacheName . $config['skin'], $myConfig['cacheSuffix']);
}
echo $myModule;
?>
if (!defined('DATALIFEENGINE')) die("Go fuck yourself!");
$myConfig = array(
'cachePrefix' => !empty($cachePrefix) ? $cachePrefix : 'archives',
'cacheSuffix' => !empty($cacheSuffix) ? $cacheSuffix : false
);
$cacheName = md5(implode('_', $myConfig));
$myModule = false;
$myModule = dle_cache($myConfig['cachePrefix'], $cacheName . $config['skin'], $myConfig['cacheSuffix']);
if (!$myModule) {
$myModule = 'Hello World!'; // Результат работы модуля.
create_cache($myConfig['cachePrefix'], $myModule, $cacheName . $config['skin'], $myConfig['cacheSuffix']);
}
echo $myModule;
?>
Заготовка для модуля с кешированием и шаблоном
<?php
if (!defined('DATALIFEENGINE'))
die("Go fuck yourself!");
$userName = !empty($userName) ? $db->safesql(strip_tags(stripslashes($userName))) : false;
$myConfig = array(
'template' => !empty($template) ? $template : 'default',
'cachePrefix' => !empty($cachePrefix) ? $cachePrefix : 'news',
'cacheSuffix' => !empty($cacheSuffix) ? true : false
);
$cacheName = md5(implode('_', $myConfig));
$myModule = false;
$myModule = dle_cache($myConfig['cachePrefix'], $cacheName . $config['skin'], $myConfig['cacheSuffix']);
if (!$myModule) {
if (file_exists(TEMPLATE_DIR . '/' . $myConfig['template'] . '.tpl')) {
if (!isset($tpl)) {
$tpl = new dle_template();
$tpl->dir = TEMPLATE_DIR;
} else {
$tpl->result['myModule'] = '';
}
$tpl->load_template($myConfig['template'] . '.tpl');
$myVar = 'Hello World!'; // Результат работы модуля.
$tpl->set('{tag_name}', $myVar);
$tpl->compile('myModule');
$myModule = $tpl->result['myModule'];
create_cache($myConfig['cachePrefix'], $myModule, $cacheName . $config['skin'], $myConfig['cacheSuffix']);
$tpl->clear();
} else {
$myModule = '<b style="color:red">Отсутствует файл шаблона: ' . $config['skin'] . '/' . $myConfig['template'] . '.tpl</b>';
}
}
echo $myModule;
?>
if (!defined('DATALIFEENGINE'))
die("Go fuck yourself!");
$userName = !empty($userName) ? $db->safesql(strip_tags(stripslashes($userName))) : false;
$myConfig = array(
'template' => !empty($template) ? $template : 'default',
'cachePrefix' => !empty($cachePrefix) ? $cachePrefix : 'news',
'cacheSuffix' => !empty($cacheSuffix) ? true : false
);
$cacheName = md5(implode('_', $myConfig));
$myModule = false;
$myModule = dle_cache($myConfig['cachePrefix'], $cacheName . $config['skin'], $myConfig['cacheSuffix']);
if (!$myModule) {
if (file_exists(TEMPLATE_DIR . '/' . $myConfig['template'] . '.tpl')) {
if (!isset($tpl)) {
$tpl = new dle_template();
$tpl->dir = TEMPLATE_DIR;
} else {
$tpl->result['myModule'] = '';
}
$tpl->load_template($myConfig['template'] . '.tpl');
$myVar = 'Hello World!'; // Результат работы модуля.
$tpl->set('{tag_name}', $myVar);
$tpl->compile('myModule');
$myModule = $tpl->result['myModule'];
create_cache($myConfig['cachePrefix'], $myModule, $cacheName . $config['skin'], $myConfig['cacheSuffix']);
$tpl->clear();
} else {
$myModule = '<b style="color:red">Отсутствует файл шаблона: ' . $config['skin'] . '/' . $myConfig['template'] . '.tpl</b>';
}
}
echo $myModule;
?>