-Цитатник

Фальсификации выборов президента: как это делается - (0)

Фальсификации выборов президента: как это делается Не смотря на огромное количество нарушений ...

АЛЫЕ ПАРУСА В ПЕТЕРБУРГЕ - (0)

«Алые паруса» — один из самых известных праздников в Северной столице, ...

Владимир Румянцев.Ангелы и коты - (0)

Владимир Румянцев.Ангелы и коты. Владимир Румянцев родился в 1957 году, рисовать начал в ...

фото Санкт-Петербурга - (0)

Санкт-Петербург Санкт-Петербург невероятно красивый город, думаю даже коренным "питерцам" будет и...

Ближневосточная проблема - простое объяснение за пять минут - (0)

Ближневосточная проблема - простое объяснение за пять минут  простое объяснение ближневосточ...

 -Фотоальбом

Посмотреть все фотографии серии природа фото Andy Mumford
природа фото Andy Mumford
05:54 16.05.2009
Фотографий: 40
Посмотреть все фотографии серии Общая
Общая
04:52 16.05.2009
Фотографий: 1
Посмотреть все фотографии серии позитиф
позитиф
03:00 01.01.1970
Фотографий: 0

 -Я - фотограф

 -Поиск по дневнику

Поиск сообщений в spacesite

 -Подписка по e-mail

 

 -Интересы

создание сайта продвижение сайтов авто бизнес

 -Сообщества

Читатель сообществ (Всего в списке: 1) Photoshopinka

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 15.05.2009
Записей:
Комментариев:
Написано: 1213


Модуль Статьи

Понедельник, 21 Июня 2010 г. 20:58 + в цитатник

1. Файл .htaccess, добавляем строчки:
RewriteRule ^articles\.html$ index.php?articles=yes [L]
RewriteRule ^show_articles_([0-9]+)\.html$ index.php?fullarticles=$1 [L]
Обрати внимание на articles и fullarticles. Дальше ты их увидишь.


2. Создаем в БД таблицу аналогичную по структуре новостям (news_table)  articles_table (не забываем о префиксе БД).

-- Структура таблицы `articles_articles`
DROP TABLE IF EXISTS `articles_table`;
CREATE TABLE IF NOT EXISTS `articles_table` (
  `NID` int(11) NOT NULL AUTO_INCREMENT,
  `add_date` date DEFAULT NULL,
  `title` text,
  `textToPrePublication` text,
  `textToPublication` mediumtext,
  `textToMail` text,
  `add_stamp` int(11) DEFAULT NULL,
  PRIMARY KEY (`NID`)
) ENGINE=InnoDB  DEFAULT CHARSET=cp1251 AUTO_INCREMENT=0 ;
COMMIT;
 

3. Вносим изменения в файл core/config/tables.inc.php: находим
if ( !defined('NEWS_TABLE') )
{
define('NEWS_TABLE', 'sun_news_table');

и копируем - меняем - добавляем, и  получаем
if(!defined('ARTICLES_TABLE'))
{
define('ARTICLES_TABLE', 'articles_table');
}

4. core/languages/russian.php - тут все копируем, что касалось новостей и переименовываем, например: define('ADMIN_ARTICLES', 'Статьи');

5. setting_constants.sql  добавляем

insert into SETTINGS_TABLE (settings_groupID, settings_constant_name, settings_value, settings_title, settings_description, settings_html_function, sort_order) VALUES (2, 'CONF_ARTICLES_COUNT_IN_CUSTOMER_PART', '3', 'Количество записей в блоках статей', 'Пожалуйста, укажите, сколько ссылок показывать в блоках статей магазина.', 'setting_TEXT_BOX(2,', 11);
insert into SETTINGS_TABLE (settings_groupID, settings_constant_name, settings_value, settings_title, settings_description, settings_html_function, sort_order) VALUES (2, 'CONF_ARTICLES_COUNT_IN_ARTICLES_PAGE', '10', 'Количество записей на странице статей', 'Пожалуйста, укажите, сколько последних статей показывать на странице с аннотациями', 'setting_TEXT_BOX(2,', 12);

 

insert into BLOCKS_TABLE (title, content, bposition, active, which, sort, html, url, admin, about, pages, dpages, categories, products) VALUES ('Статьи', '', 4, 1, 0, 9, 1, 'articles.tpl.html', 0, 'Краткий блок статей. Без вывода краткого текста статьи.', 'a:0:{}', 'a:0:{}', 'a:0:{}', 'a:0:{}');
insert into BLOCKS_TABLE (title, content, bposition, active, which, sort, html, url, admin, about, pages, dpages, categories, products) VALUES ('Обзор статей', '', 2, 0, 1, 17, 1, 'articles_center.tpl.html', 0, 'Центральный блок статей. Выводит заголовок и краткое описание статьи.', 'a:1:{i:0;s:13:"home.tpl.html";}', 'a:0:{}', 'a:0:{}', 'a:0:{}');

 

6. core/functions/news_function.php копируем в core/functions/articles_function.php

В нем хранятся все функции по работе с новостями(для нас уже будут для работы со статьями), в этом файле (articles_function.php) переименовываем функции, например так:
было function newsGetNewsToCustomer() стало articlesGetArticlesToCustomer(), не забываем также о константах в файле, их нужно так же переименовать, например, NEWS_TABLE переименовываем на ARTICLES_TABLE (эта константа у нас нами была прописана в core/config/tables.inc.php). В принципе, во всех файлах, что я правил я заменял news на articles, для унификации так сказать.

7. Копируем core/includes/news.php в core/includes/articles.php . Правим его (переименовываем функции, константы, переменные). Именно этот скрипт и отвечает за обработку темплейтов статей (потом скопируем и их show_articles.tpl.html, show_full_articles.tpl.html). В этом же скрипте указаны имена GET POST переменных (см. выше .htaccess)!!!!!!! они сквозные по всему движку (articles, fullarticles)
ну и т.д.

8. И чтоб добавить в админку - core/tpl/admin/menu.tpl.html
после 501 строчки (примерно так <div class="dvmenu">
<table class="adn"><tr><td><img src="data/admin/drs.gif" alt=""></td><td width="100%"><a href="{$smarty.const.ADMIN_FILE}?dpt=modules&amp;sub=news">{$smarty.const.ADMIN_NEWS}</a></td></tr></table> ) добавляем

<table class="adn"><tr><td><img src="data/admin/drs.gif" alt=""></td><td width="100%"><a href="{$smarty.const.ADMIN_FILE}?dpt=modules&amp;sub=articles">{$smarty.const.ADMIN_ARTICLES}</a></td></tr></table>

9. core/includes/admin/modules.php добавляем так чтоб получилось:

$admin_dpt = array(
"id" => "modules", //department ID
"sort_order" => 40, //sort order (less `sort_order`s appear first)
"name" => ADMIN_MODULES, //department name
"sub_departments" => array
(
array("id"=>"news", "name"=>ADMIN_NEWS),
array("id"=>"articles", "name"=>ADMIN_ARTICLES),
array("id"=>"survey", "name"=>ADMIN_VOTING),
array("id"=>"shipping", "name"=>ADMIN_STRING_SHIPPING_MODULES),
array("id"=>"payment", "name"=>ADMIN_STRING_PAYMENT_MODULES),
array("id"=>"linkexchange", "name"=>ADMIN_STRING_MODULES_LINKEXCHANGE),
array("id"=>"yandex", "name"=>"Яндекс.Маркет" )
)
);
add_department($admin_dpt);

И т.д. и т.п.
В темплайтах тоже самое творим.

10. core\tpl\admin\modules_articles.tpl.html

11. core\includes\head.php после строки 25

elseif (isset($_GET["fullnews"]))  //  fullnews => get title ....

добавить по аналогии

        elseif (isset($_GET["fullarticles"]))  //  fullarticles => get title
        {
                $fullnews_array_head = articlesGetFullArticlesToCustomer($_GET["fullarticles"]);
                        if ($fullnews_array_head["title"]) $page_title = $fullnews_array_head["title"].". ".CONF_SHOP_NAME;
                        else $page_title =  CONF_DEFAULT_TITLE.". ".CONF_SHOP_NAME;
                                $meta_tags = "";
                                if  ( CONF_HOMEPAGE_META_DESCRIPTION != "" )
                                        $meta_tags .= "<meta name=\"description\" content=\"".CONF_HOMEPAGE_META_DESCRIPTION."\"/>\n";
                                if  ( CONF_HOMEPAGE_META_KEYWORDS != "" )
                                        $meta_tags .= "<meta name=\"keywords\" content=\"".CONF_HOMEPAGE_META_KEYWORDS."\"/>\n";
        }
это для SEO

 

создание интернет магазина

Рубрики:  Создание сайта
ShopCMS
Метки:  

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку